I det tidigare avsnittet om Router ID introducerades ett praktiskt exempel med tre routrar som är anslutna till varandra via Ethernet-portar. Varje router har dessutom ett lokalt nätverk som implementeras på ett loopback-gränssnitt. Alla routrar är konfigurerade att tillhöra OSPF area 0, vilket är en grundläggande princip i en single-area OSPF-uppsättning.
I detta avsnitt kommer fokus att ligga på de två kommandon som används för att aktivera och finjustera OSPF: network och ip ospf. Vi börjar med network-kommandot, som används för att definiera vilka gränssnitt som deltar i OSPF-routning, och går sedan vidare till ip ospf-kommandot, som möjliggör en mer detaljerad kontroll över specifika gränssnitt och deras nätverkstyp.
Network-kommandot: Aktivera OSPF och definiera områden
Network-kommandot är det vanligaste sättet att aktivera OSPF på en router. Det identifierar vilka gränssnitt som ska delta i OSPF-processen baserat på deras nätverksadresser. För routrar som tillhör en single-area OSPF-konfiguration används area 0 som standard area. Detta beror på att OSPF area 0 fungerar som en ryggrad i OSPF-nätverk och är nödvändig för att möjliggöra kommunikation mellan flera områden om nätverket senare utökas.
Syntaxen för kommandot network är:
Router(config-router)# network network-address wildcard-mask area area-id
Wildcard-masken spelar en avgörande roll i detta kommando. Den är motsatsen till en vanlig nätmask och används för att matcha eller ignorera specifika bitvärden i en adress. För att beräkna en wildcard-mask subtraheras nätmasken från 255.255.255.255. Exempelvis resulterar en /24-nätmask i en wildcard-mask på 0.0.0.255, medan en /26-nätmask resulterar i 0.0.0.63.
255.255.255.255 255.255.255.255 255.255.255.255 - 255.255.255.0 255.255.255.192 255.255.255.252 --------------- --------------- --------------- 0.0.0.255 0.0.0.63 0.0.0.3
Följande topologi ger oss möjlighet att illustrera aktivering av OSPF:
R1 OSPF aktivering:
R1(config)# router ospf 10 R1(config-router)# network 10.10.1.0 0.0.0.255 area 0 R1(config-router)# network 10.1.1.4 0.0.0.3 area 0 R1(config-router)# network 10.1.1.12 0.0.0.3 area 0 R1(config-router)# exit
I detta exempel aktiveras OSPF på alla interface vars IP-adresser matchar de angivna nätverken och wildcard-maskerna. Detta innebär att routern skickar och tar emot OSPF-paket på dessa interface och annonserar deras anslutna nätverk till andra OSPF-noder i arean.
Quad Zero-konfiguration
Ett alternativ till att använda specifika nätverksadresser och wildcard-masker i OSPF-konfigurationen är att använda en ”quad zero”-konfiguration. Detta innebär att alla gränssnitt på routern aktiveras för OSPF, oavsett deras IP-adresser, genom att använda följande kommando:
R1(config-router)# network 0.0.0.0 255.255.255.255 area 0
I denna konfiguration fungerar 0.0.0.0 255.255.255.255 som en ”match-all”-regel som aktiverar OSPF på varje interface med en konfigurerad IP-adress. Detta är särskilt användbart i miljöer där du vill säkerställa att alla interface på routern deltar i OSPF-routning-processen utan att behöva ange dem individuellt.
Observera dock att detta kan inkludera interface där OSPF-meddelanden inte är nödvändiga eller önskade, till exempel interface mot stub-nätverk. I sådana fall kan passive-interface-kommandot användas för att undvika att OSPF-meddelanden skickas på specifika interface, samtidigt som deras nätverk annonseras.
Ett annat alternativ till ”quad zero”-konfigurationen är att ange interfacets specifika IP-adress tillsammans med en wildcard-mask på 0.0.0.0. Detta tillvägagångssätt används när du vill undvika komplexitet i att aktivera OSPF på ett enskilt interface utan att behöva matcha en nätverksadress eller inkludera flera interface.
R1(config)# router ospf 10 R1(config-router)# network 10.1.1.5 0.0.0.0 area 0 R1(config-router)# network 10.10.1.1 0.0.0.0 area 0 R1(config-router)# exit
Denna metod är idealisk för att aktivera OSPF på specifika interface när du vill ha full kontroll över vilka interface som ska delta i OSPF-routning, utan att inkludera andra som delar samma nätverksadress.
ip ospf-kommandot: Finjustering av OSPF på interface-nivå
Som ett alternativ till network-kommandot kan OSPF aktiveras direkt på interface-nivå med hjälp av ip ospf-kommandot. Detta tillvägagångssätt används ofta när du vill ha mer kontroll över specifika interface, eller när wildcard-masker är onödiga. Kommandot har följande syntax:
Router(config-router)# ip ospf process-id area area-id
Genom att konfigurera OSPF direkt på gränssnittsnivå kan du exakt specificera vilka gränssnitt som ska delta i routning-processen. Exempelvis:
R1(config)# interface GigabitEthernet 0/0/0 R1(config-if)# ip ospf 10 area 0 R1(config)# interface GigabitEthernet 0/0/1 R1(config-if)# ip ospf 10 area 0 R1(config-if)# exit R1(config)# interface Loopback 0 R1(config-if)# ip ospf 10 area 0 R1(config-if)# exit R1(config)#
En annan viktig fördel med att använda ip ospf-kommandot är möjligheten att justera nätverkstypen. Detta är särskilt användbart på punkt-till-punkt-länkar där standardnätverkstypen (broadcast) inte är optimal. Genom att anpassa nätverkstypen kan du förbättra prestanda och undvika problem som orsakas av felaktiga interface-nivå konfigurationer.
Kort om nätverkstypen i OSPF
OSPF stöder olika nätverkstyper som bestämmer hur routrar kommunicerar med varandra på ett specifikt gränssnitt:
- Broadcast-nätverk: Används på Ethernet-länkar. Kräver val av en DR (Designated Router) och BDR (Backup Designated Router).
- Punkt-till-punkt-nätverk: Används på länkar som ansluter två routrar direkt, t.ex. seriella gränssnitt. Ingen DR/BDR behövs.
- Punkt-till-multipunkt-nätverk: Stödjer flera routrar utan krav på DR/BDR, t.ex. Frame Relay.
- Loopback: Loopback-gränssnitt används oftast för att annonsera en router-ID och betraktas som en punkt-till-punkt-nätverkstyp av OSPF.
Konfiguration av länkar mellan R1, R2 och R3
I exemplet är alla routrar anslutna via Ethernet-länkar och tillhör area 0. Vi konfigurerar nätverkstypen i samma ospf processen:
R1(config)# interface GigabitEthernet 0/0/0 R1(config-if)# ip ospf 10 area 0 R1(config-if)# ip ospf network point-to-point R1(config-if)# exit R1(config)# interface GigabitEthernet 0/0/1 R1(config-if)# ip ospf 10 area 0 R1(config-if)# ip ospf network point-to-point R1(config-if)# exit
R2(config)# interface GigabitEthernet 0/0/0 R2(config-if)# ip ospf 10 area 0 R2(config-if)# ip ospf network point-to-point R2(config-if)# exit R2(config)# interface GigabitEthernet 0/0/1 R2(config-if)# ip ospf 10 area 0 R2(config-if)# ip ospf network point-to-point R2(config-if)# exit
R3(config)# interface GigabitEthernet 0/0/0 R3(config-if)# ip ospf 10 area 0 R3(config-if)# ip ospf network point-to-point R3(config-if)# exit R3(config)# interface GigabitEthernet 0/0/1 R3(config-if)# ip ospf 10 area 0 R3(config-if)# ip ospf network point-to-point R3(config-if)# exit
Ethernet-länkar mellan routrar är konfigurerade som punkt-till-punkt för att undvika behov av valet av DR/BDR.