华为设备OSPF路由的配置

实验中有很多个人的理解,因为基础较差,难免会有一些错误的地方,如果您有建议或理解,欢迎在文章下方留言😁

文章较长,下方浮动栏有文章目录按钮哟😃

OSPF

Open Shortest Path First翻译过来是开放式最短路径优先

华为设备中OSPF的优先级是 10 仅低于直连路由

OSPF单区域配置

实验设备

HUAWEI AR2220 PC

实验拓扑&规划

我并没有使用实验指导中提供的IP规划

实验目的

通过配置单个OSPF区域的配置,使PC1、PC2、PC2所在网络互通

实验过程

  1. 为各接口以及PC配置IP,并确保每一对接口之间连通。

  2. 为路由器配置OSPF

1
[R1]ospf 1     //1为进程号

进入骨干区域

1
[R1-ospf-1]area 0

接下来就可以来指定运行OSPF协议的接口和接口所属的区域

1
2
3
[R1-ospf-1-area-0.0.0.0]network 172.10.1.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 10.0.0.0 0.0.0.3
[R1-ospf-1-area-0.0.0.0]network 10.0.0.4 0.0.0.3

Q:这里的命令我不太理解
猜测后面的应该为255减去原来的掩码位(数通基础不好)

  1. 检查通告情况,命令:display ospf interface
1
2
3
4
5
6
7
8
  OSPF Process 1 with Router ID 172.10.1.254
Interfaces

Area: 0.0.0.0 (MPLS TE not enabled)
IP Address Type tate Cost Pri DR BDR
172.10.1.254 Broadcast DR 1 1 172.10.1.254 0.0.0.0
10.0.0.2 Broadcast DR 1 1 10.0.0.2 0.0.0.0
10.0.0.6 Broadcast DR 1 1 10.0.0.6 0.0.0.0

这里可以看到area域为0.0.0.0,RoutID为172.10.1.254 ,另外可以看待通告出去三个接口的类型为广播,接口状态为DR,即都是所在网络中的指定路由器。
拓展:DR :一个广播性、多接入网络中的指定路由器,个人理解为一个网络中的“管事的”
Q:为什么会选这个ip做为RoutID?

  1. 配置R2 R3

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    [R2]ospf 1
    [R2-ospf-1]area 0
    [R2-ospf-1-area-0.0.0.0]network 10.0.0.1 0.0.0.3
    [R2-ospf-1-area-0.0.0.0]network 10.0.0.9 0.0.0.3
    [R2-ospf-1-area-0.0.0.0]network 172.10.2.254 0.0.0.255

    [R3]ospf 1
    [R3-ospf-1]area 0
    [R3-ospf-1-area-0.0.0.0]network 10.0.0.5 0.0.0.3
    [R3-ospf-1-area-0.0.0.0]network 10.0.0.10 0.0.0.3
    [R3-ospf-1-area-0.0.0.0]network 172.10.3.1 0.0.0.255

这里我配置完以后发现,命令敲错了,network 后面的直接输了接口地址,但是我去查通告情况,看起来是正常的,我觉得,后面的那个字段和掩码有关,掩码是用来定义网络的,所以说我输入的32位的地址被定义为了当前ip所在的网络,暂且不去管他。

  1. 检查OSPF邻居display ospf peer
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
OSPF Process 1 with Router ID 172.10.1.254
Neighbors

Area 0.0.0.0 interface 10.0.0.2(GigabitEthernet0/0/0)'s neighbors
Router ID: 172.10.2.254 Address: 10.0.0.1
State: Full Mode:Nbr is Master Priority: 1
DR: 10.0.0.2 BDR: 10.0.0.1 MTU: 0
Dead timer due in 39 sec
Retrans timer interval: 5
Neighbor is up for 00:35:24
Authentication Sequence: [ 0 ]

Neighbors

Area 0.0.0.0 interface 10.0.0.6(GigabitEthernet0/0/2)'s neighbors
Router ID: 10.0.0.10 Address: 10.0.0.5
State: Full Mode:Nbr is Slave Priority: 1
DR: 10.0.0.6 BDR: 10.0.0.5 MTU: 0
Dead timer due in 29 sec
Retrans timer interval: 5
Neighbor is up for 00:28:32
Authentication Sequence: [ 0 ]

