如何使用路由将 LAN 连接到 WAN?

如何使用路由将 LAN 连接到 WAN?

我正在尝试建立一个简单的网络(参考此图)在我的新透明雾专业版。我在这个板上安装了 debian 发行版。目前我有一台计算机 (pc2) 连接到 Clearfog (pc1),但我计划添加更多计算机。

我使用这个网络的目的是将 pc2 连接到互联网以及局域网和广域网中的所有其他计算机。但我很难实现这个目标。

该板有两个接口:

  • Eth0:192.168.178.201/24 连接主路由器和互联网。
  • Eth1:192.168.177.1/24。该板连接有 6 个 LAN 接口。

在 pc1 上我启用了 IP 转发并添加了如下路由:

ip route add default via 192.168.178.1 dev eth0
ip route add 192.168.178.0/24 via 192.168.178.201 dev eth0
ip route add 192.168.177.0/24 via 192.168.177.1 dev eth1

在 pc2 上我添加了静态 ip 和默认网关,如图所示。

我可以 ping 192.168.178.201 和 192.168.177.1。如果 ping 192.168.178.2,我可以看到它跳转到 192.168.178.201,但随后卡住了。

在 pc2 上我无法 ping 默认网关。我不知道这是否应该发生。

-----编辑 1-----

我认为 Clearfog Pro 的配置有问题。它阻止了 eth1 上的连接,但 LED 仍然显示正在发生一些事情。

答案1

首先,您的默认路由是错误的。需要via指向下一跳网关(从 pc1 开始192.168.178.1),但出于某种原因,您将其指向 pc1 本身。因此,第一行应如下所示:

ip route add default via 192.168.178.1 dev eth0

实际上,全部您的路由本质上翻译为“通过我自己转发”。这是多余的(pc1 已经获得了数据包,为什么它会再次通过 pc1 循环?)更重要的是,这听起来像是无限循环的秘诀。因此,在第 2 行和第 3 行中,首先删除参数via

ip route add 192.168.178.0/24 dev eth0

但是,您正在尝试添加子网路由完全相同的操作系统已经就是这样。这就是配置“子网掩码”的全部意义所在——如果你的 IP 地址是 eth0 上的 192.168.178.201/24,那么你自动地通过 eth0 有一条 192.168.178.0/24 的路由。

换句话说,对于您当前的网络,您只需要手动第一的(默认)路由。“本地子网”路由将自动添加。


第二网关必须有一条通过 pc1 返回 pc2 的路由。由于 ping 请求来自不同的子网,它不会自动知道将回复发送到哪里,因此它还需要添加一条静态路由。

如何做到这一点取决于网关的软件,但在 iproute2 术语中,它看起来像:

ip route add 192.168.177.0/24 via 192.168.178.201

另外,忘掉那些“网络”和“广播”参数吧。它们已经从 中自动确定了/24。通常不需要手动配置它们——只会增加输入错误和失误的机会。

相关内容