OSPFv3 er versionen af OSPF, der bruges til IPv6. I CCNA 200-301 v2.0 skal du kunne konfigurere single-area OSPFv2 til IPv4 og OSPFv3 til IPv6 (emne 3.3), herunder naboskaber, point-to-point- og broadcast-netværk (DR/BDR) og router-ID. Denne artikel bygger videre på vores introduktion til OSPF.
Hvad er det samme som OSPFv2?
Det meste af det, du kender fra OSPFv2, gælder også for OSPFv3:
- Det er en link state-protokol, der bruger SPF-algoritmen (Dijkstra).
- Metric er cost, som beregnes ud fra reference-båndbredden.
- Routere danner naboskaber med Hello-pakker, og hello- og dead-timere skal matche.
- På broadcast-netværk (fx Ethernet) vælges en DR og en BDR. På point-to-point-links gør man ikke.
- Router-ID er et 32-bit tal, der skrives som en IPv4-adresse. Det gælder også i OSPFv3.
- Områder (areas) og area 0 som backbone virker på samme måde.
Hvad er anderledes?
| OSPFv2 | OSPFv3 | |
|---|---|---|
| Protokol | IPv4 | IPv6 (og med address families også IPv4) |
| Aktivering | network-kommandoer under routerprocessen (eller ip ospf ... area på interfacet) |
Direkte på interfacet med ipv6 ospf <proces> area <område> |
| Afsenderadresse for pakker | Interfacets IPv4-adresse | Interfacets link-local-adresse (FE80::/10) |
| Multicast-adresser | 224.0.0.5 (alle OSPF-routere) og 224.0.0.6 (DR/BDR) | FF02::5 og FF02::6 |
| Router-ID | Vælges automatisk ud fra IPv4-adresser | Vælges også ud fra IPv4-adresser. Uden nogen IPv4-adresse skal du sætte det manuelt |
| Autentificering | Indbygget i OSPF-headeren | Fjernet fra headeren og typisk løst med IPsec (autentificering er ikke en del af CCNA-emnet) |
Den vigtigste praktiske forskel er, at du aktiverer OSPFv3 pr. interface, og at du skal huske router-ID, hvis routeren kun har IPv6.
Topologi
Vi bruger to routere forbundet med et point-to-point-link og hver sit LAN:
LAN A (2001:DB8:A::/64) --- G0/0 [R1] G0/1 --- 2001:DB8:12::/64 --- G0/1 [R2] G0/0 --- LAN B (2001:DB8:B::/64)
Trin 1: Slå IPv6-routing til og sæt adresser
IPv6-routing er slået fra som standard på mange Cisco-routere:
R1(config)# ipv6 unicast-routing
R1(config)# interface GigabitEthernet0/0
R1(config-if)# ipv6 address 2001:DB8:A::1/64
R1(config-if)# no shutdown
R1(config-if)# interface GigabitEthernet0/1
R1(config-if)# ipv6 address 2001:DB8:12::1/64
R1(config-if)# no shutdown
Det samme gøres på R2 med 2001:DB8:B::1/64 og 2001:DB8:12::2/64.
Trin 2: Start OSPFv3-processen og sæt router-ID
R1(config)# ipv6 router ospf 1
R1(config-rtr)# router-id 1.1.1.1
R2(config)# ipv6 router ospf 1
R2(config-rtr)# router-id 2.2.2.2
Har routeren ingen IPv4-adresse, og du glemmer router-ID, starter processen ikke. Du vil typisk se en fejlmeddelelse om, at processen ikke kan vælge et router-ID.
Trin 3: Aktivér OSPFv3 på interfaces
R1(config)# interface GigabitEthernet0/0
R1(config-if)# ipv6 ospf 1 area 0
R1(config-if)# interface GigabitEthernet0/1
R1(config-if)# ipv6 ospf 1 area 0
R1(config-if)# ipv6 ospf network point-to-point
Kommandoen ipv6 ospf network point-to-point på linket mellem routerne betyder, at der ikke vælges DR/BDR, og at naboskabet kommer hurtigere op. Den skal sættes i begge ender.
Gentag på R2. LAN-interfacet bør desuden være passivt, så der ikke sendes Hellos ud til klienterne:
R1(config)# ipv6 router ospf 1
R1(config-rtr)# passive-interface GigabitEthernet0/0
Den nyere syntaks: router ospfv3 med address families
På nyere IOS og IOS XE kan du også bruge router ospfv3, der understøtter både IPv6 og IPv4 i samme proces:
R1(config)# router ospfv3 1
R1(config-router)# router-id 1.1.1.1
R1(config-router)# address-family ipv6 unicast
R1(config-router-af)# passive-interface GigabitEthernet0/0
R1(config-router-af)# exit-address-family
R1(config)# interface GigabitEthernet0/1
R1(config-if)# ospfv3 1 ipv6 area 0
Begge måder virker. Til CCNA er det vigtigste, at du kan genkende dem og ved, at OSPFv3 aktiveres pr. interface.
Trin 4: Kontrollér
R1# show ipv6 ospf neighbor
R1# show ipv6 ospf interface brief
R1# show ipv6 route ospf
R1# show ipv6 protocols
I show ipv6 ospf neighbor skal naboen stå i tilstanden FULL. På et point-to-point-link står der FULL/ -, fordi der ikke er nogen DR/BDR. På et broadcast-segment ser du FULL/DR, FULL/BDR eller 2WAY/DROTHER mellem to DROTHER-routere. Det er helt normalt.
I show ipv6 route ospf er OSPF-ruter markeret med O. Læg mærke til, at next hop er naboens link-local-adresse (FE80::…), ikke den globale adresse.
DR/BDR-valg
På broadcast-netværk vælges DR og BDR sådan:
- Højeste interface-prioritet (standard 1, 0 betyder, at routeren aldrig bliver DR).
- Ved lighed: højeste router-ID.
Valget er ikke preemptive. En ny router med højere prioritet overtager ikke rollen, før processen genstartes eller DR’en forsvinder. Du sætter prioriteten sådan:
R1(config-if)# ipv6 ospf priority 100
Typiske fejl, når naboskabet ikke kommer op
- Forskellige areas på de to ender af linket.
- Hello- og dead-timere matcher ikke.
- Samme router-ID på to routere.
- Manglende
ipv6 unicast-routing. - Interfacet er passivt på linket mellem routerne.
- Forskellig netværkstype (fx point-to-point i den ene ende og broadcast i den anden). Det kan give et naboskab, der ser ud til at virke, men ruterne mangler.
- MTU-mismatch, der får naboskabet til at hænge i EXSTART/EXCHANGE.
Brug show ipv6 ospf interface til at sammenligne area, timere, netværkstype og prioritet i begge ender.
OSPFv2 og OSPFv3 side om side
I mange netværk kører IPv4 og IPv6 samtidig (dual stack). Så kører du typisk OSPFv2 til IPv4 og OSPFv3 til IPv6 som to uafhængige processer på de samme routere. Det er helt normalt, og de to processer påvirker ikke hinanden. Du kan godt genbruge samme router-ID i begge processer, men det skal være unikt i hver enkelt OSPF-domæne. Husk, at en fejl i den ene protokol ikke nødvendigvis viser sig i den anden: Virker IPv4, men ikke IPv6, så kig på OSPFv3-konfigurationen og IPv6-adresserne, ikke på OSPFv2.
Det skal du kunne til eksamen
- Konfigurere OSPFv3 med router-ID og aktivering pr. interface.
- Kende forskellene til OSPFv2: link-local som afsender, FF02::5/FF02::6 og at OSPFv3 aktiveres pr. interface.
- Aflæse naboskabstilstande og DR/BDR-roller.
- Sætte netværkstypen til point-to-point.
Relateret: OSPF (Open shortest path first), Hvad er IP routing? og vores artikel om IPv6 grundlæggende.