IS-IS协议

news2025/4/14 4:39:05

IS-IS协议介绍

IS-IS(Intermediate System to Intermediate System)协议是一种链路状态的内部网关协议(IGP),用于在同一个自治系统(Autonomous System, AS)内部的路由器之间交换路由信息。IS-IS协议是ISO(国际标准化组织)为实现其OSI(开放系统互联)模型而设计的,但它也被广泛用于IP网络中。百度百科:中间系统到中间系统协议

概述

IGP协议:链路状态协议,优先级15,度量值cost(与带宽有关)默认是10,可以修改。

工作在数据链路层

level 1组播MAC:0180-C2000-0014

level2主播MAC:0180-C2000-0015

工作原理

IS-IS的工作原理是基于链路状态协议(Link-State Protocol)与OSPF相似。

1、路由器角色和链路状态数据库(LSDB)

每个路由器在IS-IS中称为“中间系统”(Intermediate System,简称IS)

每个路由器维护一个链路状态数据库(LSDB),其中存储该路由器与其他路由器之间的链路状态信息。LSDB的内容主要包括网络中各路由器的连接状态。

2、Hello协议与邻居发现

1、路由器发送Hello报文来发现邻居路由器。这些Hello报文通过网络中相邻的路由器进行交换,来建立邻居。

每个IS-IS路由器都会定期发送Hello报文,通过这些报文来确认自己与邻居的连接是否正常,以及交换相关的配置参数,比如网络类型,hello时间间隔等等。

3、链路状态信息的传播

1、一旦邻接关系建立,每个路由器与邻居之间的链路信息(包括链路状态、带宽、延迟等)通过链路状态通告(LSA)传递给邻居。LSA是一种包含链路状态的控制报文,路由器通过LSA来通告网络中的其他设备他的接口和状态。

2、LSA是通过网络传播的,一旦LSA到达网络中其他路由器,所有路由器都会更新各自的LSDB。

4、SPF算法(最短路径优先)

1、路由器利用SPF算法来根据LSDB计算到达各个目标的最短路径。每个路由器都会根据自己拥有的LSDB生成一张路由表。

2、SPF算法的基本思想是基于路由器之间的链路信息计算最短路径,计算结果会被用来更新路由表,确定转发数据包的路径。

5、路由更新

当网络拓扑发生变化时,相关的LSA将会传播更新,所有路由器的LSDB将会进行更新,SPF算法将会重新计算路由表。

IS-IS协议网络实体名

介绍

在IS-IS协议中,网络中各个设备的实体通常根据他们在协议中的角色和身份来区分。

Level 1 Intermediate System (L1 IS):

L1 IS仅在单个区域内运行,负责在该区域内传播路由信息。它们不参与区域间的路由计算。
Level 2 Intermediate System (L2 IS):

L2 IS负责在不同区域之间传播路由信息,它们可以跨越多个区域进行路由计算。
Level 1-2 Intermediate System (L1-2 IS):

L1-2 IS同时具备L1和L2的功能,它们在本区域内作为L1路由器,在区域间作为L2路由器。
End System (ES):

在IS-IS协议的上下文中,ES指的是最终设备或主机,它们不是路由器,但可以是路由信息的目的或源。
Area Border Router (ABR):

ABR是连接不同IS-IS区域的路由器。在IS-IS中,ABR可以是L1-2路由器,它们在连接的区域内作为L1路由器,在区域间作为L2路由器。

路由器分类

Level-1 :区域内部路由器,维护本区域的路由信息,建立邻接关系,要求区域号必须一致
Level-2 :骨干路由器,维护自己区域和所有区域的路由信息;建立邻接关系,区域号可以相同,也可以不相同
Level 1-2 :默认类型,与OSPF的ABR类似

邻接关系建立

同一层次:只有同一层次(L1/L1,L2/L2/L1-2)的相邻路由器才有可能成为邻接
同一区域:对于Level-1路由器来说,Area ID必须一致
同一网段:链路两端IS-IS接口的地址必须处于同一网段(默认情况下)
相同的网络类型:链路两端IS-IS接口的网络类型( P2P/broadcast)必须一致
相同的MTU值:默认为1500
认证相同:如果做了认证,则两端的认证必须相同
接口未设置为silent-interface
在 P2P网络中 ,system-id 长度(6个字节)要一致,最大区域地址数(Max Area = 3),要相同

ISIS邻居建立不成功的原因

两台L1路由器,只有它们的Area ID一致才能建立邻居

1L1路由器和1L1/L2路由器,只有它们的Area ID一致才能建立邻居

建立ISI邻居的network-entity地址是否有冲突(类似于OSFProuter-id被设置为一样的)

建立ISIS邻居的认证参数不一致

建立ISIS邻居接口的MTU 值不一致

接口被设置为silent

                ​​​​​​​        ​​​​​​​        ​​​​​​​    p2p HelloTimer 10, DeadTimer 30

Hello时间不一致         广播DIS HelloTimer 3 DeadTimer 10

                                   广播非DIS HelloTimer 10, DeadTimer 30

