一、邻居关系建立过程(2-way,3-way)
一、邻居关系建立过程(2-way,3-way)
(1)p2p网络
(TLV240,对端的system-id)
当收到对方发来的HELLO包中有自己的system-id则up。
TLV240包含:邻居状态、邻居的链路ID、邻居的sys-id、自己的链路ID。
在P2P链路上,邻居关系的建立不同于广播链路。分为两次握手和三次握手机制。
两次握手机制:
只要路由器收到对端发来的hello报文,就单方面宣布邻居为UP状态,建立邻居关系
三次握手机制:
此方式通过三次发送P2P的ISIS HELLO PDU最终建立起邻居关系,类似广播邻居关系的建立
两次握手机制存在缺陷。当路由器间存在两条及以上的链路时,如果某条链路上到达对端的单向状态为DOWN,而另一条链路同方向的状态为UP,路由器之间还是能建立邻接关系。
SPF在计算时会使用状态为UP的链路上的参数,这就导致没有检测到故障的路由器在转发报文时仍然试图通过状态为down的链路。三次握手机制解决了上述不可靠点到点链路中存在的问题。这种方式下,路由器只有在知道邻居路由器也接收到它的报文时,才宣布邻居路由器处于up状态,从而建立邻居关系。
(2)MA网络
(TLV6,对端的MAC)
当收到对方发来的HELLO包中有自己的MAC地址则UP
1.RouterA发送广播level-2LAN IIH,此报文中无邻居标识
2.RouterB收到此报文后,将自己和RouterA的邻居状态标识为Initial。然后RouterB再向RouterA回复LEVEL-2LAN IIH,此报文中标识RouterA为RouterB的邻居
3.RouterA收到此报文后,将自己与RouterB的邻居状态表示为UP,然后RouterA再向RouterB发送一个标识RouterB为RouterA的邻居Level-2LAN IIH
4.Router B收到此报文后,将自己与RouterA的邻居状态标识为Up。这样,两个路由器就成功建立了邻居关系
因为是广播网络,需要选举DIS,所以再邻居关系建立之后,路由器会等待两个HELLO报文间隔,再进行DIS选举。hello报文中包含Priority字段,Priority值最大的将被选举为该广播网的DIS。若优先级相同,接口MAC地址较大的被选举为DIS
二、影响ISIS邻居关系建立的因素
(1)level
level1不能和level2建立邻居
(2)system-id
标识一台路由器,具有唯一性
(3)认证
认证类型
接口认证:是指是能ISIS协议的接口以指定方式和密码对Level-1和Level-2的hello报文进行认证。
区域认证:是指运行ISIS的区域以指定方式和密码对Level-1的SNP和LSP报文进行认证
路由器认证:是指运行IS-IS的路由域以指定方式和密码对Level-2的SNP和LSP报文进行认证
说明:
对于区域和路由域认证,可以设置为SNP和LSP分开认证。
本地发送的LSP报文和SNP报文都携带认证TLV,对收到的LSP报文和SNP报文都进行认证检查
本地发送的LSP报文携带认证TLV,对收到的LSP报文进行认证检查;发送的SNP报文携带认证TLV,但不对收到的SNP报文进行检查
本地发送的LSP报文携带认证TLV,对收到的LSP报文进行认证检查;发送的SNP报文不携带认证TLV,也不对收到的SNP报文进行认证检查。
本地发送的LSP报文和SNP报文都携带认证TLV,对收到的LSP报文和SNP报文都不进行认证检查
认证方式:
明文认证:一种简单的认证方式,将配置的密码直接加入报文中,这种认证方式安全性不够
MD5认证:通过将配置的密码进行MD5算法之后再加入报文中,这样提高了密码的安全性
Keychian认证:通过配置随时间变化的密码链表来进一步提高网络的安全性
(4)MTU
通过padding来填充,MA与p2p的padding情况有什么差别?
默认情况下MTU的方位MA不能小于1500,p2p不能小于1497
通过PDU的长度就知道了邻居MTU的大小,MA网络中所有的HELLO都会填充padding填充,p2p只有再建立邻居时hello包才会被padding填充,其他的hello包不会被填充
(5)网络接口类型
p2p,MA两边网络类型不一致无法建立邻居,所需TLV不同(TLV240和TLV6)
(6)同一子网,掩码可以不一致
hello包不携带掩码,携带ip,路由器用收到的ip与本地接口的掩码进行与运算,必须处于同一个网段。
(7)3-way only情况
2-way可以和3-way建立邻居,3-way和3-way only可以建立邻居,但是2-way和3-way only无法建立邻居(2-way不携带TLV240)
(8)cost-style
(影响路由计算,narrow与wide的区别)
1.接口cost值不同narrow长为6bit,所以值的范围为0-64,wide的接口cost长为24,即值的范围为0至2的24此方减1。wide的类型135中每条路由的度量值为32bit长,所以值得范围为0至2的32次方减1。
2.wide支持sub-tlv,可以用来打TAG
3.TLV不同narrow的TLV为2,128,130;wide的TLV为22,135
三、ISIS报文——九种