■ NBMA에서 OSPF
- Default Network Type on F/R Interface
- Statically configured neighbors
- All routers on same subnet
- Has a DR
■ BMA에서 OSPF
- LSAs are constrained to area
- Area 0 serves as the backbone area
- All other areas must connect to Area 0.
- Use virtual links when an area is not physically adjacent to Area 0
■ virtual-link에 대한 설명
- 한마디로 다른 Area 에 있는 OSPF 구역이 Area 0 과 Direct로 연결될 수 없을때 virtual link를 사용한다.
- 아래 그림에서 보이듯이 Area 0과 Area 2 는 연결되지 않으므로, 이를 Virtual link로 연결해 주는 것이다.
- 위에서 설명했듯이 OSPF는 꼭 Area 0에 연결되어야 한다.
- LAB4와 같아 보이지만 이번에 F/R 구간이 Multi point로 연결된 것을 볼 수 있다.
■ Show the syntax for OSPF configuration
Command | R(config)# router ospf process-id |
Description | OSPF 시작 |
Command | R(config-router)# network network [wildcard-mask] area number |
Description | network를 OSPF area에 참여시킴 |
Command | R(config-router)# neighbor ip-address |
Description | 정적으로 neighbor을 설정시킨다. (NBMA에서) |
Command | R(config-router)# area number virtual-link router-id |
Description | 라우터와 Area0 사이에 virtual link를 생성한다. - number = area0으로 건너기 위한 area numer - router-id = virtual link의 반대편 끝의 router ID |
■ Configure OSPF for multiple areas
###R2
R2(config)#router ospf 1
R2(config-router)#network 10.1.2.0 0.0.0.255 area 2
R2(config-router)#network 2.2.2.2 0.0.0.0 area 2
R2(config-router)#network 192.168.1.0 0.0.0.3 area 1
R2(config-router)#
여러 Area가 물려 있으므로, shortcut은 사용하지 못합니다.
###R1
R1(config)#router ospf 1
R1(config-router)#network 192.168.1.0 0.0.0.3 area 1
R1(config-router)#network 1.1.1.1 0.0.0.0 area 0
R1(config-router)#network 172.16.1.0 0.0.0.255 area 0
R1(config-router)#
실수로 172.16.1.0 네트워크를 0.0.0.3 네트워크로 광고 하지 마시길 바랍니다.
여기서는 multipoint network이기 때문에 같은 서브넷으로 설정하였습니다.
###BB1
BB1(config)#router ospf 1
BB1(config-router)#network 172.16.1.0 0.0.0.255 area 0
BB1(config-router)#network 3.3.3.3 0.0.0.0 area 0
BB1(config-router)#
###BB2
BB2(config)#router ospf 1
BB2(config-router)#network 172.16.1.0 0.0.0.255 area 0
BB2(config-router)#network 4.4.4.4 0.0.0.0 area 0
BB2(config-router)#
###R1
자 그럼 설정이 끝났으니 확인을 해보도록 하겠습니다.
R1#sh ip os nei
Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 1 FULL/DR 00:00:37 192.168.1.2 FastEthernet0/0
R1#
그런데 2.2.2.2만 neighbor로 등록이 되어 있군요.
BB1과 BB2는 왜 등록이 안됐을까요?
한번 인터페이스를 확인해 보겠습니다.
R1#sh ip os in se0/0
Serial0/0 is up, line protocol is up
Internet address is 172.16.1.1/24, Area 0
Process ID 1, Router ID 1.1.1.1, Network Type MULTI-POINT, Cost: 781
Transmit Delay is 1 sec, State DR, Priority 1
Designated Router (ID) 1.1.1.1, Interface address 172.16.1.1
No backup designated router on this network
Timer intervals configured, Hello 30, Dead 120, Wait 120, Retransmit 5
Hello due in 00:00:23
Index 3/3, flood queue length 0
Next 0x0(0)/0x0(0)
Last flood scan length is 1, maximum is 1
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)
R1#
Network type 이 Multi-point 이군요
이건 Non_Broadcast 구간이라는 말입니다.
그렇다면 이 부분을 바로 잡아 보겠습니다.
■ Configure OSPF for a nonbroadcast OSPF network type
또 나왔습니다. Packet Tracer에서 안 먹히는 명령어....
여기서 이렇게 neighbor를 설정해 주어야 합니다.
###R1
router ospf 1
neighbor 172.16.1.2
neighbor 172.16.1.3
이렇게 하면 R1에서의 neighbor는 올라오게 됩니다.
그러고 이제 BB2에서도 BB1과의 PVC구간 을 잡아 주어야 하겠죠
###BB2
neighbor 172.16.1.2
###BB1
sh ip ospf neigh
제대로 올라왔겠죠.
자 그럼 확인해 봅시다.
###R1
R1#sh ip ro
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Gateway of last resort is not set
1.0.0.0/32 is subnetted, 1 subnets
C 1.1.1.1 is directly connected, Loopback0
172.16.0.0/24 is subnetted, 1 subnets
C 172.16.1.0 is directly connected, Serial0/0
192.168.1.0/30 is subnetted, 1 subnets
C 192.168.1.0 is directly connected, FastEthernet0/0
R1#
네, 나머지 주소는... 아시다시피... 위의 커맨드가 안 먹혀서 이정도만 올라왔습니니다.
아무튼 이제 보면 2.2.2.2에 대한 부분이 나와 있지 않습니다.
하지만 sh ip os nei 명령어를 쳐보시면 2.2.2.2는 분명 연결은 되어 있습니다.
■ Configure a virtual link
이유는 2.2.2.2 는 area 2로 설정을 했기 때문입니다.
area 2가 area 0에 연결되지 않아서 제대로 작동을 안하는 것입니다.
그래서 여기에 virtual-link를 통해 연결시켜보겠습니다.
###R1
R1(config)#router ospf 1
R1(config-router)#area 1 virtual-link 2.2.2.2
R1(config-router)#
명령어의 형식은
가로지를 area number를 적어주는 것이고,
가로지를 area의 반대편 끝의 OSPF Router ID를 적어주시면 됩니다.
###R2
R2(config)#router ospf 1
R2(config-router)#area 1 virtual-link 1.1.1.1
R2(config-router)#
자 그럼 확인을 해 보겠습니다.
###R1
R1#sh ip os nei
Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 1 FULL/DR 00:00:35 192.168.1.2 FastEthernet0/0
2.2.2.2 0 FULL/ - 00:00:32 192.168.1.2 OSPF_VL0
R1#
이제 neighbor로 물리적링크와 virtual-link 두개가 올라왔군요.
그렇다면 라우팅 테이블도 확인해 보겟습니다.
R1#sh ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Gateway of last resort is not set
1.0.0.0/32 is subnetted, 1 subnets
C 1.1.1.1 is directly connected, Loopback0
2.0.0.0/32 is subnetted, 1 subnets
O IA 2.2.2.2 [110/2] via 192.168.1.2, 00:00:02, FastEthernet0/0
10.0.0.0/24 is subnetted, 1 subnets
O IA 10.1.2.0 [110/2] via 192.168.1.2, 00:00:02, FastEthernet0/0
172.16.0.0/24 is subnetted, 1 subnets
C 172.16.1.0 is directly connected, Serial0/0
192.168.1.0/30 is subnetted, 1 subnets
C 192.168.1.0 is directly connected, FastEthernet0/0
R1#
네 이제 제대로 라우팅 테이블이 올라와 있는 것을 볼 수 있습니다.
IA는 OSPF inter area 라는 말로 이 주소는 다른 area에서 왔다는 의미로 아시면 됩니다.
■ Verify OSPF operation
R1#ping 10.1.2.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.2.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 31/31/32 ms
R1#ping 1.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 15/15/15 ms
R1#ping 2.2.2.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 16/28/32 ms
R1#