如何使用两个接口连接到同一网络和同一子网

时间:2015-02-17 13:56:58

标签: linux networking routing

在实验室,我们有两个主持人说A和B. 主机A有两个NIC,主机B有单个NIC(参见下面的网络拓扑图)

主机A的NIC-1连接到实验室网络

主机A的NIC-2直接(端到端)连接到主机B

            ----------
            |         | -> NIC1                  ------> Lab Network (10.203.194.0/24)
            |         |    (eth0 - 10.203.194.247/24)
            | host A  |                                          ----------
            |         | -> NIC2                  -------> NIC1   | host B  | 
            -----------   (eth1 - 10.203.209.230/24)             -----------
                                                             (eth0 - 10.203.194.163/24)

从主持人A,我能够ping通实验室网络'而我无法连接/ ping主机B(10.203.194.163)。我发现主机A的路由表有默认的gw到实验室网络。

将实验室网络和主机B连接到主机A需要进行哪些更改。

我可以选择连接主机A中eth0和eth1接口的桥接连接;但是我不喜欢这个选项,因为主机B不应该接收任何特定于实验室网络的数据包,这就是我没有将主机B直接连接到实验室网络的原因。

我正在寻找一些特定于目的地/来源的路由选项,并且必须根据该决定接口。

1 个答案:

答案 0 :(得分:0)

最后,我只需在路由表中添加规则即可解决问题。

$> route add -host 10.203.194.163 dev eth1

现在我的路由表如下:

 Destination      Gateway       Genmask         Flags MSS Windows irtt Iface
 10.203.194.163   0.0.0.0       255.255.255.255 UH    0   0       0    eth1
 10.203.194.0     0.0.0.0       255.255.255.0   U     0   0       0    eth0
 0.0.0.0          10.203.194.1  0.0.0.0         UG    0   0       0    eth0

当我从主机B ping到主机A并在eth0上运行tcpdump时,我将不会获得任何ICMP数据包,而在eth1中我可以看到来自主机B的所有ICMP数据包:)