这里看到了两个OSPF邻居RoutID分别为:172.10.1.254,10.0.0.10(这个RoutID用了路由之间的接口ID)

猜测:RoutID的原则是不重复,所以说是不是随便指定一个ip做为RoutID
实验:我新开了一台路由器去尝试,发现 RoutID的选择是根据第一个配置的接口ip进行选择的。我回头去看R3的数据,我第一个配置的接口Ip的确是1.0.0.10/30

  • 现在再去查通告情况,看一下前面看不懂的DR
1
2
3
4
5
6
7
8
 OSPF Process 1 with Router ID 172.10.1.254
Interfaces

Area: 0.0.0.0 (MPLS TE not enabled)
IP Address Type State Cost Pri DR BDR
172.10.1.254 Broadcast DR 1 1 172.10.1.254 0.0.0.0
10.0.0.2 Broadcast DR 1 1 10.0.0.2 10.0.0.1
10.0.0.6 Broadcast DR 1 1 10.0.0.6 10.0.0.5

DR是指定路由器,BDR是备份指定路由器,既然前面说到了DR是管事的那BDR就是副管事的,当管事的不在或者做错的时候,副管事的就出来接手,这两个管事的又是由大家选出来的,这里就涉及到OSPF的选举机制了,由于理论部分还没有学到这里,暂时放一下。

现在从表中看出,172.1.1.254是自己所在网络的DR,他的BDR是一个缺省状态,另外两个网络的BDR都是自己网络中存在于OSPF域中的地址

  1. 再看看OSPF的路由表
Public routing table : OSPF
     Destinations : 3        Routes : 4        

OSPF routing table status : <Active>
     Destinations : 3        Routes : 4

Destination/Mask Proto Pre Cost Flags NextHop    Interface

   10.0.0.8/30   OSPF  10   2     D   10.0.0.1 GigabitEthernet 0/0/0
                 OSPF  10   2     D   10.0.0.5 GigabitEthernet 0/0/2
 172.10.2.0/24   OSPF  10   2     D   10.0.0.1 GigabitEthernet 0/0/0
 172.10.3.0/24   OSPF  10   2     D   10.0.0.5 GigabitEthernet 0/0/2

OSPF routing table status : <Inactive>
     Destinations : 0        Routes : 0

实验验证

  • PC1ping PC2
PC>ping 172.10.2.1

Ping 172.10.2.1: 32 data bytes, Press Ctrl_C to break
Request timeout!
From 172.10.2.1: bytes=32 seq=2 ttl=126 time=16 ms
From 172.10.2.1: bytes=32 seq=3 ttl=126 time=15 ms
From 172.10.2.1: bytes=32 seq=4 ttl=126 time=16 ms
From 172.10.2.1: bytes=32 seq=5 ttl=126 time=16 ms

--- 172.10.2.1 ping statistics ---
  5 packet(s) transmitted
  4 packet(s) received
  20.00% packet loss
  round-trip min/avg/max = 0/15/16 ms

单区域的实验结束

OSPF多区域配置

在网络规模很大的时候,就要分为多个自治域去管理,否则每个路由上的链路状态数据库将会非常的巨大,这就考虑到了路由器的硬件因素,打个简单的比方,大家都知道π=3.141592653…但是这个值不需要我们每次使用的时候都拿去算,因为已经有人算好了,拿来用就好了,多区域就是不同as域的计算、选举,都是独立的,由边界路由提供区域间的联系。

关于链路数据库大小的概念,这里拿一台来自俄勒冈大学全球BGP路由表浏览项目的路由器打个比方(好像关系不大🤔)
这是一台思科的设备,使用的BGP路由

他的路由表是一个很庞大的数量

使用的内存也达到了8.5G左右

而我们实验中用到的AR2220的内存仅有1G

好像ospf多域解决的是计算等问题,而且ospf和bgp的机制也有很大不同😓,上面这部分就当个拓展,另外在百度的时候发现了一段有意思的话:

OSPF:“身如路由器,心似转发表,报文何其多,日夜勤查找。”
BGP:“路由本非器,转发何需表?报文虽然多,自有他人找。”

