IPV6协议之RIPNG

目录

前言:

一、RIPNG与RIP的区别

二、如何配置RIPNG

如何解决RIPNG环路问题呢?

控制RIPNG的选路

1、修改RIPNG默认优先级

2.配置接口附加开销值从而干涉RIPNG的选路

RIPNG拓展配置

1.RIPNG的认证

配置RIPNG进程下的IPsec认证:

配置RIPng接口的IPSec认证

2.手工汇总

3.禁止某些接口发送RIPNG更新报文

4.加快收敛—计时器

5.缺省路由


前言:

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

随着IPv6网络的建设,同样需要动态路由协议为IPv6报文的转发提供准确有效的路由信息。因此,IETF在保留了RIP优点的基础上针对IPv6网络修改形成了RIPng(RIP next generation,下一代RIP协议)。RIPng主要用于在IPv6网络中提供路由功能,是IPv6网络中路由技术的一个重要组成协议。

一、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值来确定。

RIP协议的工作原理,不在这里赘述,而RIPNG保留了RIP协议基本的工作逻辑。

二、如何配置RIPNG

如图,搭建一个简单的IPV6环境,网段规划如图所示:

1.所以节点配置IP地址

2.启动RIPNG服务

RIPNG和RIP一样存在进程的概念,一个进程号代表一种协议,进程号不同代表协议不同,想要构建一 个RIPNG网络,进程号首先得一致。默认情况下不跟进程号的情况下默认为进程1。

3.接口激活RIPNG

RIPNG相较于RIP增加了接口激活RIPNG的步骤,而取消了宣告,当接口激活 RIPNG后,相当于激活了此接口的同时将根据接口配置的网络前缀发布接口所在网段的路由信息,相当于进行了宣告(宣告作用本身就是激活接口,发布路由,RIPNG相当于简化了配置难度。只需要相应的接口激活RIPNG协议即可)注意接口激活也需要选择进程。

display ipv6 routing-table protocol ripng —查看ipv6路由表中,通告RIPNG学习到的路由信息。

其中路由表包含以下参数:截取一条路由信息分析:

Destination:目标网段

PrefixLength :前缀

NextHop :下一跳(值得注意的是这里下一跳并不直接是下一个经过的路由器的入接口配置的IPV6 地址,而是对应接口的本地链路地址,因为IPV6取消了广播的传递数据包方式,所以传统IPV4路由通 过ARP找寻目标MAC地址的方式不在适用,所以在这里使用目标接口本地链路地址的原因是,数据包传递给下一跳接口时通过本地链路组播进行传递,而本地链路组播时根据本地链路地址自动生成,所以在这里下一跳使用目标本地链路地址)

Preference : 优先级,和RIP一致,RIPNG优先级也为100

Cost : 开销计算方式依然等于本地开销值+1

Protocol : 协议RIPNG

RelayNextHop : :: 中继下一跳

TunnelID : 0x0—隧道ID,这里仅作填充

Interface : 出接口

Flags : 标志位

和IPV4类似,IPV6的ping也支持指定源地址,如果不指定默认会递归使用出接口的IPV6地址作为源地址。

RIPNG同样使用response包更新路由信息,方式为周期共享路由表中的路由条目,默认时间30s

RIPNG同样存在环路问题,因为RIPNG依然没有确认和保活机制,所以导致RIPNG同样使用了周期更新和异步更新,这就可能出现路由回传的现象,从而造成环路问题。

如何解决RIPNG环路问题呢?

水平分割:[r1-GigabitEthernet0/0/0]ripng split-horizon 接口启动水平分割

毒性逆转:[r1-GigabitEthernet0/0/0]ripng poison-reverse 接口启动毒性逆转

注意:两种解决思路方式相悖,所以只会按照一种方案执行,默认华为开启水平分割,如果都配置,则按照毒性逆转的规则执行。

控制RIPNG的选路

1、修改RIPNG默认优先级

