15. OSPF в Cisco IOS

Особенности OSPF в Cisco IOS

  • Механизм выбора Router-ID

    • Назначенный вручную идентификатор

    • Самый большой адрес на loopback-интерфейсах в этом экземпляре OSPF

    • Самый большой адрес на loopback-интерфейсах на устройстве

    • Самый большой адрес на всех интерфейсах на устройстве

  • Стоимость интерфейса вычисляется по формуле:

    • Interface Cost = Reference Bandwidth / Interface Bandwidth

    • Reference Bandwidth по-умолчанию равна 100 Мб/с

  • По умолчанию IOS работает в режиме совместимости с RFC 1583

Включение OSPF на интерфейсе

  • Два способа включения OSPFv2:

    • Отобрать интерфейсы, Primary IP которых попадают под условие ACL

    • Указать интерфейс в явном виде

Router(config)#router ospf 1
Router(config-router)#router-id 0.0.0.1
Router(config-router)#network 192.168.0.0 0.0.255.255 area 0
Router(config)#interface gi0/0
Router(config-if)#ip ospf 1 area 0
  • На интерфейсах начинается отправка Hello-пакетов и анонс сетей

    • Hello только с primary address, соседство не установится с secondary address

    • В анонс включаются все подключенные сети, включая secondary и static

Стоимость интерфейсов

  • Можно задать стоимость интерфейса в явном виде

  • Либо изменить референсную полосу для автоматического подсчета стоимости для всех интерфейсов, где она не задано явно

Router(config)#router ospf 1
Router(config-router)#auto-cost reference-bandwidth ?
    <1-4294967>  The reference bandwitdh in terms of Mbits per second
Router(config)#interface gi0/0
Router(config-if)#ip ospf cost ?
  <1-65535>  Cost

Passive Interface

  • OSPF анонсирует connected-сети со включенных в OSPF интерфейсов

    • Приходится включать на клиентских интерфейсах, где hello нежелательны

  • Выход - пассивное участие OSPF на интерфейсе

    • Сети с интерфейса по-прежнему анонсируются

    • Hello-пакеты не отсылаются и не принимаются

Router(config)#router ospf 1
Router(config-router)#pasive-interface default
Router(config-router)#no passive-interface gi0/0

Типы канальных сред в OSPF

  • Cisco поддерживает канальные среды следующих типов:

  • Совпадение типа среды не проверяется при установлении соседства

    • Должны совпасть таймеры

    • Хорошо бы, чтобы совпали режимы выбора DR

Выбор типа канальной среды

  • IOS автоматически назначает тип среды на интерфейс:

Тип

Среда

Broadcast

Ethernet, Token Ring, FDDI

Nonbroadcast

Frame Relay, X.25, ATM

Point-to-Point

Tunnel, HDLC, PPP, FR P2P sub, ATM P2p sub

Point-to-Multipoint

Назначается вручную

Point-to-Multipoint nonbroadcast

Назначается вручную

Loopback

Нельзя назначить вручную, можно сменить тип на P2P

Router(config-if)#ip ospf network ?
  broadcast             Specify OSPF broadcast multi-access network
  non-broadcast         Specify OSPF NBMA network
  point-to-multipoint   Specify OSPF point-to-multipoint network
  point-to-point        Specify OSPF point-to-point network
  
Router(config-if)#ip ospf network point-to-multipoint ?
  non-broadcast  Specify non-broadcast point-to-mpoint network

Конфигурация интерфейса

  • Назначение приоритета при выборах DR/BDR (0 - отказ от участия в выборах)

Router(config-if)#ip ospf priority ?
  <0-255>  Priority
  • Установка Hello Interval (Deal Interval устанавливается автоматически в 4 раза больше)

Router(config-if)#ip ospf hello-interval ?
  <1-65535> Seconds
  • Установка Deal Interval

