RIPng原理与实验

概述:

RIPng是一种较为简单的内部网关协议,是RIP在IPv6网络中的应用。RIPng主要用于规模较小的网络中,比如校园网以及结构较简单的地区性网络。由于RIPng的实现较为简单,在配置和维护管理方面也远比OSPFv3和IS-IS for IPv6容易,因此在实际组网中仍有广泛的应用。

由于RIPng没有安全认证机制,存在安全隐患。建议选择OSPFv3、IS-IS(IPv6)或BGP4+代替。

RIPng与RIP的差异:

为了实现在IPv6网络中应用,RIPng对原有的RIP协议进行了修改:
• RIPng使用UDP的521端口(RIP使用520端口)发送和接收路由信息。
• RIPng的目的地址使用128比特的前缀长度(掩码长度)。
• RIPng使用128比特的IPv6地址作为下一跳地址。
• RIPng使用链路本地地址FE80::/10作为源地址发送RIPng路由信息更新报文。(路由协议都是通过链路本地地址作为源地址更新报文,不需要配置全局单播地址)
• RIPng使用组播方式周期性地发送路由信息,并使用FF02::9作为链路本地范围内的路由器组播地址。
• RIPng报文由头部(Header)和多个路由表项RTEs(Route Table Entry)组成。在同一个RIPng报文中,RTE的最大数目根据接口的MTU值来确定。

其他部分基本保存不变:
• RIPng使用和RIP一样的报文类型,包含request和response。
• RIPng使用和RIP一样的计时器。
• RIPng和RIP一样有水平分割和毒性反转机制。
• RIPng和PIP一样有filter-policy、metricin及metricout、import-route等路由控制命令。
• RIGng使用和RIP一样的算法及防环方法。

报文格式:

Requst报文:
在这里插入图片描述

抓包报文中的数据链路层,源MAC地址为自己的地址,目的MAC地址为RIPng对应组播MAC地址。IPv6的报头是自己的链路本地地址,目的地址是RIPng的对应永久组播地址(ff02::9)。

RIPng是应用层协议,其封装在UDP报文中,端口号为521,里面的信息command为1,表示request报文,其中的信息为一个metric值为16的默认路由(0不可用)表示向对方请求对方的所有ripng路由。

Response报文:
在这里插入图片描述

RIPng报文里面的信息command为2,表示reponse报文,reponse报文包含相应的路由条目,例如其中的信息2001::/64,med值为1。

具体格式:
在这里插入图片描述
RIPng报文各字段解释如下表:
在这里插入图片描述
RIPng有两类RTE,分别如下:

  1. 下一跳RTE:位于一组具有相同下一跳的“IPv6前缀RTE”的最前面,它定义了下一跳的IPv6地址。其目的和RIPv2中下一跳字段一样,可使路由下一跳不同于通告路由器。
    在这里插入图片描述
  2. IPv6前缀RTE:位于某个“下一跳RTE”的后面,同一个“下一跳RTE”的后面可以有多个不同的“IPv6前缀RTE”。它描述了RIPng路由表中的目的IPv6地址及开销。如果IPv6前缀RTE前方没有下一跳RTE字段,表示下一跳就是报文的源地址。
    在这里插入图片描述

这样设计的好处:节约报文开销。主要是因为如下两个方面:

  1. 同一个下一跳对应了多个IPv6前缀,不用每一个路由条目中都单独写出来;
  2. 如果IPv6前缀RTE前方没有下一跳RTE字段,表示下一跳就是报文的源地址,同样不用再路由条目中单独添加下一跳字段。

相关配置命令:华为设备

基本配置:

  1. 执行命令ripng [ process-id ] [ vpn-instance vpn-instance-name ],启动RIPng进程,进入RIPng视图。
  2. 执行命令interface interface-type interface-number,进入接口视图。
  3. 执行命令ripng process-id enable,在指定接口下使能RIPng。

配置协议优先级:

  1. 执行命令ripng [ process-id ] [ vpn-instance vpn-instance-name ],进入RIPng视图。
  2. 执行命令preference { preference | route-policy route-policy-name } *,设置RIPng优先级。 缺省情况下,RIPng路由优先级的缺省值是100。

配置接口附加度量值:

  1. 执行命令interface interface-type interface-number,进入接口视图。
  2. 执行命令ripng metricin value,设置接口在接收路由时增加的度量值。缺省情况下,RIPng接口接收路由时不附加度量值。执行命令ripng metricout { value | { acl6-number | acl6-name acl6-name | ipv6-prefix ipv6-prefix-name } value1 },设置接口在发布路由时增加的度量值。缺省情况下,接口发送RIPng路由增加的度量值为1。

配置水平分割和路由反转:

  1. 执行命令interface interface-type interface-number,进入接口视图。
  2. 执行命令ripng split-horizon,启动水平分割。
  3. 执行命令ripng poison-reverse,启动毒性反转。
    除了NBMA网络,在其他网络中缺省使能水平分割功能。
    同时配置水平分割和毒性反转,只有毒性反转生效。

设置路由聚合:

  1. 执行命令interface interface-type interface-number,进入接口视图。
  2. 执行命令ripng summary-address ipv6-address prefix-length [ avoid-feedback ],配置RIPng路由聚合。 缺省情况下,没有配置RIPng路由器发布聚合的IPv6地址。

配置RIPng发布缺省路由:

  1. 执行命令interface interface-type interface-number,进入接口视图。
  2. 执行命令ripng default-route { only | originate } [ cost cost | tag tag ]*,配置RIPng发布缺省路由。 缺省情况下,RIPng路由域中没有缺省路由。请根据组网的实际情况配置发布缺省路由。
    a) only:只发布IPv6缺省路由(::/0),抑制其它路由的发布。如果本设备处于网络边缘,希望隐藏本地网络细节,使其他网络的设备只通过本设备访问本地网络,可以配置该参数。
    b) originate:发布IPv6缺省路由(::/0),但不影响其它路由的发布。如果本设备处于网络边缘,希望隐藏本地网络部分细节,使其他网络的设备在访问本地网络某些设备时使用缺省路由时,可以配置该参数。

实验:

在这里插入图片描述
首先在R1和R2每个接口上配置3个全球单播地址,R3上配置6个全球单播地址,其中2018网段的地址用来汇总测试,并且各个接口都开启RIPng。

步骤一:做路由汇总

在R1上查看RIPng路由:
在这里插入图片描述
可以查看到,Ripng的路由条目的下一跳都是对方链路本地地址,优先级为100。

然后将2018:1:: /64, 2018:2:: /64,2018:3:: /64的条目进行汇总,可以手工汇总成2018:: /16的条目,所以我们在R3上进行相应的配置:
interface GigabitEthernet0/0/0
ripng summary-address 2018:: 16

最后R1上查看对应的路由:汇总成功

步骤二:默认路由下放

在R2的g0/0/0接口上配置下放默认路由,并且模式为only,表示不会发送其他路由了: [R2-GigabitEthernet0/0/0]ripng default-route only

在R1上检测结果是否成功:可以看到只有一条默认路由了,其他路由都消失了,说明实验成功。
在这里插入图片描述
参考资料:华为HCIE学习指南、华为hedex文档

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

格洛米爱学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值