문제1. 구성도와 같이. R1,R2사이에 IP를 설정하고, OSPF AREA0를 설정 하세요.
확인1. R1#show ip ospf neighbor로 2개의 neighbor를 확인합니다.
확인2. R1#show ip ospf interface brief로 OSPF가 설정된 interface를 확인합니다.
확인3. R1#ping 2.2.2.2로 통신이 되는 것을 확인합니다.
(단 network command는 wildcard mask를 이용하여, 1줄로 만드세요.)
(1.1.0.1/32, 1.1.1.1/32, 1.1.2.1/32 1.1.3.1/32, 1.1.4.1/32)
>>> 1.1.4.1은 OSPF로 광고하지 않겠습니다.
R1
no interface loopback 0
interface loopback 10
ip add 1.1.0.1 255.255.255.255
ip add 1.1.1.1 255.255.255.255 secondary
ip add 1.1.2.1 255.255.255.255 secondary
ip add 1.1.3.1 255.255.255.255 secondary
ip add 1.1.4.1 255.255.255.255 secondary
router ospf 1
no network 1.1.1.1 0.0.0.0 area 0
network 1.1.X.0 0.0.Y.255 area 0 >>>>>>>>>> 1.1.4.1/32는 광고하면 안됨
network 1.1.0.0 0.0.3.255 area 0
확인1. R2#show ip route ospf로 확인 하시면, 1.1.4.1/32 경로는 보이지 않음 !!!!
O 1.1.0.1 [110/11] via 10.1.21.1, 00:00:05, Ethernet0/0
O 1.1.1.1 [110/11] via 10.1.21.1, 00:00:05, Ethernet0/0
O 1.1.2.1 [110/11] via 10.1.21.1, 00:00:05, Ethernet0/0
O 1.1.3.1 [110/11] via 10.1.21.1, 00:00:05, Ethernet0/0
>> R1#show ip ospf neighbor로 확인한다. (2개)
확인1. R1#show ip route ospf로 확인한다.
-> E0/0으로 선택한다. (Serial(1.54M)보다 Ethernet(10M)이 BW가 좋음)
-> OSPF는 Loopback에 대해서 무조건 /32로 광고한다.
-> 아래의 Point-to-Point를 설정하면 기존의 Subnet으로 광고한다.
R2
config)#interface loopback 0
config)#ip ospf network point-to-point
R2#show ip route ospf
2.0.0.0/24 is subnetted, 1 subnets
O 2.2.2.2 [110/11] via 10.1.21.2, 00:21:37, Ethernet0/0
OSPF Network Command에 wildcard mask를 이용하여 적용한다.
OSPF Loopbac 광고의 특징을 확인한다.
Packet을 확인 하세요.
- Fastethernet구간에서 OSPF관련 packet이 어떠한 IP를 사용하는지 확인 하세요.
- Serial구간에서 OSPF관련 packet이 어떠한 IP를 사용하는지 확인 하세요.
R1 #debug ip ospf packet
*Apr 6 02:09:56.191: OSPF-1 PAK : rcv. v:2 t:1 l:48
rid:2.2.2.2 aid:0.0.0.0 chk:A793 aut:0 auk: from Ethernet0/0
R1#undebug all
R1#debug ip ospf hello
-> debug로 ospf hello message만 확인하는 방법
Apr 6 02:12:31.758: OSPF-1 HELLO Et0/0: Send hello to 224.0.0.5 area 0 from 10.1.21.1
Router#
Apr 6 02:12:37.601: OSPF-1 HELLO Et0/0: Rcv hello from 2.2.2.2 area 0 10.1.21.2
R2#debug ip icmp
R1#ping 10.1.21.2 !!!!
2.2.2.2로 ping을 보낸다.
wir 새로운 창에서 icmp 검색하여 확인
Apr 6 02:58:33.894: OSPF-1 HELLO Et0/0: Rcv hello from 2.2.2.2 area 0 10.1.21.2
Apr 6 02:58:33.894: OSPF-1 HELLO Et0/0: Mismatched hello parameters from 10.1.21.2
*Apr 6 02:58:33.894: OSPF-1 HELLO Et0/0: Dead R 32 C 40, Hello R 8 C 10 Mask R 255.255.255.252 C 255.255.255.252
(Down, Init, Two-way, Exstart, Exchange, Loading,?Full)
STEP1. R1#debug ip ospf adj로 neighbor 단계에 대한 debug를 활성화합니다.
STEP2. R2#clear ip ospf process로 neighbor down/up 합니다.
STEP3. R1에서 Debug 내용을 확인 합니다.
관계를 확인 하세요(show ip ospf neighbor) neighbor가 맺어지지 않는 이유를 확인 하고,
R1의 E0/0의 Hello interval을 8sec 변경 후에 Neighbor가 다시 맺어지는 것을 확인 하세요.
확인1. 현재 R2에서 show ip ospf neighbor로 R1과 E0/0으로 Neighbor 성립되어 있는것을 확인합니다.
확인2. R2#show ip ospf interface e0/0으로 hello interval이 10sec인것을 확인 합니다.
확인3. R2
config)#interface e0/0
config-if)#ip ospf hello-interval ?
config-if)#ip ospf hello-interval 8
>> 40sec후에 neighbor down되는것을 확인합니다.
확인4. R1#debug ip ospf hello
*Apr 6 02:56:59.543: OSPF-1 HELLO Et0/0: Rcv hello from 2.2.2.2 area 0 10.1.21.2
*Apr 6 02:56:59.543: OSPF-1 HELLO Et0/0: Mismatched hello parameters from 10.1.21.2
*Apr 6 02:56:59.543: OSPF-1 HELLO Et0/0: Dead R 32 C 40, Hello R 8 C 10 Mask R 255.255.255.252 C 255.255.255.252
확인5. R1의 E0/0의 Hello을 8sec 변경후 Neighbor가 성립 되는것을 확인합니다.
확인1. R2#show run | sec ospf
router ospf 1
no network 10.1.21.0 0.0.0.255 area 0
interface e0/0
ip ospf 1 area 1 >> e0/0을 area0에서 area1으로 변경합니다.
확인2. R2에서 Defalt로 아래의 message를 보여주네요.
R2# *Apr 6 03:01:44.900: %OSPF-4-ERRRCV: Received invalid packet: mismatched area ID
from backbone area from 10.1.21.1, Ethernet0/0
확인3. R1#debug ip ospf adj
R1#*Apr 6 03:04:28.935: OSPF-1 ADJ Et0/0: Rcv pkt from 10.1.21.2, area 0.0.0.0,
mismatched area 0.0.0.1 in the header
변경 후, R4와의 Neighbor 관계를 확인 하세요. (show ip interface e0/0)
확인1. 현재 R2의 E0/0의 MTU SIZE는 1500입니다 . R2#show ip interface e0/0 | in MTU
MTU 1500 bytes, BW 10000 Kbit/sec, DLY 1000 usec,
확인2. R2의 E0/0의 MTU SIZE를 1480으로 변경합니다.
config)#interface e0/0
config-if)#ip mtu 1480 >> #show ip interface e0/0 | in MTU
확인3. MTU Size는 Neighbor의 성립 단계에서 확인하기 때문에, 현재 변경해도, Neighbor는 다운되지 않음
R1#clear ip ospf process로 neighbor를 새로 맺으면, 성립되지 않습니다.
확인4. R1#debug ip ospf adj로 왜 neighbor가 성립되지 않는지 확인합니다.
*Apr 6 03:13:56.947: OSPF-1 ADJ Et0/0: Rcv DBD from 2.2.2.2 seq 0x198C opt 0x52 flag 0x7 len 32 mtu 1480 state EXCHANGE
*Apr 6 03:13:56.947: OSPF-1 ADJ Et0/0: Nbr 2.2.2.2 has smaller interface MTU
*Apr 6 03:13:56.947: OSPF-1 ADJ Et0/0: Send DBD to 2.2.2.2 seq 0x198C opt 0x52 flag 0x2 len 92
확인5. R1의 E0/0의 MTU도 1480으로 변경합니다.
config-if)#ip mtu 1480
>> R1은 현재 Router ID가 1.1.1.1입니다. >> show ip opsf interface e0/0으로 확인됩니다.
>> R1에 OSPF가 구동할떄, Loopback중에 가장 높은 IP가 자동으로 선택되었습니다.
확인1. R1의 Router ID를 2.2.2.2로 수동으로 변경합니다.
router ospf 1
router-id 2.2.2.2
R1,R2#clear ip ospf procss로 적용합니다.
확인2. R1,R2간에 OSPF Neighbor가 성립되지 않는것을 확인합니다.
R2# *Apr 6 03:19:43.320: %OSPF-4-DUP_RTRID_NBR: OSPF detected duplicate
router-id 2.2.2.2 from 10.1.21.1 on interface Ethernet0/0
확인3.
확인1. R2에서 show ip ospf neighbor로 3개의 ospf neighbor를 확인 합니다.
E0/0의 COST가 낮기 때문입니다.
R1#traceroute 2.2.2.2로 확인가능
R1#show ip route ospf | in 2.2.2.2
O 2.2.2.2 [110/11] via 10.1.21.2, 00:06:31, Ethernet0/0
>>> E0/0 COST = 10
>>> S1/0 COST = 64
(Loopback의 COST는 1입니다.100Mbps)
E0/0의 COST = 10^8/10M (10^7) = 10 + 1 > 11 (R1에서 show ip route ospf | in 2.2.2.2로 확인
S1/0의 COST = 10^8/1.54M = 64 + 1 > 65
최적 경로만이 Routing에 올라가기 때문에, E0/0을 Shutdown하고 확인
R1#show ip route ospf | in 2.2.2.2
O 2.2.2.2 [110/65] via 10.1.12.2, 00:00:04, Serial1/0
E0/0의 COST를 64로 변경하면, OSPF는 E0/0, S1/0의 COST가 동일하다고 판단하여,
2개의 경로를 모두 사용하게 됩니다.
R1
config)#interface e0/0
config-if)#ip ospf cost 10
config-if)#ip ospf cost 64 >>>> 10에서 64로 변경합니다. !!!!
확인1. 변경후, R1#show ip route ospf로 보면, 2.2.2.2/32이 경로가 아래와 같이 2개 보임
O 2.2.2.2 [110/65] via 10.1.21.2, 00:00:00, Ethernet0/0
[110/65] via 10.1.12.2, 00:03:15, Serial1/0
확인2. R1#traceroute 2.2.2.2 probe 2로 Loadbalancing의 동작을 확인합니다.
확인3. R1의 E0/0의 COST 다시 원복합니다
config-if)#no ip ospf cost 64
COST값을 다시 확인 하세요.
확인1. R1#show ip ospf | in Reference
Reference bandwidth unit is 100 mbps
확인2. R1의 Reference Bandwidth 1000으로 변경합니다.
router ospf 1
auto-cost reference-bandwidth 1000
확인3. R1#show ip ospf interface e0/0 | in Cost
Process ID 1, Router ID 11.1.1.1, Network Type BROADCAST, Cost: 100
확인4. OSPF Network에 Gigabit 이상의 Interface가 존재하기 때문에, 계산 수치를 변경해야 합니다/.
R1
router ospf 1
distance 80
R2
router ospf 1
distance 70 11.1.3.1 0.0.0.0 10
>> Router ID가 11.1.3.1인 네이버가 준 경로중, 10에 Match되는 경로를 AD 70으로 변경함 !!!!
exit
access-list 10 permit 11.1.1.1 0.0.0.0
access-list 10 permit 11.1.3.1 0.0.0.0
(R2#clear ip route *) >> routing table을 새로고침 !!!
확인1. R2#show ip route ospf | in 1.1
O 11.1.0.1 [110/11] via 10.1.21.1, 00:00:14, Ethernet0/0
O 11.1.1.1 [70/11] via 10.1.21.1, 00:00:14, Ethernet0/0
O 11.1.2.1 [110/11] via 10.1.21.1, 00:00:14, Ethernet0/0
O 11.1.3.1 [70/11] via 10.1.21.1, 00:00:14, Ethernet0/0
R1
interface e0/1
ip add 10.1.1.254 255.255.255.0
no shut
PC1>ip 10.1.1.1 255.255.255.0 10.1.1.254
PC2>ip 10.1.1.2 255.255.255.0 10.1.1.254
확인1. PC1>ping 2.2.2.2 통신확인 !!!!
확인2.1 만약 R1에서 E0/1(10.1.1.0/24)를 OSPF로 광고하지 않는 경우, PC1에서는
>> PC>2.2.2.2로 통신이 되지 않는 것을 확인 하세요.
PC1>ping 2.2.2.2 .......
확인2.2 R1에서 E0/1(10.1.1.0/24)를 OSPF로 광고하는 경우, PC1에서 PC>2.2.2.2로 통신이 되는 것을 확인 하세요.
>> R1
router ospf 1
network 10.1.1.0 0.0.0.255 area 0
PC1>ping 2.2.2.2 !!!!!!
(어떠한 경우에 Passive-interface를 사용해야 하는지 확인 하세요.)
확인3.1 R1,SW1간에 Packet Capture를 해보면, Hello message가 보이지 않는 것을 확인 할 수 있습니다.
확인3.2 Passive-interface는 어떠한 경우에 사용되는지 확인 하세요.
R1
router ospf 1
passive-interface e0/1
구성도