Router(config-if)#ip ospf dead-interval ?
  <1-65535>  Seconds
  minimal    Set to 1 second
  • Установка субсекундного Hello Interval и секундного Dead Interval

Router(config-if)#ip ospf deal-interval minimal hello-multiplier ?
  <3-20>  Number of Hellos sent within 1 second

Алгоритм диагностики OSPF

  • Проверить работоспособность и настройки процесса OSPF

    • show ip protocols

    • show ip ospf

  • Проверить входящие интерфейсы в OSPF

    • show ip ospf interfaces

  • Проверить установленные соседства

    • show ip ospf neighbor

  • Проверить таблицу маршрутов OSPF и таблицу маршрутизации

    • show ip ospf route

    • show ip route ospf

Базовая диагностика OSPF

  • Убедится, что OSPF включен на интерфейсе

Router#show ip ospf interface brief
Interface    PID   Area            IP Address/Mask    Cost  State Nbrs F/C
Lo1          1     0               8.8.1.1/32         1     LOOP  0/0
Lo2          1     0               8.8.1.2/32         1     LOOP  0/0
Lo3          1     0               8.8.1.3/32         1     LOOP  0/0
Lo4          1     0               8.8.1.4/32         1     LOOP  0/0
Et0/1        1     0               10.8.12.1/24       10    DR    0/0
Et0/0        1     0               10.101.8.1/24      10    DR    0/0
Et0/2        1     1               10.8.13.1/24       10    DR    0/0
Et0/3        1     1               10.8.113.1/24      10    DR    0/0
  • Убедится, что установлено соседство

Router#show ip ospf neighbor
R3(config-if)#do sh ip ospf ne

Neighbor ID     Pri   State           Dead Time   Address         Interface
8.8.1.4           1   FULL/DR         00:00:39    10.8.113.1      Ethernet0/3
8.8.1.4           1   FULL/DR         00:00:39    10.8.13.1       Ethernet0/2
  • Убедится, что установлены маршруты

Router#show ip route ospf
      8.0.0.0/8 is variably subnetted, 20 subnets, 2 masks
O IA     8.8.1.1/32 [110/21] via 10.8.34.3, 00:47:44, Ethernet0/0
                    [110/21] via 10.8.24.2, 00:47:05, Ethernet0/2
O IA     8.8.1.2/32 [110/21] via 10.8.34.3, 00:47:44, Ethernet0/0
                    [110/21] via 10.8.24.2, 00:47:05, Ethernet0/2
O IA     8.8.1.3/32 [110/21] via 10.8.34.3, 00:47:44, Ethernet0/0
                    [110/21] via 10.8.24.2, 00:47:05, Ethernet0/2
O IA     8.8.1.4/32 [110/21] via 10.8.34.3, 00:47:44, Ethernet0/0
                    [110/21] via 10.8.24.2, 00:47:05, Ethernet0/2
O IA     8.8.2.1/32 [110/11] via 10.8.24.2, 00:47:05, Ethernet0/2
O IA     8.8.2.2/32 [110/11] via 10.8.24.2, 00:47:05, Ethernet0/2
O IA     8.8.2.3/32 [110/11] via 10.8.24.2, 00:47:05, Ethernet0/2
O IA     8.8.2.4/32 [110/11] via 10.8.24.2, 00:47:05, Ethernet0/2
O        8.8.3.1/32 [110/11] via 10.8.34.3, 00:47:44, Ethernet0/0
O        8.8.3.2/32 [110/11] via 10.8.34.3, 00:47:44, Ethernet0/0
O        8.8.3.3/32 [110/11] via 10.8.34.3, 00:47:44, Ethernet0/0
O        8.8.3.4/32 [110/11] via 10.8.34.3, 00:47:44, Ethernet0/0
  • Детальная диагностика интерфейса

