IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> OSPF之网络类型 -> 正文阅读

[网络协议]OSPF之网络类型

OSPF网络类型

原理概述:

OSPF协议定义了4种不同的网络类型,分别为广播网络(也称为Broadcast网络)、NBMA(Non-Broadcast Multi-Access)网络、点到点网络(也称为Point-to-Point 网络,或P2P网络)和点到多点网络(也称为Point-to-Multipoint 网络,或P2MP网络)。不同类型的网络上OSPF协议的工作机制会存在一些差别。例如,前两种类型的网络都要DR和BDR的选举,而后两种类型的网络不进行DR和BDR的选举,也不存在DR和BDR。

默认情况下,OSPF协议会根据接口的链路层封装协议去自动设定接口的网络类型,以太网接口的默认网络类型为Broadcast,串行接口如果链路层封装协议是PPP协议(Point-to-Point Protocol)或HDLC(High-level Data Link Control Protocol)协议,则默认网络类型为点到点类型,ATM或帧中继(Frame-Relay)接口的默认网络类型为NBMA。需要强调的是,接口的网络类型是可以根据需要而进行人为修改的,这一特点使得OSPF协议具备了更多的灵活性和更强的适应能力,可以满足复杂网络中的各种不同需求。

实验目的:

理解OSPF不同网络类型的主要差别

掌握OSPF不同网络类型的配置方法

实验拓扑:

?

1:基本配置:

?
R1:

#

interface Serial4/0/0

?link-protocol fr

?fr map ip 10.0.123.2 102 broadcast

?fr map ip 10.0.123.3 103 broadcast

?ip address 10.0.123.1 255.255.255.0

#

interface LoopBack0

?ip address 10.0.1.1 255.255.255.255

R2:

#

interface Serial4/0/0

?link-protocol fr

?fr map ip 10.0.123.1 201 broadcast

?ip address 10.0.123.2 255.255.255.0

#

interface LoopBack0

?ip address 10.0.2.2 255.255.255.255

配置完成后,检测R1与R2之间的连通性



?

2:配置OSPF点到点网络类型

在R1和R2上配置OSPF协议

R1:

[R1]ospf 10

[R1-ospf-10]a 0

[R1-ospf-10-area-0.0.0.0]net

[R1-ospf-10-area-0.0.0.0]network 10.0.123.0 0.0.0.255

[R1-ospf-10-area-0.0.0.0]net

[R1-ospf-10-area-0.0.0.0]network 10.0.1.1 0.0.0.0

R2:

[R2]ospf 10

[R2-ospf-10]a 0

[R2-ospf-10-area-0.0.0.0]net

[R2-ospf-10-area-0.0.0.0]network 10.0.123.0 0.0.0.255

[R2-ospf-10-area-0.0.0.0]net

[R2-ospf-10-area-0.0.0.0]network 10.0.2.2 0.0.0.0

?

配置完成后,查看R1的串行接口Serial4/0/0在OSPF协议中的默认网络类型

?

可以看到,帧中继接口在OSPF协议中的默认网络类型为NBMA,并且需要选择DR和BDR,默认的Hello报文间隔为30s,Dead Timer的是时间是Hello报文间隔的4倍。

由于企业总部目前只需与一个分支机构通信,所以决定在R1和R2上将Serial 1/0/0接口的网络类型修改为点到点类型。

R1:
[R1-Serial4/0/0]ospf network-type p2p

R2:

[R2-Serial4/0/0]ospf network-type p2p

配置完成后,在R1上查看OSPF邻居状态和路由表

?

现在,公司有了一个新增的分支机构,增加的路由器是R3,为了使R3也能加入原来的OSPF网络,可在R1与R3之间再建立一条帧中继PVC,并将其OSPF网络类型配置为点对点类型。


[R1-Serial4/0/0]fr map ip 10.0.123.3 103 br

[R1-Serial4/0/0]fr map ip 10.0.123.3 103 broadcast



[R3-Serial4/0/0]link-protocol fr

[R3-Serial4/0/0]fr interface-type dte

[R3-Serial4/0/0]fr map ip 10.0.123.1 301 broadcast

[R3-Serial4/0/0]ospf network-type p2p

[R3-ospf-10-area-0.0.0.0]dis th

[V200R003C00]

#

?area 0.0.0.0

??network 10.0.3.3 0.0.0.0

??network 10.0.123.0 0.0.0.255

#

配置完成后,在R1上查看OSPF邻居信息:

?

?

