如何将 2 台机器设置为 2 个子网,并在它们之间设置“路由器”?

如何将 2 台机器设置为 2 个子网,并在它们之间设置“路由器”?

我已经尝试解决以下任务近一周了,但不幸的是,我认为我没有适当的技能以最佳方式解决它。

我需要设置以下网络: 192.168.2.1 <----------> 192.168.2.20 ^ | | | | v 192.168.1.1 <----------> 192.168.1.10

其中2.11.1是“路由器”(Ubuntu 16.04)的两个独立接口,和2.201.10“客户端”(Ubuntu 17.04)的两个独立接口。

不幸的是我甚至无法工作ping。客户端上的路由表: 192.168.1.1 dev eth1 192.168.1.10 via 192.168.2.1 dev eth2 192.168.2.20 via 192.168.1.1 dev eth1 192.168.2.1 dev eth2

在“路由器”上net.ipv4.ip_forward=1。当我tcpdump在 1.10 上使用 ping 2.20 时,2.20 可以看到传入的请求,但没有发送响应。我还尝试在 2.20 上
进行设置,并使用绑定到 1.10 来请求 2.20 上的网页。它有效,但是我在 1.10 上看不到任何东西,所以我假设该请求甚至没有离开网卡。nginxwgettcpdump

我有 2 个问题:
1) 我的配置有什么问题?
2) 解决这个任务的最佳方法是什么?

答案1

路由表没有意义,在客户端上它应该是通过 192.168.1.20 到 192.168.1.0/24 以及通过 192.168.2.20 到 192.168.2.0/24。

然后,192.168.1.1 将被视为 192.168.1.10 本地,并将从该接口发送出去。

相关内容