Router#show ip ospf interface e0/0
Ethernet0/0 is up, line protocol is up 
  Internet Address 10.101.8.1/24, Area 0, Attached via Interface Enable
  Process ID 1, Router ID 8.8.1.4, Network Type BROADCAST, Cost: 10
  Topology-MTID    Cost    Disabled    Shutdown      Topology Name
        0           10        no          no            Base
  Enabled by interface config, including secondary ip addresses
  Transmit Delay is 1 sec, State DR, Priority 1
  Designated Router (ID) 8.8.1.4, Interface address 10.101.8.1
  No backup designated router on this network
  Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
    oob-resync timeout 40
    Hello due in 00:00:01
  Supports Link-local Signaling (LLS)
  Cisco NSF helper support enabled
  IETF NSF helper support enabled
  Index 1/1/1, flood queue length 0
  Next 0x0(0)/0x0(0)/0x0(0)
  Last flood scan length is 0, maximum is 0
  Last flood scan time is 0 msec, maximum is 0 msec
  Neighbor Count is 0, Adjacent neighbor count is 0 
  Suppress hello for 0 neighbor(s)
  • Детальная информация о соседе

R3(config-if)#do sh ip ospf ne 8.8.1.4
 Neighbor 8.8.1.4, interface address 10.8.113.1
    In the area 1 via interface Ethernet0/3
    Neighbor priority is 1, State is FULL, 6 state changes
    DR is 10.8.113.1 BDR is 10.8.113.3
    Options is 0x12 in Hello (E-bit, L-bit)
    Options is 0x52 in DBD (E-bit, L-bit, O-bit)
    LLS Options is 0x1 (LR)
    Dead timer due in 00:00:36
    Neighbor is up for 00:00:41
    Index 1/2/2, retransmission queue length 0, number of retransmission 0
    First 0x0(0)/0x0(0)/0x0(0) Next 0x0(0)/0x0(0)/0x0(0)
    Last retransmission scan length is 0, maximum is 0
    Last retransmission scan time is 0 msec, maximum is 0 msec
  • Детальная информация о процессе OSPF

R2#sh ip ospf
 Routing Process "ospf 1" with ID 8.8.2.4
 Start time: 00:25:33.621, Time elapsed: 00:08:40.442
 Supports only single TOS(TOS0) routes
 Supports opaque LSA
 Supports Link-local Signaling (LLS)
 Supports area transit capability
 Supports NSSA (compatible with RFC 3101)
 Supports Database Exchange Summary List Optimization (RFC 5243)
 Event-log enabled, Maximum number of events: 1000, Mode: cyclic
 It is an area border router
 Router is not originating router-LSAs with maximum metric
 Initial SPF schedule delay 5000 msecs
 Minimum hold time between two consecutive SPFs 10000 msecs
 Maximum wait time between two consecutive SPFs 10000 msecs
 Incremental-SPF disabled
 Minimum LSA interval 5 secs
 Minimum LSA arrival 1000 msecs
 LSA group pacing timer 240 secs
 Interface flood pacing timer 33 msecs
 Retransmission pacing timer 66 msecs
 Number of external LSA 0. Checksum Sum 0x000000
 Number of opaque AS LSA 0. Checksum Sum 0x000000
 Number of DCbitless external and opaque AS LSA 0
 Number of DoNotAge external and opaque AS LSA 0
 Number of areas in this router is 3. 3 normal 0 stub 0 nssa
 Number of areas transit capable is 0
 External flood list length 0
 IETF NSF helper support enabled
 Cisco NSF helper support enabled
 Reference bandwidth unit is 100 mbps
    Area BACKBONE(0)
        Number of interfaces in this area is 6 (4 loopback)
        Area has no authentication
        SPF algorithm last executed 00:05:36.632 ago
        SPF algorithm executed 5 times
        Area ranges are
        Number of LSA 9. Checksum Sum 0x04BDBA
        Number of opaque link LSA 0. Checksum Sum 0x000000
        Number of DCbitless LSA 0
        Number of indication LSA 0
        Number of DoNotAge LSA 0
        Flood list length 0
    Area 1
        Number of interfaces in this area is 1
        Area has no authentication
        SPF algorithm last executed 00:06:16.657 ago
        SPF algorithm executed 1 times
        Area ranges are
        Number of LSA 17. Checksum Sum 0x0904C3
        Number of opaque link LSA 0. Checksum Sum 0x000000
        Number of DCbitless LSA 0
        Number of indication LSA 0
        Number of DoNotAge LSA 0
        Flood list length 0
    Area 2
        Number of interfaces in this area is 1
        Area has no authentication
        SPF algorithm last executed 00:06:16.657 ago
        SPF algorithm executed 4 times
        Area ranges are
        Number of LSA 17. Checksum Sum 0x09D9EC
        Number of opaque link LSA 0. Checksum Sum 0x000000
        Number of DCbitless LSA 0
        Number of indication LSA 0
        Number of DoNotAge LSA 0
        Flood list length 0
  • Посмотреть RIB внутри процесса OSPF (show ip ospf route покажет еще больше инфо)