观察发现,虽然R1与R2建立起了邻接关系,但R1与R3却不能建立邻接关系。原来,点到点网络的两端只能允许一个专门的接口,现在R1、R2、R3的Serial 1/0/0接口都配置成了点到点网络类型,这就意味着R1的Serial 4/0/0接口既要对应R1到R2这个点到点网络,又要对应R1到R3这个点到点网络,而这种情况是无法实现的。解决这一问题的方法之一是在R1上增加一个物理接口,其中一个接口对应R1到R2这个点到点网络,另一个接口对应R1到R3这个点到点网络;还有一个方法就是在R1的Serial 4/0/0接口下配置两个子接口,两个子接口使用不同网段的IP地址,并分别用来与R2和R3建立点到点网络,其实,除了这些方法之外,采用NBMA网络类型应该更能有效地解决问题。

3:配置OSPF的NBMA及Broadcast网络类型

[R1-Serial4/0/0]ospf network-type ?nbma

[R2-Serial4/0/0]ospf network-type ?nbma

[R3-Serial4/0/0]ospf network-type ?nbma

NBMA类型是帧中继串行接口运行OSPF时的默认网络类型,NB表示广播,其含义是指NBMA接口不支持广播或组播报文;MA表示多路访问,在多路访问的网络中,OSPF是需要进行DR和BDR的选举的。

为了验证NBMA网络特点,可在R1、R2、R3的Serial 4/0/0接口配置帧中继时不添加关键词Broadcast,这样一来,即使OSPF希望通过组播形式发送Hello报文,链路层也无法对组播Hello报文进行封装,从而导致无法建立邻接关系。


[R1-Serial4/0/0]fr map ip 10.0.123.2 102

[R1-Serial4/0/0]fr map ip 10.0.123.2 103



[R2-Serial4/0/0]fr map ip 10.0.123.1 201



[R3-Serial4/0/0]fr map ip 10.0.123.1 301

配置完成后,在R1上查看OSPF邻居关系

?

可以看到,R1与R2、R1与R3都无法建立邻接关系,原因是此时每个接口都无法发送组播OSPF Hello报文。NBMA网络类型不支持通过组播方式自动发现邻居,而需要通过手动配置来指定邻居,并通过单播OSPF Hello报文来建立邻接关系。

在R1、R2、R3上使用peer命令指定OSPF邻居

[R1-ospf-10]peer 10.0.123.2

[R1-ospf-10]peer 10.0.123.3

[R2-ospf-10]peer 10.0.123.1

[R3-ospf-10]peer ?10.0.123.1

配置完成后,查看R1的OSPF邻居信息

?

可以看到,R1与R2、R1与R3现在已经成功建立起了邻接关系

观察R1、R2、R3的路由表

?

?

?

观察发现,R1和R3相互都接收到了对方Loopback 0 的路由,但是R1的路由表中没有去往R2的Loopback 0 的路由,R2的路由表中没有去往R1和R3的Loopback 0 的路由,R3的路由表中没有去往R2的Loopback 0 的路由。

查看R1的OSPF邻居的详细信息

可以看到,R1在Serial 4/0/0接口上存在两个邻居,但是同时也有两个不同的DR。在多路访问的网络中,DR只能有一个,这说明网络存在故障。

在R1上查看S4/0/0接口的OSPF详细信息

?

可以看到,R1认为R3是OSPF网络的DR,自己是BDR,尽管在R1的邻居表中显示R2也是DR,但是在R1的Serial 4/0/0接口的详细信息中显示的DR却是R3,导致的结果是,R1和R3之间路由信息可以正常传递,但R1与R2之间的路由信息传递却出现了问题。

要解决这个问题,就必须要确保DR有且只有一个。对于目前这个具有Hub-Spoke结构的网络,应该保证Hub端R1成为DR的路由器,Spoke端R2和R3成为DRother路由器。

[R1]int s4/0/0

[R1-Serial4/0/0]ospf dr-priority 10



[R2]int s4/0/0

[R2-Serial4/0/0]ospf dr-priority 0



[R3]int s4/0/0

[R3-Serial4/0/0]ospf dr-priority 0

配置完成后,在R1上查看S4/0/0接口的详细信息

?

可以看到,现在R1已经成为DR

查看R1、R2、R3的路由表

?

?

可以看到,现在每台路由器都获得了其他路由器的Loopback 0的路由,R2去在10.0.3.3的下一跳是R3的10.0.123.3,R3去往R2的下一跳时R2的10.0.123.2。

测试R2和R3的Loopback的连通性

?

可以看到,R2与R3的连通性存在问题

在R2上测试去往R3的Loopback 0 接口的下一跳10.0.123.3是否可达

可以看到10.0.123.3是不可达的

