IP 再次冲突

给二层新划分了一个 vlan,在三层上做好对应的关系,测试各网段的连通性就可以了,本来是件简单的工作,却因为一次事故变得复杂起来。
划分完毕后,在该 vlan 下新上几十台的机器。正常情况下是先确保远程卡的连通性,所以先从某台 cobbler ping,确认其是否工作正常。测试下来发现这批远程卡会出现时通时不通的情况,当时没有太在意,多 ping 了几次,也通了。后来再次连接的时候又出现了上面的问题,检查了遍涉及到的交换机的变更,没有发现问题。把目光转向了远程卡,查了下版本之类的信息,g 了下发现了不少跟我们类似的情况,遂以为是 firmware bug 之类的问题,于是升级了其中的一台,问题依然存在。
再后来由于时间关系也就没再追究(后来发现现在解决不了的问题迟早要出事),在该 vlan 下部署了一台 dhcrealy server,奇怪的是,安装完了之后,发现网络死活不同,其症状为:
1. 从本地可以 ping 通任何的的本网段的远程卡、交换机,并且没有任何的丢包
2. 从二层交换机可以 ping 通该 server,但是从三层则完全 ping 不通

第一次遇到这类正向通反向不通的情况,以为是 12.04 的机器默认把 icmp_echo_ignore_all 打开了,确认了一遍依然是 0。后来怀疑可以是三层配置的问题,之前没有发现,于是登陆上去,把 sh run 的结果跟我们另外一个环境类似的 IDC 的三层做 diff,依然没有发现任何的问题。

最后想到了看看三层的 log,这下终于有了头目:
# show logging
Log Buffer (4096 bytes):
 %IP-4-DUPADDR: Duplicate address 191.168.20.254 on Vlan4, sourced by d0c2.8e3e.0fa3
. ..
*Apr 2 06:36:53.443: %IP-4-DUPADDR: Duplicate address 192.168.20.254 on Vlan123, sourced by abcd.823e.0fc3

IP 冲突了!之前遇到过一次是服务器的 IP 冲突,这次提高了一个"境界",直接上升到交换机了 :-(

脑子里面组合下需要的命令:

# sh ip arp
# sh ip arp 192.168.1.15
# sh int gigabitEthernet1/2
# show mac address-table address 7711.224d.3bba

找到了冲突了 IP,修改完毕,终于恢复了。

自从之前出现了几次大的网络事故之后,我们的运维流程(文档)里面又增加了"修改(IDC)网络设备、机器上架(远程卡、内网 IP 分配)需要记录详细的操作步骤,包括网络设备涉及到的每一条命令"等条目。在写 post-mortem 的时候却发现,此次发生问题的机器的信息操作步骤竟然不在我之前 review
的文档里面,也就是说这台机器的修改是现场的工程师临时增加的,这个除了现场操作人员,如果不出问题,没人会知道;一旦出现问题,这类基础的设施对系统、服务的影响都将会非常的严重,好在这次是新划分的 vlan,连系统都没有,也谈不上什么大的灾难,如果是在原有的某个 vlan  操作,后果不堪设想。在目前资源有限的情况下,我们做不到这样细粒度的"审查",这个只能靠工程师的信息和责任心来解决。除此之外,一个好的 IPAM 或者 CMDB 是多么的重要。