我一直试图解决以下任务近一个星期,但不幸的是,我不认为我有适当的技能来解决这个最好的方法。
我需要安装以下networking: 192.168.2.1 <----------> 192.168.2.20 ^ | | | | v 192.168.1.1 <----------> 192.168.1.10 192.168.2.1 <----------> 192.168.2.20 ^ | | | | v 192.168.1.1 <----------> 192.168.1.10
其中2.1和1.1是“路由器”(Ubuntu 16.04)的两个独立接口, 2.20和1.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 。 当我在1.10上使用tcpdump来ping 2.20时,2.20可以看到传入的请求,但是不发送响应。
我也尝试在2.20上设置nginx ,并使用wget绑定到1.10来请求2.20上的网页。 它的工作,但是我没有看到tcpdump 1.10上的任何东西,所以我认为这个请求甚至没有离开网卡。
我有两个问题:
1)我的configuration有什么问题?
2)解决这个任务的最好方法是什么?
路由表是没有意义的,在客户端上它应该是192.168.1.0/24,通过192.168.1.20和192.168.2.0/24,通过192.168.2.20。
那么,192.168.1.1将被认为是本地192.168.1.10,并将被发送出该接口。