OSPF故障排除实例分析
- 发布于:2021-08-04
- 共 192 人围观
配置如下表所示:
ROUTE1#show ip ospf interface serial 1
Serial1 is up, line protocol is up
Internet Address 10.1.1.1/24, Area 0
Process ID 20, Router ID 10.1.2.1, Network Type BROADCAST, Cost: 64
Transmit Delay is 1 sec, State DR, Priority 1
Designated Router (ID) 10.1.2.1, Interface address 10.1.1.1
Backup Designated router (ID) 10.1.1.2, Interface address 10.1.1.2
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:08
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 10.1.1.2 (Backup Designated Router)
Suppress hello for 0 neighbor(s)
ROUTE2#show ip ospf interface serial 1/1
Serial1/1 is up, line protocol is up
Internet Address 10.1.1.2/24, Area 0
Process ID 20, Router ID 10.1.1.2, Network Type POINT_TO_POINT, Cost: 64
Transmit Delay is 1 sec, State POINT_TO_POINT,
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:02
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 10.1.2.1
Suppress hello for 0 neighbor(s)
从上面可以看出,路由器Router1是配置broadcast模式,而路由器Roure2配置成点对点模块。这种网络类型的不匹配,导致了路由通告的不可达。
ROUTE1#show ip ospf database router 10.1.1.2
Adv Router is not-reachable
LS age: 418
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 10.1.1.2
Advertising Router: 10.1.1.2
LS Seq Number: 80000002
Checksum: 0xFA63
Length: 60
Number of Links: 3
Link connected to: another Router (point-to-point)
(Link ID) Neighboring Router ID: 10.1.2.1
(Link Data) Router Interface address: 10.1.1.2
Number of TOS metrics: 0
TOS 0 Metrics: 64
Link connected to: a Stub Network
(Link ID) Network/subnet number: 10.1.1.0
(Link Data) Network Mask: 255.255.255.0
Number of TOS metrics: 0
TOS 0 Metrics: 64
ROUTE2#show ip ospf database router 10.1.2.1
Adv Router is not-reachable
LS age: 357
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 10.1.2.1
Advertising Router: 10.1.2.1
LS Seq Number: 8000000A
Checksum: 0xD4AA
Length: 48
Number of Links: 2
Link connected to: a Transit Network
(Link ID) Designated Router address: 10.1.1.1
(Link Data) Router Interface address: 10.1.1.1
Number of TOS metrics: 0
TOS 0 Metrics: 64
可以看出,对于子网10.1.1.0/24, 路由器ROUTE2产生一个点对点连接,而路由器Router2则产生一个透过的连接,这就在链路状态数据库中产了不一致,从而导致路由信息不会出现在路由表中。
ROUTE2#show ip route
10.1.0.0/16 is variably subnetted, 3 subnets, 2 masks
C 10.1.1.0/24 is directly connected, Serial1/1
C 10.1.3.1/32 is directly connected, Loopback0
解决方案:
为了解决这个问题,需要将两边的网络类型配置为一致。既可以将Router1上的网络类型改为点对点,也可以将Router2上的网络类型改为broadcast.在这个例子中我们将Router1上的网络类型修改为点对点类型。
ROUTE1#configure terminal
ROUTE1(config)#interface serial 1
ROUTE1(config-if)#no ip ospf network broadcast
ROUTE1(config-if)#end
ROUTE1#show ip ospf interface serial 1
Serial1 is up, line protocol is up
Internet Address 10.1.1.1/24, Area 0
Process ID 20, Router ID 10.1.2.1, Network Type POINT_TO_POINT, Cost: 64
Transmit Delay is 1 sec, State POINT_TO_POINT,
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:04
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 10.1.1.2
Suppress hello for 0 neighbor(s)
至此,故障排除。
需要注意的是,如果有一端的接口是多接口,而另一端是子接口,那么需要将两边都修改为broadcast接口。
实例二、一端Unnumbered另一端Numbered
配置如下表:
ROUTER1#show interface serial 1
Serial1 is up, line protocol is up
Hardware is cxBus Serial
Interface is unnumbered. Using address of Loopback0 (10.1.2.1)
ROUTER2#show interface serial 1/1
Serial1/1 is up, line protocol is up
Hardware is cxBus Serial
Internet address is 10.1.1.2/24
上面的输出显示出ROUTER1的Serial 1接口是个unnumbered 接口,使用Loopback0的地址,而ROUTER2的Serial 1/1则配置有IP地址。
ROUTER1#show ip ospf interface serial 1
Serial1 is up, line protocol is up
Internet Address 0.0.0.0/24, Area 0
Process ID 20, Router ID 10.1.2.1, Network Type POINT_TO_POINT, Cost: 64
Transmit Delay is 1 sec, State POINT_TO_POINT,
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:02
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 10.1.1.2
Suppress hello for 0 neighbor(s)
ROUTER2#show ip ospf interface serial 1/1
Serial1/1 is up, line protocol is up
Internet Address 10.1.1.2/24, Area 0
Process ID 20, Router ID 10.1.1.2, Network Type POINT_TO_POINT, Cost: 64
Transmit Delay is 1 sec, State POINT_TO_POINT,
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:02
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 10.1.2.1
Suppress hello for 0 neighbor(s)
从上面可以看出,两边的网络类型都是点对点的,出现问题的原因是一边是unnumbered 而另一边则配置有IP地址,这就造成了OSPF数据库中的不一致。
ROUTER1#show ip ospf database router 10.1.1.2
Adv Router is not-reachable
LS age: 418
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 10.1.1.2
Advertising Router: 10.1.1.2
LS Seq Number: 80000002
Checksum: 0xFA63
Length: 60
Number of Links: 3
Link connected to: another Router (point-to-point)
(Link ID) Neighboring Router ID: 10.1.2.1
(Link Data) Router Interface address: 10.1.1.2
Number of TOS metrics: 0
TOS 0 Metrics: 64
ROUTER2#show ip ospf database router 10.1.2.1
Adv Router is not-reachable
LS age: 357
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 10.1.2.1
Advertising Router: 10.1.2.1
LS Seq Number: 8000000A
Checksum: 0xD4AA
Length: 48
Number of Links: 2
Link connected to: another Router (point-to-point)
(Link ID) Neighboring Router ID: 10.1.1.2
(Link Data) Router Interface address: 0.0.0.4
Number of TOS metrics: 0
TOS 0 Metrics: 64
可以看见ROUTER1为这个点到点链路产生了一个包括它的接口地址信息的LSA,而Router2同样产生了一个包括IfIndex值的LSA,这就在链路状态数据库中产生了不一致,也就意味着路由信息不会在路由表中出现。从以下的命令可以看到:
ROUTER2#show ip route
10.1.0.0/16 is variably subnetted, 3 subnets, 2 masks
C 10.1.1.0/24 is directly connected, Serial1/1
C 10.1.3.1/32 is directly connected, Loopback0
解决办法:
要解决这个问题,可以将两边路由器都楝配为unnumbered的,或者为两连路由器的接口都配置上IP地址。在这个例子中我们把Router1的serial1口配置上IP地址。
ROUTER1#configure terminal
ROUTER1(config)#interface serial 1
ROUTER1(config-if)#no ip unnumbered loopback 0
ROUTER1(config-if)#ip address 10.1.1.1 255.255.255.0
ROUTER1)#show ip ospf interface serial 1
Serial1 is up, line protocol is up
Internet Address 10.1.1.1/24, Area 0
Process ID 20, Router ID 10.1.2.1, Network Type POINT_TO_POINT, Cost: 64
Transmit Delay is 1 sec, State POINT_TO_POINT,
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:02
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 10.1.1.2
Suppress hello for 0 neighbor(s)
ROUTER2#show ip route
10.1.0.0/16 is variably subnetted, 3 subnets, 2 masks
C 10.1.1.0/24 is directly connected, Serial1/1
O 10.1.2.1/32 [110/65] via 10.1.1.1, 00:03:08, Serial1/1
C 10.1.3.1/32 is directly connected, Loopback0
至此,问题解决。