在R2上查看是否存在去往10.0.123.3的映射,在R3上查看是否存在去往10.0.123.2的映射

?

可以看到,R2的帧中继中缺少了去往10.0.123.3的映射,R3的帧中继映射表缺少了10.0.123.2的映射。

解决R2与R3之间的互通性问题的另外一种方法

[R2]int s4/0/0

[R2-Serial4/0/0]fr map ip 10.0.123.3 201



[R3]int s4/0/0

[R3-Serial4/0/0]fr map ip 10.0.123.2 301

配置完成后,在R2、R3上查看映射信息

?

?

可以看到,R2有了去往10.0.123.3的映射,R3有了去往10.0.123.2 的映射

?

可以看到,现在R2与R3之间实现了互通,R2与R3之间实现了互通,R2和R3的Loopback 0接口之间可以正常通信了。至此,R1、R2、R3构成了一个典型的OSPF NBMA网络,它不支持通过组播OSPF Hello报文自动发现邻居并建立邻接关系,而需要通过手工指定邻居,同时网络还需要进行DR和BDR的选举。

在配置帧中继映射时,不添加关键词Broadcast,会是什么情况

[R1]int s4/0/0

[R1-Serial4/0/0]ospf network-type ?broadcast

[R1-Serial4/0/0]fr map ip 10.0.123.2 102

[R1-Serial4/0/0]fr map ip 10.0.123.3 103

[R1-ospf-10]un peer 10.0.123.2

[R1-ospf-10]un peer 10.0.123.3



[R2]int s4/0/0

[R2-Serial4/0/0]ospf network-type broadcast

[R2-Serial4/0/0]fr map ip 10.0.123.1 201

[R2-Serial4/0/0]ospf 10

[R2-ospf-10]un peer 10.0.123.1



[R3]int s4/0/0

[R3-Serial4/0/0]ospf network-type broadcast

[R3-Serial4/0/0]fr map ip 10.0.123.1 301

[R3-Serial4/0/0]ospf 10

[R3-ospf-10]un peer 10.0.123.1

配置完成后,查看OSPF邻居关系

可以看到,R1没有建立起任何邻居关系

[R1-Serial4/0/0]fr map ip 10.0.123.2 102 broadcast

[R1-Serial4/0/0]fr map ip 10.0.123.3 103 broadcast



[R2-Serial4/0/0]fr map ip 10.0.123.1 201 broadcast



[R3-Serial4/0/0]fr map ip 10.0.123.1 301 broadcast

配置完成后,查看OSPF邻居信息

?

可以看到,R1被选举成为了DR,而R2和R3的接口因为DR优先级的值已被设置为0,所以没有参加选举

测试R2和R3的Loopback 0 接口之间的连通性

可以看到,R2与R3之间可以互通。

4:配置OSPF的点到多点网络类型

接下来,将现在的网络类型修改配置为点到多点网络

[R1]int s4/0/0

[R1-Serial4/0/0]ospf network-type p2mp

[R1-Serial4/0/0]fr map ip 10.0.123.2 102 broadcast

[R1-Serial4/0/0]fr map ip 10.0.123.3 103 broadcast

[R2]int s4/0/0

[R2-Serial4/0/0]ospf network-type p2mp

[R2-Serial4/0/0]undo ospf dr-priority

[R2-Serial4/0/0]undo fr map ip 10.0.123.3 201

[R2-Serial4/0/0]fr map ip 10.0.123.1 201 broadcast

[R3]int s4/0/0

[R3-Serial4/0/0]ospf network-type p2mp

[R3-Serial4/0/0]undo ospf dr-priority

[R3-Serial4/0/0]undo fr map ip 10.0.123.2 301

[R3-Serial4/0/0]fr map ip 10.0.123.1 301 broadcast

上述配置完成后,在R1上查看OSPF邻居信息和路由表

可以看到,R1自动与R2和R3建立了OSPF邻接关系,不存在DR和BDR,R1的路由表中拥有去往R2和R3的Loopback 0 接口的路由。

在R2和R3上查看OSPF邻居关系和路由表

测试R2和R3的Loopback 0 接口之间的连通性

可以看到,通信正常。至此,R1、R2、R3构成了一个OSPF点到多点网络,最后需要指出的是,与其他OSPF网络类型相比,在Hub-Spoke的网络结构上应用点到多点网络类型是最为合适的,配置工作也最为简便。

备注:如有错误,请谅解!

此文章为本人学习笔记,仅供参考!如有重复!!!请联系本人!

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-03-15 23:04:40  更:2022-03-15 23:05:08 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 6:55:12-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码