我在 centos 中使用以下命令在接口上创建了虚拟 ip。
ifconfig eth0:0 10.100.0.5/24 广播 10.100.0.255
接口的真实 IP 是 10.100.0.3。当我 ping 另一台主机时,我的源 IP 是 10.100.0.3,这不是我想要的。我希望虚拟 IP 显示为源。
我尝试添加默认网关接口 eth0:0,但在路由 -n 中仍然显示 eth0 作为默认网关接口。
任何帮助都将受到赞赏。
答案1
我能够使用 iproute 包中的“ip”工具来解决这个问题。
使用ip route
我可以看到哪个地址被用作源:
root@testbox:~# ip route
10.100.0.0/24 dev eth0 proto kernel scope link src 10.100.0.3/24 metric 1
default via 10.100.0.1 dev eth0 proto static
通过复制并编辑上面的行,我可以更改它:
ip route change 10.100.0.0/24 dev eth0 proto kernel scope link src 10.100.0.5/24 metric 1
route -n
仍将显示 eth0,因为它看不到虚拟接口。