R4#sh ip ospf rib

            OSPF Router with ID (8.8.44.1) (Process ID 1)


                Base Topology (MTID 0)

OSPF local RIB
Codes: * - Best, > - Installed in global RIB

*>  8.8.1.1/32, Inter, cost 21, area 1
      via 10.8.24.2, Ethernet0/2
      via 10.8.134.3, Ethernet0/1
      via 10.8.34.3, Ethernet0/0
*>  8.8.1.2/32, Inter, cost 21, area 1
      via 10.8.24.2, Ethernet0/2
      via 10.8.134.3, Ethernet0/1
      via 10.8.34.3, Ethernet0/0
*>  8.8.1.3/32, Inter, cost 21, area 1
      via 10.8.24.2, Ethernet0/2
      via 10.8.134.3, Ethernet0/1
      via 10.8.34.3, Ethernet0/0
*>  8.8.1.4/32, Inter, cost 21, area 1
      via 10.8.24.2, Ethernet0/2
      via 10.8.134.3, Ethernet0/1
      via 10.8.34.3, Ethernet0/0
*>  8.8.2.1/32, Inter, cost 11, area 1
      via 10.8.24.2, Ethernet0/2
*>  8.8.2.2/32, Inter, cost 11, area 1
      via 10.8.24.2, Ethernet0/2
*>  8.8.2.3/32, Inter, cost 11, area 1
      via 10.8.24.2, Ethernet0/2
*>  8.8.2.4/32, Inter, cost 11, area 1
      via 10.8.24.2, Ethernet0/2
  • Помотреть траффик процесса OSPF

R1#show ip ospf traffic e0/1


    Interface Ethernet0/1

Last clearing of interface traffic counters never

OSPF packets received/sent
  Type          Packets              Bytes
  RX Invalid    0                    0
  RX Hello      986                  47324
  RX DB des     2                    84
  RX LS req     1                    36
  RX LS upd     5                    624
  RX LS ack     4                    336
  RX Total      998                  48404

  TX Failed     0                    0
  TX Hello      987                  78956
  TX DB des     3                    212
  TX LS req     1                    56
  TX LS upd     5                    640
  TX LS ack     3                    412
  TX Total      999                  80276
          
OSPF header errors
  Length 0, Instance ID 0, Checksum 0, Auth Type 0,
  Version 0, Bad Source 0, No Virtual Link 0,
  Area Mismatch 0, No Sham Link 0, Self Originated 0,
  Duplicate ID 0, Hello 0, MTU Mismatch 0,
  Nbr Ignored 0, LLS 0, Unknown Neighbor 0,
  Authentication 0, TTL Check Fail 0, Test discard 0

OSPF LSA errors
  Type 0, Length 0, Data 0, Checksum 0

Диагностика LSA, LSDB

  • Просмотр таблицы LSDB

