Networking
將 IP 地址別名從一台伺服器遷移到另一台伺服器
我跑:
/sbin/ifconfig eth0:10 xx.xx.xxx.221 netmask 255.255.255.224 down
在 box1 和 box2 上:
/sbin/ifconfig eth0:10 xx.xx.xxx.221 netmask 255.255.255.224 up
兩個盒子都位於同一個網路上。
遷移後,我可以從兩台伺服器 ping ip,我注意到它在 box2 上的響應速度比在 box1 上快 10 倍,所以看起來一切正常。但是我無法從網路外部ping ip。
兩個盒子上的 eth0 都是公共 ip,別名也是公共 ip。
當我將 ip 移回 box1 時,我可以在網路之外 ping 它而沒有任何問題。
我也可以在 box2 上 ping 公共 ip (eth0),所以這似乎不是防火牆問題。
路由器是否需要時間來更新新的以指向新的 MAC 地址?
我錯過了什麼?
您需要發送無償 arp。像 heartbeat 和 keepalived 這樣的包會為你做這件事。否則,請查看arping。
Kevin 不是
ifconfig
用來設置虛擬介面,而是ip
用來移除它:ip addr del xx.xx.xxx.221 dev eth0
是的,路由器可能需要一些時間來更新它的 arp 表。但是,如果您有權訪問它,您可以手動從表中刪除 arp 條目,儘管它更新的時間並不長。