虚拟IP不能ping通:错误的设置?

我正在使用Linux。

我添加了一个路由到虚拟IP说: 100.10.10.2通过运行命令:

 route -n add 100.10.10.2 gw 127.0.0.1 

它已被redirect到我的本地环回。 我检查了内核IP表,它有正确的path设置。 现在,我运行绑定在同一个IP上的脚本,然后尝试从我的计算机ping IP,它正确地得到了ping回复。

但是同一networking中的另一台计算机无法ping此虚拟IP地址。 我检查了互联网,它确实说我可以在我的本地环回有多个IP,他们可以从同一networking上的对等点查看。

我尝试通过eth0 IP地址replace127.0.0.1来在eth0接口上添加path。 信息被正确添加到路由表中,但是同样的事情发生了:我能够从我自己的机器上ping,但是对等方不能。

我使用了相同的东西,但没有任何解决scheme帮助我。

该脚本(它发送回ICMP数据包答复)是正确的(我相信这一点),因为我从我自己的机器的ping答复为我设置路由的IP。

我哪里错了? 或者我错过了一些configuration?

任何帮助深表感谢!

编辑:

这是路由表

 Destination Gateway Genmask Flags Metric Ref Use Iface 100.10.10.2 localhost.local 255.255.255.255 UGH 0 0 0 lo 192.168.1.0 * 255.255.255.0 U 1 0 0 eth0 link-local * 255.255.0.0 U 1000 0 0 eth0 default 192.168.1.1 0.0.0.0 UG 0 0 0 eth0 

和接口configuration:

 eth0 Link encap:Ethernet HWaddr 00:22:19:ec:ee:50 inet addr:192.168.1.2 Bcast:10.200.200.255 Mask:255.255.255.0 inet6 addr: fe80::222:19ff:feec:ee50/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 

我不清楚为什么你在任何情况下都要在本地系统上使用路由命令。 如果您的某个本地接口上configuration了地址,则不需要指定明确的路由; 你的系统已经知道如何联系它。

例如,如果你已经configuration了eth0 ,你应该可以这样做:

 ifconfig eth0:0 100.10.10.2 netmask 255.255.255.0 

现在你的本地系统将全部设置。

对于您的networking上的其他系统在该IP地址与您的系统联系,三件事情之一将需要是真实的。 或者:

  • 他们需要在同一个IPnetworking上有一个接口,或者
  • 他们需要有一个明确的路由到该IPnetworking,或者
  • 他们的默认网关需要有一个路由到该IPnetworking

所以,如果你有另一个系统的“真实”的地址是192.168.1.3,那么你要么这样做:

 ifconfig eth0:0 100.10.10.3 netmask 255.255.255.0 

或这个:

 route add -net 100.10.10.0/24 dev eth0