先收藏起来

言归正传

实验拓扑&规划

基于上一部分是实验进行改动

其中R1 R2 R3 R4 在区域 0 中,R1 R2 R5在区域 1 中,R3 R4 R6 在区域 2 中

实验目的

R1 R2 R3 R4 为核心区域,在同一个as域中,其中R1 R2 与 R5 同在区域 1 中,R3 R4 与 R5 同在区域 2 中
从本质上来讲,可以理解为“分布式计算”,区域1计算出a=1,区域2计算出b=2,区域3计算出c=3,甲在区域1和2中,乙在区域2和3中,甲和乙互相沟通后,大家都知道a,b,c的值了。

实验过程

  1. 配置各接口IP

  2. 配置骨干区域,将R1 R2 R3 R4 配入area 0 中,并互相通告

  1. 配置区域A 即R1 R2 R5 配入 area 1 中,其中R1 R2只通告与R5相连的接口

  1. 配置区域B 即R3 R4 R6 配入 area 2 中,其中R3 R4只通告与R6相连的接口

邻区没有问题

  • 查一下OSPF链路状态数据库
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[Huawei]display ospf lsdb

OSPF Process 1 with Router ID 10.0.0.18
Link State Database
Area: 0.0.0.2
Type LinkState ID AdvRouter Age Len Sequence Metric
Router 10.0.0.14 10.0.0.14 411 36 80000005 1
Router 172.10.3.254 172.10.3.254 421 36 80000005 1
Router 10.0.0.18 10.0.0.18 409 60 80000008 1
Network 10.0.0.17 10.0.0.14 411 32 80000002 0
Network 10.0.0.22 172.10.3.254 421 32 80000002 0
Sum-Net 172.10.3.0 172.10.3.254 615 28 80000001 1
Sum-Net 172.10.3.0 10.0.0.14 560 28 80000001 2
Sum-Net 172.10.2.0 172.10.3.254 615 28 80000001 2
Sum-Net 172.10.2.0 10.0.0.14 560 28 80000001 3
Sum-Net 172.10.1.0 172.10.3.254 615 28 80000001 3
Sum-Net 172.10.1.0 10.0.0.14 560 28 80000001 3
Sum-Net 10.0.0.12 172.10.3.254 615 28 80000001 2
Sum-Net 10.0.0.12 10.0.0.14 560 28 80000001 1
Sum-Net 10.0.0.8 172.10.3.254 615 28 80000001 1
Sum-Net 10.0.0.8 10.0.0.14 560 28 80000001 2
Sum-Net 10.0.0.4 172.10.3.254 615 28 80000001 1
Sum-Net 10.0.0.4 10.0.0.14 560 28 80000001 1
Sum-Net 10.0.0.0 172.10.3.254 615 28 80000001 2
Sum-Net 10.0.0.0 10.0.0.14 560 28 80000001 2
Sum-Net 10.0.0.28 172.10.3.254 615 28 80000001 2
Sum-Net 10.0.0.28 10.0.0.14 560 28 80000001 3
Sum-Net 10.0.0.24 172.10.3.254 615 28 80000001 3
Sum-Net 10.0.0.24 10.0.0.14 560 28 80000001 2

除了我们通告的路由之外,其他的路由都是Sum-Net类型的
我去搜Sum-Net是什么,并没有搜到,但是发现启示录中有一条Sum-Net LSA会引起路由计算,引发OSPF路由震荡

实验验证

PC1 ping PC4

PC>ping 172.10.4.1

Ping 172.10.4.1: 32 data bytes, Press Ctrl_C to break
From 172.10.1.1: Destination host unreachable

失败

  • 排障

    先用PC1与PC4 ping各自的网关 –成功
    查看R5 R6路由表 –有对应条目
    检查电脑配置 –未配置网关

PC>ping 172.10.4.1

Ping 172.10.4.1: 32 data bytes, Press Ctrl_C to break
Request timeout!
From 172.10.4.1: bytes=32 seq=2 ttl=124 time=31 ms
From 172.10.4.1: bytes=32 seq=3 ttl=124 time=31 ms
From 172.10.4.1: bytes=32 seq=4 ttl=124 time=31 ms
From 172.10.4.1: bytes=32 seq=5 ttl=124 time=32 ms