[r1-ripng-1]preference 80—改变协议优先级,同样RIPNG也支持router-policy,即路由策略,值得注意的是,协议优先级的改变具有本地意义,只干涉自身针对不同路由协议之间的选路。

只改变的R1的RIPNG协议优先级,所以只R1上通过RIPNG学习到的路由优先级改为80

2.配置接口附加开销值从而干涉RIPNG的选路

因为RIPNG工作的方式是共享路由表,所以实际上有两种干涉RIPNG选路的思路

1、[r2-GigabitEthernet0/0/0]ripng metricin ?—接口接收路由时,附加一个开销值,然后加上原本的开销,最后把路由加入本地路由表

此时,在R2路由器的0/0/0接口附加开销5,所以原本1::/64网段的信息只经过一个路由器的传递,原本 cost=1,现在附加接口增加的开销5,所以路由表中1::/64网段cost=6.而从0/0/1接口学习到的3::/64网 段的信息,不受影响。

2. [r2-GigabitEthernet0/0/1]ripng metricout 5—当接口发出路由条目时携带的开销值,注意此时并没有附加,而是发出数据包中携带的cost=5

因为,此时针对的是,自身发给其他的路由信息,所以自身路由表不受影响,并且可以和ACL等多种工具结合使用,达到值干涉某些路由的目的,此时相当于所以从R2路由器0/0/1接口发出的路由条目开销均附加5

RIPNG拓展配置

1.RIPNG的认证

RIPng 自身不提供认证功能,而是通过使用 IPv6 提供的安全机制来保证自身报文的合法性。

随着网络的迅速发展,网络的安全问题日益重要。通过配置RIPng的IPSec认证功能,实现对接收的和发送的RIPng报文进行认证,不能通过认证的报文将会被丢弃,从而提高RIPng网络的安全性。缺省情况下,没有配置IPSec(IP security)认证,为保证系统安全性,建议进行此配置。

配置RIPng的IPSec认证有两种方式:

  • RIPng进程下配置IPSec认证。RIPng进程下使能IPSec认证后,属于该RIPng进程的所有接口都使能 IPSec认证功能。如果RIPng进程下的所有接口都要采用IPSec认证,推荐采用这种方式。
  • RIPng接口下配置IPSec认证。只有某些接口需要配置IPSec认证,推荐采用这种方式。
配置RIPNG进程下的IPsec认证:

操作步骤

  1. 执行命令system-view,进入系统视图。
  2. 执行命令ripng [ process-id ],进入RIPng视图。
  3. 执行命令ipsec sa sa-name,使能RIPng的IPSec认证功能,并指定所采用的安全联盟的名称。
  4. 执行命令commit,提交配置。
配置RIPng接口的IPSec认证

接口视图下配置IPSec(IP security)认证是配置RIPng的IPSec认证的另一种方式。

背景信息

仅部分RIPng接口需要使能IPSec认证,可以配置单独配置接口的IPSec认证。

操作步骤

  1. 执行命令system-view,进入系统视图。
  2. 执行命令interface interface-type interface-number,进入接口视图。
  3. 执行命令ripng ipsec sa sa-name,使能该接口的RIPng IPSec认证功能,并且指定所采用的安全联盟 的名称。
  4. commit,提交配置。
2.手工汇总

创建一个简单的可汇总环境,并将R1上的四个环回网段接口激活RIPNG协议:

此时R3上总计学到5条路由。

注意:RIPNG的汇总和RIP类似,都是接口上配置,在将路由信息通告给其他设备时进行汇总。

3.禁止某些接口发送RIPNG更新报文

禁止接口发送ripng更新报文是预防路由循环的方法之一。

4.加快收敛—计时器

RIPNG在华为官方说明中存在四个计时器:Update、Age、Suppress和Garbage-collect。调整这四个定时器的值,可以影响RIPng的收敛速度。但是实际RIPNG只能查找到三个计时器,并没有Suppress—抑制计时器。