报文类型

IS-IS报文是直接封装在数据链路层的帧结构中的。PDU可以分为两个部分,报文头和变长字段部分。其中头部又可分为通用头部和专用头部。对于所有PDU来说,通用报头都是相同的,但专用报头根据PDU类型不同而有所差别。

  • Intradomain Routing Protocol Discriminator:域内路由选择协议鉴别符,设置为0x83。
  • Length Indicator:PDU头部的长度(包括通用头部和专用头部),以字节为单位。
  • Version/Protocol ID Extension:版本/协议标识扩展,设置为1(0x01)。
  • ID Length:NSAP地址或NET中System ID区域的长度。值为0时,表示System ID区域的长度为6字节。值为255时,表示System ID区域为空(即长度为0)。
  • R(Reserved):保留,设置为0。
  • PDU Type:PDU的类型。IS-IS PDU共有9种类型,详细信息请参考下表。
  • Version:设置为1(0x01)。
  • Maximum Area Address:支持的最大区域个数。设置为1~254的整数,表示该IS-IS进程实际所允许的最大区域地址数;设置为0,表示该IS-IS进程最大只支持3个区域地址数。

IS-IS命令介绍

启用IS-IS协议
router isis [process-id]  process-id是IS-IS进程的标识符

设置路由器ID
net [ISIS-NET]    其中【ISIS-NET】是一个点分十进制的地址,用于定义路由器的网络实体

设置密码认证
ip anthentication mode [mode]    其中[mode]可以是md5或者simple
isis password [password] [process-id] 其中【password】是设置的密码

设置hello参数
isis hello [muliplier] [interval] [process-id]    其中[multiplier]和[interval]分别为设置hello包的时间间隔和乘数

设置metric值
metric [value]    其中[value]是设置的metric值,用于影响路由选择

在接口启用IS-IS
ip router isis [process-id]    该命令需要在接口妹子模式下执行

设置优先级
priority [value] [process-id]    其中[value]是设置的优先级值,用于决定是否成为区域的DIS

---------------------------------------------------------------------------------------------------------------------------------亲爱的读者朋友们,我在发布的博客中可能存在一些不足之处,如果您发现了任何错误或有改进建议,恳请不吝赐教,您的反馈对我非常重要。谢谢!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

不良人系列-复兴数据结构(栈和队列)

个人主页:爱编程的小新☆ 不良人经典语录:“相呴相济 玉汝于成 勿念 心安” 目录 一. 栈(stack) 1. 栈的概念 2. 栈的常见方法 3.栈的模拟实现 ​编辑 二. 队列 1. 队列的概念 2. 队列的使用 2.1 队列的常见方法 2.2 队列的模拟实现 2.3 队列…

机器学习04-为什么Relu函数

机器学习0-为什么Relu函数 文章目录 机器学习0-为什么Relu函数 [toc]1-手搓神经网络步骤总结2-为什么要用Relu函数3-进行L1正则化修改后的代码解释 4-进行L2正则化解释注意事项 5-Relu激活函数多有夸张1-细数Relu函数的5宗罪2-Relu函数5宗罪详述 6-那为什么要用这个Relu函数7-文…

win服务器的架设、windows server 2012 R2 系统的下载与安装使用

文章目录 windows server 2012 R2 系统的下载与安装使用1 windows server 2012 的下载2 打开 VMware 虚拟机软件(1)新建虚拟机(2)设置虚拟机(3)打开虚拟机 windows server 2012(4)进…

241217-解决Ollama无法通过配置文件修改模型下载路径的方法

A. 常规修改下载模型路径的方法 Linux怎样设置ollama保存模型的路径? - 南门子的回答 - 知乎 B. 上述方法失效时的解决方案 Is there a way to change the download/run directory? Issue #680 ollama/ollama 具体来说也就是在ollama serve 启动之前&#xff…

戴森球计划新玩法!利用MOD和cpolar实现公网环境多人游戏

文章目录 前言1. 下载MOD2.配置cpolar内网穿透3. 主机开启联机3.1 玩家加入游戏 4. 配置固定的TCP端口5. 游玩体验 前言 《戴森球计划》不仅是一款融合了科幻冒险与经营管理元素的游戏,更是一个让玩家在浩瀚宇宙中尽情探索和创造的平台。在这个游戏中,你…

农田“智能管家”:道品科技农业移动式水肥一体机

一、农业移动式水肥一体机的兴起背景 (一)现代农业面临的挑战 在全球人口持续增长的大背景下,如今的粮食需求较以往有了大幅度增加。据相关统计数据显示,预计到 2030 年,全世界仍有近 6 亿人口长期食物不足。为了保障…

计算机进制的介绍

一.进制介绍 对于整数,有四种表示方式: 1)二进制:0,1,满2进1。 在golang中,不能直接使用二进制来表示一个整数,它沿用了c的特点。 参考:Go语言标准库文档中文版 | Go语言中文网 | Golang中文社区 | Golang中国 //赋值…

3D Gaussian Splatting for Real-Time Radiance Field Rendering-简洁版