--- 172.10.4.1 ping statistics ---
  5 packet(s) transmitted
  4 packet(s) received
  20.00% packet loss
  round-trip min/avg/max = 0/31/32 ms

实验完成

OSPF的认证

“对暗号” 我理解为防止非法路由加入网络中

实验拓扑/规划

R1的loopback的地址是1.1.1.1 ,R2的是2.2.2.2,以此类推

实验目的

在区域0和1配上区域认证,0开启密文认证,1开启明文认证

实验过程

OSPF区域认证

  1. 配置各接口IP,并配置loopback地址

  2. 将R2 R3 R5 R6 配入area 0 中,并通告网络,将R1 R2 R4 配入area 1 中,同样通告网络

    需要注意的是,每台设备都需要把loopback地址通告出去

  3. 配置区域

    可以看到R2有了正确的邻居关系

  4. 给区域1配置区域认证

    R1

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    [Huawei]ospf 1
    [Huawei-ospf-1]ar
    [Huawei-ospf-1]area 1
    [Huawei-ospf-1-area-0.0.0.1]au
    [Huawei-ospf-1-area-0.0.0.1]authentication-mode s
    [Huawei-ospf-1-area-0.0.0.1]authentication-mode simple p
    [Huawei-ospf-1-area-0.0.0.1]authentication-mode simple plain huawei1
    [Huawei-ospf-1-area-0.0.0.1]disp
    [Huawei-ospf-1-area-0.0.0.1]display th
    [V200R003C00]
    #
    area 0.0.0.1
    authentication-mode simple plain huawei1
    network 1.1.1.1 0.0.0.0
    network 10.0.0.0 0.0.0.3
    #
    return

    这时候可以看到口令为huawei1

重新配置一遍

发现个有趣的东西,按上键的时候,原来输入的口令会变成******

现在口令变为了密文显示

1
2
3
4
5
6
7
8
9
10
[Huawei-ospf-1-area-0.0.0.1]authentication-mode simple huawei1
[Huawei-ospf-1-area-0.0.0.1]display th
[V200R003C00]
#
area 0.0.0.1
authentication-mode simple cipher %$%$6iLJ4J=YgV@LW7RZhQgXRp_4%$%$
network 1.1.1.1 0.0.0.0
network 10.0.0.0 0.0.0.3
#
return

R2也没有了R1的邻居关系

1
2
3
4
5
6
7
8
9
<R2>display ospf 1 peer brief 

OSPF Process 1 with Router ID 10.0.0.2
Peer Statistic Information
----------------------------------------------------------------------------
Area Id Interface Neighbor id State
0.0.0.0 GigabitEthernet0/0/1 10.0.0.6 Full
0.0.0.1 GigabitEthernet0/0/2 4.4.4.4 Full
----------------------------------------------------------------------------
  1. 接下来配R2 R4的认证
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[R2]ospf 1
[R2-ospf-1]area 1
[R2-ospf-1-area-0.0.0.1]au
[R2-ospf-1-area-0.0.0.1]authentication-mode s
[R2-ospf-1-area-0.0.0.1]authentication-mode simple p
[R2-ospf-1-area-0.0.0.1]authentication-mode simple plain huawei1
[R2-ospf-1-area-0.0.0.1]authentication-mode simple huawei1
[R2-ospf-1-area-0.0.0.1]display ospf 1 peer brief

OSPF Process 1 with Router ID 10.0.0.2
Peer Statistic Information
----------------------------------------------------------------------------
Area Id Interface Neighbor id State
0.0.0.0 GigabitEthernet0/0/1 10.0.0.6 Full
0.0.0.1 GigabitEthernet0/0/0 10.0.0.1 Full
----------------------------------------------------------------------------

可以看到现在R2与R1的邻居关系恢复了,没有了R4的邻居,接着去配R4

1
2
3
4
5
6
7
8
9
[R4-ospf-1-area-0.0.0.1]display th
[V200R003C00]
#
area 0.0.0.1
authentication-mode simple cipher %$%$tuiTSpt'-/`8ey(B}PlFR&~y%$%$
network 4.4.4.4 0.0.0.0
network 10.0.0.16 0.0.0.3
#
return

