IS-IS:01 ISIS基本配置

发布时间:2024年01月22日

这是实验拓扑,下面是基本配置:

R1:
sys
sysname R1
user-interface console 0
idle-timeout 0 0
int loop 0
ip add 1.1.1.1 24
int g0/0/0
ip add 192.168.12.1 24
q
R2:
sys
sysname R2
user-interface console 0
idle-timeout 0 0
int loop 0
ip add 2.2.2.2 24
int g0/0/0
ip add 192.168.12.2 24
int s0/0/0
ip add 192.168.23.2 24
q
R3:
sys
sysname R3
user-interface console 0
idle-timeout 0 0
int loop 0
ip add 3.3.3.3 24
int s0/0/0
ip add 192.168.23.3 24
q

配置完成后,R2 ping 一下直连,测试连通性

配置IS-IS路由协议:

R1:
isis
network-entity 10.0000.0000.0001.00
int g0/0/0
isis enable
int loo 0
isis enable

默认IS-IS 进程号为 1,配置路由器的网络实体名,即指定系统的区域ID和系统ID。
路由器上需要运行IS-IS的接口必须使用isis enable命令来启用IS-IS协议。


抓取 ISIS ?hello 报文:

用IS-IS协议 物理接口的 MTU 为 1497, 有 3 个字节给 LLC 使用了。
system ID length 默认为 6,是系统ID 号长度 。
max area 默认为 3 ,代表最大支持 3个 network-entity 。
每台设备最多可以配置三个NET,系统ID必须是相同,区域ID可以不同。
?

一般情况下,一个路由只需要配置一个区域地址,且同一区域中所有节点的区域地址都要相同。为了支持区域的平滑合并,分割及转换,在设备的实现中,一个ISIS进程下最多可配置3个区域地址。

hello 报文中只有 holding timer ,hello * 3= holding timer ,hello 时间不同,不影响建立邻居
但MTU 要相同。

hello 报文中的padding 在P2P 网络中,建立好之后,就没有了,节约带宽,在广播网络中一直有

int s0/0/0
isis padding-hello  //一直有padding
int s0/0/0
isis small-hello  //没有padding

两条命令互斥。

? isis作为链路状态协议,一个重要的原则是要保证整个网络中所有设备的lsdb数据库保持完全一致,这样才能保证各设备计算出的最小生成树(spf)是基于同一个拓扑,从而保证不会出现环路。isis报文作为链路层报文,发送和接收过程是没有分片的概念的,也就是说接口的mtu决定了可以收到的lsp的最大长度。

? 举个例子,a与b建立isis邻居。但a的接口mtu为1000,b的接口mtu为2000,b的lsdb中有一条长度为1500的lsp。在这种情况下,这条lsp发到a是要丢弃的,因为超过了a的接口mtu。结果是a与b的lsdb就不一致了。

? 解决方案就是把hello报文填充到接口的mtu长度。b的hello报文全部长度现在是2000,发到a就丢弃了。建不起来isis邻居,自然不会有不一致的现象。

? 建不起来邻居可以识别出来继而修改不一致的mtu,而数据库不一致导致的后果完全无法预见,是无法接受的。

? 华为设备的实现:广播网的hello是根据mtu填充的;对于p2p的hello,华为是根据ls plength(单条lsp的最大生成长度)的大小进行填充。在p2p邻居up后,不再对hello报文进行填充。当然,也可以通过small-hello和padding-hello命令强制指定是否填充。

R2 R3配置isis:

R2:
isis
network-entity 10.0000.0000.0002.00
int g0/0/0
isis enable
int s0/0/0
isis enable
int loo 0
isis enable
R3:
isis
network-entity 10.0000.0000.0003.00
int s0/0/0
isis enable
int loo 0
isis enable

P2P 链路可以用 2-way 也可以用 3-way 来建立,华为默认采用的是三次握手

int s0/0/0
isis ppp-negotiation 3-way (only)

不在同一个网段,建立 ISIS 邻居:

R2:
int s0/0/0
isis peer-ip-ignore 

R3:
int s0/0/0
ip add 192.168.35.3 24
isis peer-ip-ignore 

设置了 peer-ip-ignore 后,P2P 网络不是同一个网段的两边,也能建立邻居。

R2上查看邻居信息 display isis peer。

与系统ID为 0000.0000.0001 的邻居建立了 Level-1邻接关系及Level-2邻接关系,3条邻居信息的状态均为 up, 表示 IS-IS邻接关系已经正常建立。
?

由于系统ID不易于管理和维护时的识别和认读,可以在IS-IS视图下设置为动态主机名。

R1:
isis
is-name R1

R2:
isis
is-name R2

R3:
isis
is-name R3

查看一下,系统ID已经被动态主机名替换

配置IS-IS 认证功能:

1、接口认证: ? ?对Level-1和Level-2的Hello 报文进行认证
2、区域认证: ? ?对Level-1的SNP和LSP报文进行认证
3、路由域认证:对Level-2的SNP和LSP报文进行认证

认证方式:Null、明文、MD5

?接口认证:

R1:
int g0/0/0
isis authentication-mode simple huawei

在R1 的g0/0/0 接口抓IIH 包

看system-id 是0001 ,也就是 R1 的 hello 包 ,可以看到认证字段,也能看到明文的密码

如果是 md5 认证,抓包是看不到密码的

只做一边的认证,邻居关系断开 ,两边都做相同的认证之后,关系才能建立

R2:
int g0/0/0
isis authentication-mode simple huawei

MD5 认证
int g0/0/0
isis authentication-mode md5 huawei

清除ISIS? LSDB:
<>reset isis 1 all
?

文章来源:https://blog.csdn.net/weixin_73882207/article/details/135723373
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。