Router#show ip ospf database

            OSPF Router with ID (8.8.44.1) (Process ID 1)

                Router Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum Link count
8.8.1.4         8.8.1.4         251         0x80000002 0x006A2D 2
8.8.2.4         8.8.2.4         65          0x80000002 0x007132 1
8.8.3.4         8.8.3.4         61          0x80000005 0x009F7B 8
8.8.44.1        8.8.44.1        61          0x80000003 0x0031BE 4

                Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
10.8.13.3       8.8.3.4         250         0x80000001 0x0013C1
10.8.24.2       8.8.2.4         65          0x80000001 0x00A8FB
10.8.34.3       8.8.3.4         66          0x80000001 0x003265
10.8.113.3      8.8.3.4         250         0x80000001 0x00C2AD
10.8.134.3      8.8.3.4         65          0x80000001 0x00E151

                Summary Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
8.8.1.1         8.8.1.4         281         0x80000001 0x000E07
8.8.1.1         8.8.2.4         280         0x80000001 0x006B9E
8.8.1.2         8.8.1.4         281         0x80000001 0x000410
  • Просмотр отдельной Router LSA в таблице LSDB

Router#show ip ospf database router 8.8.2.4

            OSPF Router with ID (8.8.44.1) (Process ID 1)

                Router Link States (Area 1)

  LS age: 337
  Options: (No TOS-capability, DC)
  LS Type: Router Links
  Link State ID: 8.8.2.4
  Advertising Router: 8.8.2.4
  LS Seq Number: 80000002
  Checksum: 0x7132
  Length: 36
  Area Border Router
  Number of Links: 1

    Link connected to: a Transit Network
     (Link ID) Designated Router address: 10.8.24.2
     (Link Data) Router Interface address: 10.8.24.2
      Number of MTID metrics: 0
       TOS 0 Metrics: 10
  • Просмотр отдельной Network LSA в таблице LSDB

R4#show ip ospf database network 10.8.124.2

            OSPF Router with ID (8.8.44.1) (Process ID 1)

                Net Link States (Area 2)

  LS age: 898
  Options: (No TOS-capability, DC)
  LS Type: Network Links
  Link State ID: 10.8.124.2 (address of Designated Router)
  Advertising Router: 8.8.2.4
  LS Seq Number: 80000001
  Checksum: 0x58E7
  Length: 32
  Network Mask: /24
        Attached Router: 8.8.2.4
        Attached Router: 8.8.44.1
  • Просмотр отделньой Summary LSA в таблице LSDB

Router#show ip ospf database summary 8.8.1.1

            OSPF Router with ID (8.8.44.1) (Process ID 1)

                Summary Net Link States (Area 1)

  LS age: 1815
  Options: (No TOS-capability, DC, Upward)
  LS Type: Summary Links(Network)
  Link State ID: 8.8.1.1 (summary Network Number)
  Advertising Router: 8.8.1.4
  LS Seq Number: 80000001
  Checksum: 0xE07
  Length: 28
  Network Mask: /32
        MTID: 0         Metric: 1 
  • Просмотр отдельной External LSA в таблице LSDB

R4#sh ip ospf data external 8.2.3.4

            OSPF Router with ID (8.8.44.1) (Process ID 1)

                Type-5 AS External Link States

  LS age: 24
  Options: (No TOS-capability, DC, Upward)
  LS Type: AS External Link
  Link State ID: 8.2.3.4 (External Network Number )
  Advertising Router: 8.8.44.1
  LS Seq Number: 80000001
  Checksum: 0x5AF7
  Length: 36
  Network Mask: /32
        Metric Type: 2 (Larger than any link state path)
        MTID: 0 
        Metric: 20 
        Forward Address: 0.0.0.0
        External Route Tag: 0
  • Просмотр отдельной LSA 7 в таблице LSDB