R2的邻居关系也正常了

1
2
3
4
5
6
7
8
9
10
<R2>display ospf 1 peer brief 

OSPF Process 1 with Router ID 10.0.0.2
Peer Statistic Information
----------------------------------------------------------------------------
Area Id Interface Neighbor id State
0.0.0.0 GigabitEthernet0/0/1 10.0.0.6 Full
0.0.0.1 GigabitEthernet0/0/2 4.4.4.4 Full
0.0.0.1 GigabitEthernet0/0/0 10.0.0.1 Full
----------------------------------------------------------------------------

OSPF链路验证

  1. 在R2与R4之间部署MD5的链路认证

    1
    [R2-GigabitEthernet0/0/2]ospf authentication-mode md5 1 huawei5

    去看邻居信息

    1
    2
    3
    4
    5
    6
    7
    8
    9
    <R2>display ospf 1 peer brief 

    OSPF Process 1 with Router ID 10.0.0.2
    Peer Statistic Information
    ----------------------------------------------------------------------------
    Area Id Interface Neighbor id State
    0.0.0.0 GigabitEthernet0/0/1 10.0.0.6 Full
    0.0.0.1 GigabitEthernet0/0/0 10.0.0.1 Full
    ----------------------------------------------------------------------------

    现在与R4的邻居没有了,因为R2与R4连接的接口被配上了链路认证

  1. 给R4也配上链路认证

    1
    2
    3
    4
    5
    6
    7
    8
    	 OSPF Process 1 with Router ID 10.0.0.2
    Peer Statistic Information
    ----------------------------------------------------------------------------
    Area Id Interface Neighbor id State
    0.0.0.0 GigabitEthernet0/0/1 10.0.0.6 Full
    0.0.0.1 GigabitEthernet0/0/2 4.4.4.4 Full
    0.0.0.1 GigabitEthernet0/0/0 10.0.0.1 Full
    ----------------------------------------------------------------------------

    R2的与R4的邻居重新建立

OSPF被动接口配置

让一个接口从“参与者”变为“使用者”

拓扑&规划

实验过程
  1. 配置接口ip,并且都放入area 0 中

  2. 对PC上的接口进行抓包,可以看到有很多OSPF的hello packet报文,报文中包含了本area中的信息

    所以需要配置被动接口,禁止连接终端的接口接收发送OSPF报文

  3. 将与终端相连的接口配置为被动接口

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    [R4]ospf 1
    [R4-ospf-1]sil
    [R4-ospf-1]silent-interface g 0/0/2
    [R4-ospf-1]display th
    [V200R003C00]
    #
    ospf 1
    silent-interface GigabitEthernet0/0/2
    area 0.0.0.0
    network 10.0.0.16 0.0.0.7
    network 10.1.1.0 0.0.0.255
    #
    return
  4. 重新去抓包,就不会再发现有来自OSPF的报文了

实验结论

既然被动接口会使当前接口不再发送和接收OSPF的报文,所以不可以配置在路由之间的接口上,否则会使当前接口退出OSPF

OSPF的Router-ID

其实关于Router-ID,我之前就做了简单的验证,当时得出的结论是:

猜测:RoutID的原则是不重复,所以说是不是随便指定一个ip做为RoutID
实验:我新开了一台路由器去尝试,发现 RoutID的选择是根据第一个配置的接口ip进行选择的。我回头去看R3的数据,我第一个配置的接口Ip的确是1.0.0.10/30

完善下Router ID的选举规则