1. 研究背景与问题 传统的3D场景表示方法,如网格和点云,适合GPU加速的光栅化操作,但缺乏灵活性。而基于神经辐射场(NeRF)的表示方式,尽管质量高,但需要高成本的训练和渲染时间。此外&#xff0…

用ue5打开网址链接

需要用到 Launch URL 这个函数 字面意思就是打开填写的链接网页 这里填写的是百度,按下Tab键后就会打开百度的网页

电脑为什么会提示“msvcr120.dll缺失”?“找不到msvcr120.dll文件”要怎么解决?

电脑故障排查指南:揭秘“msvcr120.dll缺失”的真相与解决方案 在软件开发与日常维护的广阔天地里,遇到系统报错或文件缺失的情况可谓家常便饭。今天,我将带领大家深入探讨一个常见的系统提示——“msvcr120.dll缺失”,并揭秘其背…

Java:集合(List、Map、Set)

文章目录 1. Collection集合1-1. 迭代器遍历方式1-2. 通过for循环进行遍历1-3. forEach遍历 2. List集合2-1. ArrayList底层实现原理2-2. LinkedList底层实现原理 3. Set集合3-1. HashSet 底层实现3-2. LinkedHashSet 底层实现3-3. TreeSet 4. Collection集合->总结5. Map集…

4_使用 HTML5 Canvas API (3) --[HTML5 API 学习之旅]

4_使用 HTML5 Canvas API (3) --[HTML5 API 学习之旅] 1.缩放 canvas 对象 在 <canvas> 中缩放对象可以通过 scale 方法来实现。这个方法会根据提供的参数对之后绘制的所有内容进行缩放。下面是两个具体的示例&#xff0c;展示如何使用 scale 方法来缩放 canvas 上的对…

嵌入式驱动开发详解18(USB驱动开发)

文章目录 前言USBUSB简介USB信号线USB控制规格 USB—HUBUSB—HUB原理USB—HUB电路 USB—OTGUSB—OTG原理USB—OTG电路 USB协议后续参考文献 前言 该专栏主要是讲解嵌入式相关的驱动开发&#xff0c;但是由于部分模块的驱动框架过于复杂&#xff0c;其内容量不是一个人能完成的…

ubuntu监测硬盘状态

安装smartmontools smartctl -l error /dev/sdk smartctl -i /dev/sda lshw -class disk smartctl -H /dev/sd 结果1&#xff1a; 结果2&#xff1a;PASSED&#xff0c;这表示硬盘健康状态良好 smartctl -a /dev/sdb sdk lsblk blkid 测试写入速度 time dd if/dev/zero of…

华为云联合中国信通院发布首个云计算智能化可观测性能力成熟度模型标准

2024年12月3日&#xff0c;由全球数字经济大会组委会主办&#xff0c;中国信息通信研究院&#xff08;以下简称“中国信通院”&#xff09;、中国通信企业协会承办的2024全球数字经济大会云AI计算国际合作论坛在北京成功召开。本次会议中&#xff0c;华为云联合中国信通院等单位…

Stable Diffusion 提示词语法

1.提示词基础 1.提示词之间用英文逗号,分隔 2.提示词之间是可以换行的 3.权重默认为1,越靠前权重越高 4.数量控制在75个单位以内 2.提示词各种符号的意义 2.1 ()、[]、{}符号 权重值()小括号[]中括号{}大括号默认1111层()1.1[]0.9{}1.052层(()) 1.121.21[[]]0.920.81{{}}1.…

CMake 保姆级教程(上)

整理自 视频 【CMake 保姆级教程【C/C】】 https://www.bilibili.com/video/BV14s4y1g7Zj/?p5&share_sourcecopy_web&vd_source6eb8f46d194c5ef9f89d3331f623a9c3 1、cmake简介 源文件&#xff08;.cpp / .c&#xff09;要经过 工具链 1.1 工具链 1、预处理&#…

[计算机网络]唐僧的”通关文牒“NAT地址转换

1.NAT&#xff1a;唐僧的通关文牒 在古老的西游记中&#xff0c;唐僧师徒四人历经九九八十一难&#xff0c;终于取得了真经。然而&#xff0c;他们并不是一开始就获得了通关文牒&#xff0c;而是经过了重重考验&#xff0c;最终得到了国王的认可&#xff0c;才顺利通过了各个关…

vscode设置终端代理

转载请标明出处&#xff1a;小帆的帆的博客 设置终端代理 修改项目的.vscode/settings.json {"terminal.integrated.env.windows": {"http_proxy": "http://127.0.0.1:7890","https_proxy": "http://127.0.0.1:7890"}, }…

java后端环境配置

因为现在升学了&#xff0c;以前本来想毕业干java的&#xff0c;很多java的环境配置早就忘掉了&#xff08;比如mysql maven jdk idea&#xff09;&#xff0c;想写个博客记录下来&#xff0c;以后方便自己快速搭建环境 JAVA后端开发配置 环境配置jdkideamavenMySQLnavicate17…