假设 PC A, IP10.49.1.1
想要通过 IP 地址10.70.70.1
向 PC B, IP发送数据包10.49.1.8
。 PC B 接收数据包并将其发送回10.70.70.1
PC A。两台 PC 通过交换机连接。 PC A 通过10.70.70.1
PC B连接非常重要。
如何设置 PC A (Linux) 将数据包路由到 PC B,反之亦然?
答案1
网络并不像你想象的那样运作。 IP地址被分配给网络接口,不是个人电脑,也不是程序。 LAN 网段(通过交换机连接)必须具有公共 IP 前缀。
所以你可能会遇到这样的情况:
+------------------------+ +-----------+
| PC A | | PC B |
| | | |
| eth1 eth0 | | eth0 |
| 10.70.70.1 10.49.1.1 | | 10.49.1.8 |
+------------------------+ +-----------+
| | |
----+ +----------------+
switch switch
10.70.70.0/24 10.49.1.0/24
在这种情况下,PC A 可以使用 向 PC B 发送数据包10.49.1.8
,而 PC B 可以使用 作为目的地向 PC A 发送数据包10.49.1.1
。如果 PC B 有这样的路由
ip route add 10.70.70.0/24 dev eth0 via 10.49.1.1
那么PC B将10.70.70.*
首先将所有数据包发送到PC A,特别是它会在以下情况下到达PC A:10.70.70.1
如果某个应用程序绑定在所有网络接口或此特定接口上。
这就是你想要的吗?
如果没有,请详细说明您试图以何种方式与哪些应用程序合作,以及为什么您认为 PC A 需要两个 IP 地址吗?
答案2
目前还不清楚您要实现什么目的,因为 10.49.1.1 和 10.49.1.8 可以在同一子网中相互通信。由于交换机工作在二层,所以10.70.70.1可能只是一个管理用的IP地址,不参与三层通信。只需将PC A和PC B分别插入交换机的两个端口即可VLAN(未标记),并且可以工作。 .: 弗朗西斯科