两个网络之间的路由

两个网络之间的路由

基本上,我想知道应该怎样做才能连接不同网络中的两台电脑并让它们互相看到。

示意图如下

linux-pc-1-1 (192.168.0.2 eth0) <---> (192.168.0.1 eth0) linux-pc-1 (10.0.0.1 eth1) <---> (10.0.0.2 eth0) linux-pc-1-2

基本上,我想从 linx-pc-1-1 执行 ping 操作并从 linux-pc-1-2 和相反方向获得答复。

我尝试在 linux-pc-1-1 中创建一条通过 192.168.0.1 到网络 10.0.0.0/24 的路由

ip route add 10.0.0.0/24 via 192.168.0.1

在 linux-pc-1-2 中

ip route add 192.168.0.0/24 via 10.0.0.1

但它不起作用。

谁能帮我解释为什么我不能这样做以及如何解决这个问题?

答案1

基本上,您需要在 linux-pc-1 上启用数据包转发:

echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf
sysctl -p

然后在防火墙中添加规则以允许转发:

iptables -A FORWARD -j ACCEPT

如果您的 PC linux-pc-1-1/linux-pc-1-2 具有正确的路由设置,那么一切都应该可以正常工作。

相关内容