IS-IS 有两种缺省路由,第一种缺省路由是由 level-1 路由器在特定条件下自动产生的,它的下一跳是离它最近的 (cost 最小)level-1-2路由器。第二种缺省路由是 IS-IS 路由器上使用 default-route-advertise 命令产生并发布的。
本次实验拓扑,R4不运行 IS-IS协议 , R2 写一条默认路由到 R4
基本配置:
R1:
sys
sysname R1
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
int g0/0/0
ip add 192.168.12.2 24
int g0/0/1
ip add 192.168.23.2 24
int g0/0/2
ip add 192.168.24.2 24
q
R3:
sys
sysname R3
int loop 0
ip add 3.3.3.3 24
int g0/0/0
ip add 192.168.23.3 24
q
R4:
sys
sysname R4
int loop 0
ip add 4.4.4.4 24
int g0/0/0
ip add 192.168.24.4 24
q
配置 IS-IS 协议:
R1:
isis
network-entity 10.0000.0000.0001.00
is-name R1
is-level level-1
int loo 0
isis enable
int g0/0/0
isis enable
q
R2:
isis
network-entity 10.0000.0000.0002.00
is-name R2
int g0/0/0
isis enable
isis circuit-level level-1
int g0/0/1
isis enable
isis circuit-level level-2
q
R3:
isis
network-entity 20.0000.0000.0003.00
is-name R3
is-level level-2
int loo 0
isis enable
int g0/0/0
isis enable
q
R2查看邻居的建立, 查看路由表
在R2 R4 上配置静态路由:
R2:
ip route-static 0.0.0.0 0 192.168.24.4
R4:
ip route-static 1.1.1.0 24 192.168.24.2
ip route-static 3.3.3.0 24 192.168.24.2
测试R1 R4的连通性ping -a 1.1.1.1 4.4.4.4
R1上没有明细路由,只有缺省路由
查看R1的isis链路状态数据库
由R2 产生的,ATT位被设置为 1 的 Level-1 LSP
L1-L2 router发送到本area的LSP中若将att置位,则表示该L1/L2可以通往外部。
但如果R2连接骨干区域的链路发生故障,R2将不会再把自己产生的Level-1 LSP 的ATT位设置为1,而设置为 0。
R2:
int g0/0/1
shutdown
现在也没有默认路由
手动向R1 发布缺省路由:
现在R1 与R4之间是不通的。为了解决这个问题,可以在R2上手动向R1发布缺省路由。默认只向Level-2 发布,需要加上Level-1关键字
R2:
isis
default-route-advertise level-1
如果R2 上没有默认路由,也可以加上 always , 变成 default-route-advertise always level-1
always 与 match default 只能使用一个
查看R1 路由表有默认路由
关闭R2 连接R4 的g0/0/2 接口
R2:
int g0/0/2
shutdown
在R1 上依然有缺省路由
默认情况下,路由器使用default-route-advertise 命令发布缺省路由,无论自己是否有,都向邻接关系路由器发布
但这样是不太好的,需要改进,将自己有缺省路由时才发布
R2:
isis
default-route-advertise match default level-1
配置之后,R1 不再有缺省路由。
把R2 R4之间链路打开
R1 上就又有缺省路由了
手动向R3 发布缺省路由:
打开R2 的g0/0/1
R2:
int g0/0/1
undo shutdown
同时向R1 R3 发布缺省路由
R2:
isis
default-route-advertise match default level-1-2
这样R3 上面也有去往R4 的缺省路由