题目1:R1 宣告一条10.1.1.1 的路由,R2 和R4 之间做虚链路,并把双方的接口开销改为1000,会出现什么问题?
出现的问题:R4访问10.1.1.1这条路路由时,会产生R4-R5-R6- R4这样的环路。原因如下:
R2和R4之间做了虚链接以后,在没有修改接口开销的时候,此时的路由下一跳情况如下:
R4访问10.1.1.1这条路由的下一跳是R2,路径为R4-R2-R1;
R5访问10.1.1.1这条路由的下一跳是R6,路径为R5-R6-R4-R2-R1;
R6访问10.1.1.1这条路由的下一跳是R4,路径为R6-R4-R2-R1;
R2和R4的直连链路修改过开销以后,此时的路由下一跳情况如下:
R4访问10.1.1.1这条路由的下一跳是R5,因为R4和R2的接口开销为1000,由于R2、R3、R4、R5的互联链路都是宣告进了区域1中,那么这个时候R4会优选R5作为下一跳来访问R1宣告的路由,R4-R5-R3-R1这条路径的开销为3.
R5访问10.1.1.1这条路由的下一跳是R6,R5不会通过R3访问10.1.1.1这条路由,虽然R5能够通过R3学到这条路由的LSA,但这时非骨干区域传递过来的三类LSA,只会接收不会用于计算路由,所以R5的下一跳是R6。
R6访问10.1.1.1这条路由的下一跳是R4,R6要访问10.1.1.1这条路由只能通过R4和R2之间的虚链路来访问,所以R6的下一跳是R4。
题目2:如果R2 是华为设备,R4 是思科设备,对接会产生什么问题?
当Cisco设备和华为设备对接时,华为设备不将虚链路当做按需链路处理,华为设备发出的包里 option中 DC bit 没置位,所以无法建立按需链路,此时Cisco 设备不会将此 virtual-link当做按需链路处理(LSA中 do not age 也不置位),然后会周期性的单播发送Hello消息,间隔时间10s,OSPF 的vlink建立成功。
其他答案:Cisco设备vlink按需链路建立完邻居之后就不发hello了,邻居永远是UP,华为设备的普通链路会周期性的发送Hello包。