最近,笔者单位将甲站的网络核心设备换成了华为设备,由于乙站的设备不经常使用,故还利用已有的思科设备。近期,乙站操作人员反映收不到甲站的组播数据。甲站和乙站网络互联关系如图1所示,由于甲站的华为9306没有配置2M接口板,因此乙站的思科2600的网络业务通过甲站的思科3845互联。三个网络设备均启用三层OSPF协议,配置组播模式为pim sm,并将华为9306配置为动态 RP(rendezvous point)。
组播数据不通,必然是组播链路出现了问题,应该检查甲站和乙站的组播路由是否正确。在确认三个设备的路由协议、组播配置没有问题后,登录思科2600查看组播路由竟然为空,思科3845也是如此,但华为9306的组播路由及组播数据等都是正常的,由此,初步判断问题出现在华为9306和思科3845之间的组播路由上。
图1 甲站和乙站网络互联图
首先在思科3845上查看RP的配置,竟然没有发现RP的地址,也没有发现逆向转发路径的存在。既然华为9306动态RP无法被思科3845获取,试着在思科3845上 用ip pim rp-address×.×.3.2(即华为9306获取的动态RP地址),再查看思科3845 RP地址时,发现RP地址和逆向转发路径正常。又在思科2600将配置了静态RP地址,配置完成后满以为组播数据应该正常了,但奇怪的是组播数据的转发依然不正常。
在询问乙站依然在发送组播数据的情况下,思科2600竟然没有组播组加入的信息。RP地址需要静态设置,难道组播组也要静态设置吗?
抱着试试看地心态,在思科3845和思科2600三层互联接口上用ip igmp join-group ×.×.×.× 静态配置了甲站、乙站实时数据传送的组播组,再查看思科3845和思科2600时,有组播组的信息了,发现有甲站的组播数据发到思科2600上,但乙站仍然收不到甲站的数据。这时笔者认为网络的问题已经解决了。
既然甲站有数据过来,乙站设备收不到,是不是乙站设备的软件存在问题呢?于是笔者让乙站设备的操管人员确认软件的状态:组播组及组播端口设置的是否正确。在乙站设备的操管人员确认完软件的状态后,笔者又远传了一个组播测试软件来排除设备软件的嫌疑。但启用组播测试软件乙站仍然收不到甲站的实时数据。
故障排到这里,笔者也觉得迷糊了:组信息都正常,数据为什么不正常呢?笔者决定还是在配置手册里查一下问题的原因。在查看《CISCO网络设备现场手册:路由器配置》时,在组播这一章节发现了在VLAN下静态配置组播组的内容,难道问题症结在这里?组播数据只是到了思科2600上并没有向VLAN里下发吗?赶紧在思科2600上VLAN 55配置了静态组播组加入,乙站和甲站的实时数据收发正常,故障排除。
实时数据的组播传输作为网络的一种应用,依赖于基础网络的正常运行。随着网络链路串接的设备不断增多,故障点也随之增加。在组播应用出现故障时,首要的是排除应用设备的故障,然后通过分段排查基础网络及组播路由的原因。其次,在问题出现瓶颈时,书本就是最好的老师。在信息爆炸的当下,求助于网络也是一个不错的选择。
总之,网络应用若出现问题,网络技术人员要有解决问题的思路,要综合运用原理性的知识理解工作中出现的问题,只有如此才能为网络应用可靠和高效地运行提供有力的技术支撑。