Router#show ip ospf database nssa-external

            OSPF Router with ID (8.8.44.1) (Process ID 1)

                Type-7 AS External Link States (Area 2)

  LS age: 167
  Options: (No TOS-capability, No Type 7/5 translation, DC, Upward)
  LS Type: AS External Link
  Link State ID: 8.2.3.4 (External Network Number )
  Advertising Router: 8.8.44.1
  LS Seq Number: 80000001
  Checksum: 0x3E12
  Length: 36
  Network Mask: /32
        Metric Type: 2 (Larger than any link state path)
        MTID: 0 
        Metric: 20 
        Forward Address: 0.0.0.0
        External Route Tag: 0
  • Просмотр отдельной ASBR-Summary LSA в таблице LSDB

R1#sh ip ospf database asbr-summary  8.8.44.1

            OSPF Router with ID (8.8.1.4) (Process ID 1)

                Summary ASB Link States (Area 0)

  LS age: 813
  Options: (No TOS-capability, DC, Upward)
  LS Type: Summary Links(AS Boundary Router)
  Link State ID: 8.8.44.1 (AS Boundary Router address)
  Advertising Router: 8.8.1.4
  LS Seq Number: 80000001
  Checksum: 0xE3F1
  Length: 28
  Network Mask: /0
        MTID: 0         Metric: 20 

Дебаггинг

  • Hello Protocol

Router#debug ip ospf hello
  • Обмен пакетами

Router#debug ip ospf packet
  • Построение LSDB и пересчет SPF

Router#debug ip ospf rib

Stub и Totally Stub регионы

  • Команда area <#> stub помечает регион как тупиковый

    • Ключ no-summary указывает ABR суммировать и inter-area маршруты

Router(config)#router ospf 1
Router(config-router)#area 2 stub
Router(config-router)#area 3 stub no-summary

NSSA и Totally NSSA регионы

  • Команда area <#> nssa помечает регион как not-so-stubby area

    • no-summary указывает ABR суммировать и inter-area маршруты

    • translate type-7 always указывает транслировать LSA7>5 даже с меньшим RID

    • translate type-7 supress-fa скрывает Forwarding Address в LSA5

Router(config)#router ospf 1
Router(config-router)#area 4 nssa
Router(config-router)#area 5 nssa no-summary
Router(config-router)#area 5 nssa translate type7 supress-fa
Router(config-router)#area 0.0.0.5 nssa translate type7 always

Инъекция маршрута по умолчанию

  • OSPF импортирует маршрут по умолчанию, создавая LSA5/7

  • Команда default-information originate импортирует 0.0.0.0 из RIB

    • Ключ always импортирует маршрут безусловно (не работает в NSSA)

Router(config)#router ospf 2
Router(config-router)#default-information originate
  • В NSSA на ABR требуется волшебный пендель (в TNSSA излишне)

Router(config)#router ospf 2
Router(config-router)#area 2 nssa default-information originate

Редистрибуция

  • Процесс импорта внешних маршрутов из RIB в LSDB (как LSA5/LSA7)

    • Connected

    • Static

    • Динамические

    • Глобальная таблица или VRF

  • По умолчанию LSA получают метрику 20, типа 2

    • Можно указать тип, значение метрики или метку явно или через route-map

  • Без ключа subnets импортируются только классовые сети

Router(config)#router ospf 2
Router(config-router)#redistribute connected subnets
Router(config-router)#redistribute static subnets metric 10 metric-type 1 tag 123
Router(config-router)#redistribute eigrp 1 subnets route-map EIGRP_TO_OSPF
Router(config-router)#default-metric 25

Route-map при редистрибуции в OSPF

  • С помощью Route-map можно отобрать префиксы для редистрибуции или назначить специальные метрики