在没有手动配置Router-ID的情况下,第一个配置的接口IP,会被指定为Router-ID,如果这个IP被删除,如果当前有loopback地址,则Router-ID会被指定为loopback地址,如果没有,则会被指定为第二个配置的Router-ID,以此类推。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[Huawei]int	
[Huawei]interface g 0/0/0
[Huawei-GigabitEthernet0/0/0]ip add 1.1.1.1 24
[Huawei-GigabitEthernet0/0/0]interface g 0/0/1
[Huawei-GigabitEthernet0/0/1]ip add 2.2.2.2 24
[Huawei-GigabitEthernet0/0/1]disp
[Huawei-GigabitEthernet0/0/1]display r
[Huawei-GigabitEthernet0/0/1]display ro
[Huawei-GigabitEthernet0/0/1]display route id
RouterID:1.1.1.1 //此时的RouterID为第一个配置的接口IP
[Huawei-GigabitEthernet0/0/1]interface g 0/0/0
[Huawei-GigabitEthernet0/0/0]undo ip add
[Huawei-GigabitEthernet0/0/0]display route id
RouterID:2.2.2.2 //删除第一个配置的接口IP后,被指定为第二个接口IP
[Huawei-GigabitEthernet0/0/0]ip add 1.1.1.1 24
[Huawei-GigabitEthernet0/0/0]interface l 0
[Huawei-LoopBack0]ip add 6.6.6.6 32
[Huawei-LoopBack0]interface g 0/0/1
[Huawei-GigabitEthernet0/0/1]undo ip ad
[Huawei-GigabitEthernet0/0/1]display route id
RouterID:6.6.6.6 //这时就会被指定为loopback地址
  • 如果RouterID重复,会发生什么?

    简单拓扑

配置相同的RouterID

修改完RouterID后,会有这样的提醒:路由器ID已修改,请手动重置相关协议更新路由器ID

现在去查看邻居

1
2
3
4
5
6
7
8
9
10
11
 OSPF Process 1 with Router ID 1.1.1.1
Neighbors

Area 0.0.0.0 interface 1.1.1.1(GigabitEthernet0/0/0)'s neighbors
Router ID: 1.1.1.2 Address: 1.1.1.2
State: Full Mode:Nbr is Master Priority: 1
DR: 1.1.1.1 BDR: 1.1.1.2 MTU: 0
Dead timer due in 40 sec
Retrans timer interval: 5
Neighbor is up for 00:08:51
Authentication Sequence: [ 0 ]

Router ID还是原来的,结合之前的提醒,需要重置一下协议:reset ospf process(这个命令只可以在用户界面使用)

再去看邻居

1
2
3
<Huawei>display ospf peer  

OSPF Process 1 with Router ID 6.6.6.6

没有邻居了,那么路由自然也不会通告

再看一下不同区域的相同RouterID

两侧的路由拥有相同的RouterID

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
[Huawei]display ospf lsdb
OSPF Process 1 with Router ID 6.6.6.6
Link State Database
Area: 0.0.0.0
Type LinkState ID AdvRouter Age Len Sequence Metric
Router 6.6.6.7 6.6.6.7 425 36 80000004 1
Router 6.6.6.6 6.6.6.6 592 36 80000007 1
Router 1.1.1.2 1.1.1.2 788 36 80000008 1
Router 1.1.1.1 1.1.1.1 1512 36 80000005 1
Network 1.1.1.1 6.6.6.6 592 32 80000002 0
Sum-Net 1.1.2.0 6.6.6.7 371 28 80000001 1


[Huawei]ping 1.1.2.2
PING 1.1.2.2: 56 data bytes, press CTRL_C to break
Reply from 1.1.2.2: bytes=56 Sequence=1 ttl=254 time=30 ms
Reply from 1.1.2.2: bytes=56 Sequence=2 ttl=254 time=20 ms
Reply from 1.1.2.2: bytes=56 Sequence=3 ttl=254 time=30 ms
Reply from 1.1.2.2: bytes=56 Sequence=4 ttl=254 time=30 ms
Reply from 1.1.2.2: bytes=56 Sequence=5 ttl=254 time=30 ms

--- 1.1.2.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 20/28/30 ms

可以看出来,并没有对网络造成影响。

所以,RouterID在同区域内重叠是会影响ospf状态的,不同区域则不会

DR与BDR

1
2
3
4
5
6
7
8
9
10
<R1>display ospf peer b

OSPF Process 1 with Router ID 1.1.1.1
Peer Statistic Information
----------------------------------------------------------------------------
Area Id Interface Neighbor id State
0.0.0.0 GigabitEthernet0/0/0 2.2.2.2 2-Way
0.0.0.0 GigabitEthernet0/0/0 3.3.3.3 Full
0.0.0.0 GigabitEthernet0/0/0 4.4.4.4 Full
----------------------------------------------------------------------------
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<R1>display ospf peer