这三个计时器的用法和在RIP中的用法一致,周期更新计时器规定了response包的发送周期,Age失效计时器,当180s没有收到RIPNG邻居发送的response包,设备会将从该邻居学习到的路由信息从路由表中删除, 并通过触发更新机制,通告给其他的邻居,此时会触发垃圾回收计时器120s,当120s之后才会将这些信息彻底从设备的缓存表中删除。

可以发现配置也只更改了三个计时器的时间,值得注意的是因为是在RIPNG进程中进行的更改,所以相当于是针对协议而言,所以,如果更改了RIPNG的计时器,所有运行该协议的设备也都需要更改,否则将导致无法学习到路由。

5.缺省路由

RIPNG下发缺省有两种方式,配置位置为下发缺省的路由器的某一个接口:

如果后面跟Only则意味这除了缺省以外,该路由器通过给邻居的路由将全部被抑制,注意:这里这针对下发缺省的路由器而言。

如果后面跟 originate,则代表下发缺省的同时明细路由将不会被抑制

可以发现除了缺省以外,汇总路由仍然存在。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/490453.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

麒麟系统安装JDK、OpenGauss

Linux安装openjdk1.8 1. 执行命令yum list |grep jdk查看可安装jdk版本 2. 选择一个java版本进行安装 这里我们希望安装java1.8,因为我们的机器是64位的,所以选择安装java-1.8.0-openjdk-devel.x86_64。 这里有个地方要注意,上图中我用红框圈…

LLaVA: Large Language and Vision Assistant 图片解析 图生文

LLaVA: Large Language and Vision Assistant 图片解析 图生文 目录 介绍 效果 ​编辑项目 测试代码 Form1.cs Helper.cs 下载 介绍 LLaVA,一种新的大型多模态模型,称为“大型语言和视觉助手”,旨在开发一种通用视觉助手&#xf…

110 Tried to send an out-of-range integer as a 2-byte value: 40003

前言 呵呵 这个也是一个之前碰到的一个问题, 主要的问题是 发送给数据库的 sql 参数太多了, 呵呵 超过了 postgres 客户端, 服务器 交互的参数的数量的上限了 之前记录了一个 todo, 最近的时候 看了一下 这部分的代码, 以及 涉及到的相关的协议 另外 例子中会有一个对比, …

【Lazy ORM 框架学习】

Gitee 点赞关注不迷路 项目地址 快速入门 模块所属层级描述快照版本正式版本wu-database-lazy-lambdalambda针对不同数据源wu-database-lazy-orm-coreorm 核心orm核心处理wu-database-lazy-sqlsql核心处理成处理sql解析、sql执行、sql映射wu-elasticsearch-starterESESwu-hb…

JAVA 8 新特性Stream API

一、Stream API 概念 Stream API ( java.util.stream) 把真正的函数式编程风格引入到Java中。这 是目前为止对Java类库最好的补充,因为Stream API可以极大提供Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。 Stream 是 Java8 中处理集合…

docker搭建zabbixx ,智能服务器监控运维平台(运维工程师必备)

安装阿里的docker源 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sudo yum makecache fast 安装系统需要的工具 yum install -y bind-utils net-tools wget unzip yum install -y yum-utils device-mapper-persisten…

学习笔记Day17:转录组上游分析-1

转录组上游分析-1 作业: 取出fastq文件中的所有序列ID(第一行) less SRR1039510_1.fastq.gz | awk {if(NR%41){print $0}}less SRR1039510_1.fastq.gz | paste - - - - | cut -f 1 取出fastq文件中的所有序列(第二行)…

鸿蒙OS应用示例:【数字滚动计时】