Router(config)#ip route 10.0.1.1 255.255.255.255 10.0.0.1 tag 1
Router(config)#ip route 10.0.2.2 255.255.255.255 10.0.0.1 tag 2
Router(config)#ip route 10.0.3.3 255.255.255.255 10.0.0.1 tag 3
Router(config)#route-map STATIC_TO_OSF permit 10
Router(config-route-map)#match tag 1
Router(config-route-map)#set metric 10
Router(config-route-map)#set metric-type type-1
Router(config-route-map)#route-map STATIC_TO_OSPF permit 20
Router(config-route-map)#match 2
Router(config)#router ospf 1
Router(config-router)#redistribute static route-map STATIC_TO_OSPF

Destribute-list в OSPF

  • OSPF оперирует LSDB

  • Distribute-list <#> in работает только для экспорта маршрутов в RIB

    • При указании интерфейса идет проверка маршрута на интерфейс next-hop

  • Distribute-list <#> out работает только для контроля редистрибуции

Router(config-router)#distribute-list ACL_OSPF_TO_RIB in
Router(config-router)#distribute-listprefix PREF_OSPF_TO_RIB gateway PREF_NEIGH in gi0/0
Router(config-router)#distribute-list route-map RM_OSPF_TO_RIB
Router(config-router)#distribute-list prefix PREF_BGP_TO_OSPF out bgp 65012

Агрегация inter-area маршрутов OSPF

  • Отсылается только агрегатный маршрут, но не его компоненты

    • Хотя бы один компонент должен быть в RIB

    • Метрика агрегата по-умолчанию - наименьшая метрика его компонентов

    • В RIB создается виртуальный intra-area discard route на интерфейс Null0

  • Указывается регион источника

    • area X range Y - "сети диапазона Y снаружи региона X видны как одна сеть Y"

Router(config)#router ospf 1
Router(config-router)#area 0 range 10.0.0.0 255.255.0.0

Агрегация внешних маршрутов OSPF

  • Отсылается только агрегатный маршрут, но не его компоненты

    • Хотя бы один компонент должен быть в RIB

    • Метрика агрегата задается в default-metric или distribute-list route-map out

    • В RIB создается виртуальный discard route на интерфейс Null0

  • Команда summary-address <IP> <Mask>

    • Работает только на ASBR: выпущенная LSA5 распространяется на все роутеры

Router(config)#router ospf 1
Router(config-router)#summary-address 10.0.0.0 255.255.0.0
  • Используются для связи ABR через non-backbone (и non-stub) регион

    • Через псевдотуннельный интерфейс синхронизируется LSDB area 0

  • Команда area <#> virtual-link <RID> указывает другой конец туннеля

    • Номер региона, к которому принадлежат оба ABR

    • Router ID другого ABR, доступный в указанном регионе

Router1(config)#router ospf 1
Router1(config-router)#area 1 virtual-link 2.2.2.2
Router2(config)#router ospf 1
Router2(config-router)#area 1 virtual-link 1.1.1.1

Prefix Suppression

  • Prefix Suppression скрывает префиксы сетей на транзитных линках

    • На point-to-point линках транзитный префикс не анонсируется как stub в LSA1

    • На линках с DR в LSA2 анонсируется маска /32, такие сети не попадают в RIB

Манипуляции с AD

  • Можно задать AD префиксам OSPF в RIB

  • По умолчанию:

    • 110 для intra-area и inter-area маршрутов

    • 170 для внешних (external) маршрутов

Router(config-router)#distance ospf intra-area 120 inter-area 125 external 160
  • Задание AD для отдельных маршрутов

    • distance <AD> <GatewayIP> <GatewayWildcardMask> <ACL>

Router(config-router)#distance 180 0.0.0.0 255.255.255.255 ACL_DISTANCE_180

Аутентификация по паролю

  • Во все исходящие сообщения добавляется пароль в открытом виде

    • Плохая идея во всех случаях, кроме тестирования

  • Требует предварительное указание пароля на каждом интерфейсе

Router(config-if)#ip ospf authentication-key PASSWORD
  • Отдельно требует включения

    • либо на уровне отдельного интерфейса

Router(config-if)#ip ospf authentication
  • На всех интерфейсах региона