OSPF Process 1 with Router ID 1.1.1.1
Neighbors

Area 0.0.0.0 interface 192.168.1.1(GigabitEthernet0/0/0)'s neighbors
Router ID: 2.2.2.2 Address: 192.168.1.2
State: 2-Way Mode:Nbr is Master Priority: 1
DR: 192.168.1.3 BDR: 192.168.1.4 MTU: 0
Dead timer due in 37 sec
Retrans timer interval: 0
Neighbor is up for 00:00:00
Authentication Sequence: [ 0 ]

Router ID: 3.3.3.3 Address: 192.168.1.3
State: Full Mode:Nbr is Master Priority: 1
DR: 192.168.1.3 BDR: 192.168.1.4 MTU: 0
Dead timer due in 30 sec
Retrans timer interval: 5
Neighbor is up for 00:02:26
Authentication Sequence: [ 0 ]

Router ID: 4.4.4.4 Address: 192.168.1.4
State: Full Mode:Nbr is Master Priority: 1
DR: 192.168.1.3 BDR: 192.168.1.4 MTU: 0
Dead timer due in 32 sec
Retrans timer interval: 5
Neighbor is up for 00:02:25
Authentication Sequence: [ 0 ]

此时R3为DR,R4为BDR

接着修改OSPF的网络类型为点到多点

1
ospf network-type p2mp

此时可以看到,DR和BDR都是none

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<R1>display ospf peer

OSPF Process 1 with Router ID 1.1.1.1
Neighbors

Area 0.0.0.0 interface 192.168.1.1(GigabitEthernet0/0/0)'s neighbors
Router ID: 2.2.2.2 Address: 192.168.1.2
State: Full Mode:Nbr is Master Priority: 1
DR: None BDR: None MTU: 0
Dead timer due in 100 sec
Retrans timer interval: 5
Neighbor is up for 00:00:43
Authentication Sequence: [ 0 ]

Router ID: 3.3.3.3 Address: 192.168.1.3
State: Full Mode:Nbr is Master Priority: 1
DR: None BDR: None MTU: 0
Dead timer due in 120 sec
Retrans timer interval: 5
Neighbor is up for 00:00:15
Authentication Sequence: [ 0 ]

Router ID: 4.4.4.4 Address: 192.168.1.4
State: Full Mode:Nbr is Master Priority: 1
DR: None BDR: None MTU: 0
Dead timer due in 103 sec
Retrans timer interval: 5
Neighbor is up for 00:00:15
Authentication Sequence: [ 0 ]

所以说OSPF在点到多点的网络下不选举DR、BDR

接下来将网络类型还原

1
ospf network-type broadcast

修改DR优先级,R1:100 R2:50 R4:0 R3:默认

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[R1-GigabitEthernet0/0/0]display ospf peer

OSPF Process 1 with Router ID 1.1.1.1
Neighbors

Area 0.0.0.0 interface 192.168.1.1(GigabitEthernet0/0/0)'s neighbors
Router ID: 2.2.2.2 Address: 192.168.1.2
State: Full Mode:Nbr is Master Priority: 50
DR: 192.168.1.3 BDR: 192.168.1.1 MTU: 0
Dead timer due in 40 sec
Retrans timer interval: 5
Neighbor is up for 00:00:11
Authentication Sequence: [ 0 ]

Router ID: 3.3.3.3 Address: 192.168.1.3
State: Full Mode:Nbr is Master Priority: 1
DR: 192.168.1.3 BDR: 192.168.1.1 MTU: 0
Dead timer due in 35 sec
Retrans timer interval: 5
Neighbor is up for 00:01:49
Authentication Sequence: [ 0 ]

Router ID: 4.4.4.4 Address: 192.168.1.4
State: Full Mode:Nbr is Master Priority: 0
DR: 192.168.1.3 BDR: 192.168.1.1 MTU: 0
Dead timer due in 36 sec
Retrans timer interval: 4
Neighbor is up for 00:00:10
Authentication Sequence: [ 0 ]

此时R3是DR,R1是BDR