实现效果: 代码示例: RollingText.ets 组件封装 RollingText.ets 组件封装 /*** 滚动文字特效*/ Component export default struct RollingText {private num:numberprivate timerId: number -1State counter: number 0aboutToAppear() {this.timerId…

【蓝桥杯】填空题技巧|巧用编译器|用Python处理大数和字符|心算手数|思维题

目录 一、填空题 1.巧用编译器 2.巧用Excel 3. 用Python处理大数 4.用Python处理字符 5.心算手数 二、思维题 推荐 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击跳转到网站】 一、填空题 …

做功能测试多年,想进阶自动化技术 ,该如何学习自动化测试呢 ?

1.什么是自动化测试 ? 即三个自动化 : 代码修改自动触发自动化运行 、自动执行测试用例 、自动生成测试结果并发送团队 。 对技术的要求就是:自动化测试框架 持续集成工具 2. 企业为什么要做自动化 ? 从企业的需求来看 &…

速看!2024广州国际服务机器人产业博览会

2024广州国际服务机器人产业博览会 时间:2024年12月19-21日 地点:中国进出口商品交易会琶洲展馆 近年来我国服务机器人智能化、个性化水平快速提升,使其需求领域不断扩展,销售额不断增长。尤其是疫情带动服务机器人需求增长&am…

MCGS学习——弹框报警

弹框报警的制作流程 先绘制一个弹框窗口,在弹框窗口里绘制弹框标志,记得绘制完成之后点击合成单元,此外,打开报警信息按钮中是打开报警界面 绘制好之后,如果我们想让弹窗出现在我们想让他出现的位置,那我…

Stata 15 for Mac:数据统计分析新标杆,让研究更高效!

Stata 是一种统计分析软件,适用于数据管理、数据分析和绘图。Stata 15 for Mac 具有以下功能: 数据管理:Stata 提供强大的数据管理功能,用户可以轻松导入、清洗、整理和管理数据集。 统计分析:Stata 提供了广泛的统计…

常见端口及对应服务

6379 redis未授权 7001、7002 weblogic默认弱口令、反序列化 9200、9300 elasticsearch 参考乌云:多玩某服务器ElasticSearch命令执行漏洞 11211 memcache未授权访问 50000 SAP命令执行 50070、50030 hadoop默认端口未授权访问

C/C++ 语言中的 ​if...else if...else 语句

C/C 语言中的 ​if...else if...else 语句 1. if statement2. if...else statement3. if...else if...else statementReferences 1. if statement The syntax of the if statement is: if (condition) {// body of if statement }The code inside { } is the body of the if …

【LLM】大模型推理加速 KV-Cache

目录 模型推理过程KV Cache原理KV Cache的存储 模型推理过程 在了解KVCache之前,我们需要知道Transformer类大模型的推理过程。 对于LLM进行一次前向传播也就是生成一个token的过程可以被分解成以下步骤: 文本 T i n p u t T_{input} Tinput​经过Toke…

C++中的string容器容量操作

以string容器为例,有多个容量操作 string容器文档:string - C Reference (cplusplus.com) 1.求大小:size() 求容器大小使用 size(),string容器还可以使用 length() (推荐使用siez(),因为string产生比ST…

国家中英文名称、国家代码(地区代码)、国家域名、经纬度

因为要做世界地图对世界国家的标点,搜索使用到了世界各个国家的地理位置信息,此处做备份与学习。资源地址(免费) export default {"阿尔巴尼亚": {"m_longitude": "19.809","m_latitude&quo…

MyBatis是纸老虎吗?(七)

在上篇文章中,我们对照手动编写jdbc的开发流程,对MyBatis进行了梳理。通过这次梳理我们发现了一些之前文章中从未见过的新知识,譬如BoundSql等。本节我想继续MyBatis这个主题,并探索一下MyBatis中的缓存机制。在正式开始梳理前&am…

应急响应实战笔记04Windows实战篇(2)

第2篇:蠕虫病毒 0x00 前言 ​ 蠕虫病毒是一种十分古老的计算机病毒,它是一种自包含的程序(或是一套程序),通常通过网络途径传播,每入侵到一台新的计算机,它就在这台计算机上复制自己&#xff…