Router(config-router)#area 0 authentication

Аутентификация по хэшу MD5

  • Исходящие пакеты подписываются хэшем от содержимого и ключа

  • Требует задать нумерованные ключи на каждом интерфейсе

Router(config-if)#ip ospf message-digest-key 1 md5 SECRETKEY
  • Отдельно требует включения либо на интерфейсе

Router(config-if)#ip ospf authentication message-digest
  • Либо на интерфейсах всего региона

Router(config-router)#area 0 authenticaton message-digest
  • Сообщения подписываются ключом с наибольшим номером

    • Входящие пакеты проверяются ключом с указанным в них номером

    • Key Rolleover: если хотя бы один сосед использует другой ключ, сообщения дублируются со всеми остальными сконфигурированными ключами

Аутентификация по ключевому комплекту

  • Исходящие пакеты подписываются хэшем от содержимого ключа

    • требует создания ключевого комплекта

Router(config)#key-chain OSPF_KEYCHAIN
Router(config-keychain)#key 1
Router(config-keychain-key)#cryptographic-algorithm ?
  hmac-sha-1  HMAC-SHA-1 authentication algorithm
  hmac-sha-256  HMAC-SHA-256 authentication algorithm
  hmac-sha-384  HMAC-SHA-384 authentication algorithm
  hmac-sha-512  HMAC-SHA-512 authentication algorithm
  md5 MD5 authentication algorithm
Router(config-keychain-key)#cryptographic-algorithm hmac-sha-256
Router(config-keychain-key)#key-string SECRETKEY
Router(config-keychain-key)#interface gi0/0
Router(config-if)#ip ospf authenticaton key-chain OSPF_KEYCHAIN
  • Сообщения подписываются ключом с наибольшим номером

    • Входящие пакеты проверяются ключом с указанным в них номером

    • Key Rollover не нужен, используется ограничение срока действия ключа

Настройка OSPF в DMVPN фаза 2

  • Мультикаст в DMVPN между споками не передается

    • Автоматическое соседство возможно только между хабом и споком

    • При наличии LSA2 роль DR необходимо назначить хабу, BDR запретить

  • Возможны и другие схемы настройки

Hub(config)#interface Tunnel0
Hub(config-if)#ip nhrp map multicast dynamic
Hub(config-if)#ip ospf network broadcast
Hub(config-if)#ip ospf priority 100
Hub(config-if)#ip ospf 1 area 0
Spoke(config)#interface Tunnel0
Spoke(config-if)#ip nhrp map multicast 192.0.2.1
Spoke(config-if)#ip ospf network broadcast
Spoke(config-if)#ip ospf priority 0
Spoke(config-if)#ip ospf 1 area 0

Статическое указание соседей

  • Команда neighbor <IP> добавляет статического соседа в таблицу

    • Требует тип среды nonbroadcast или point-to-multipoint nonbroadcast

      • Среды без поддержки мультикаста или его эмуляции

    • Достаточно указать с одной стороны соседства (логичнее с обоих)

    • Параметр priority можно указать порядок установления соседств

      • Не путать с приоритетом выбора DR/BDR, это не совсем тоже самое

Router(config)#interface gi0/0
Router(config-if)#ip ospf network nonbroadcast
Router(config-if)#router ospf 1
Router(config-router)#neighbor 10.1.2.2 priority 1

Включение режима RFC 1583

  • IOS по умолчанию работает в режиме совместимости с RFC 1853

    • Метрика агрегатного маршрута - минимальная метрика его компонентов

    • Маршрут до ASBR считается только на основании суммы стоимостей

    • Может вызывать петли при работе в среде с устройствами RFC 2328

  • Можно включить работы в режиме RFC 2328

    • Метрика агрегатного маршрута - максимальная метрика его компонентов

    • Предпочитаются intra-area маршруты до ASBR

Router(config-router)#no compatible rfc1583

Last updated