要使用两个具有相同子网的以太网端口,IP问题

我有一个Linux Ubuntu 8.04和4个以太网端口的盒子。 我启用了2个端口,eth0和eth1,并尝试使用静态IP(eth0 = 192.168.0.205和eth1 = 192.168.0.206)进行configuration。

如果我插入2根电缆,每根电缆一根,我可以按预期的方式通过每个IP来连接我的设备。 但是,如果我从eth1删除电缆,我仍然可以ping两个IP。 在这之后,我可以禁用eth1,这两个IP仍然可以在eth0上使用。

如果我在eth1上插入电缆,则没有什么区别,只是eth0端口工作。

我做了一个testing,如果我将两个IPconfiguration在不同的子网中,则不会发生此问题。

发生这种情况是因为默认情况下,Linux将IP地址视为整个主机的属性,而不仅仅是特定的接口。 因此来自外部的ARP请求(将被两个接口接收)将导致来自所有接口的应答,而不仅仅是具有所请求的IP的应答。

看看这个答案类似于你的问题(还有另一种方法涉及arptables描述那里)。