我有一个具有两个界面的系统,例如
eth0->88.198.xx
eth1-> 192.168.10.10
我需要通过 eth0 从互联网访问该服务器,但服务器使用 eht1 来满足其自己的互联网需求(下载、更新等)。
*eth1 后面有一个 VPN 服务器,用于隐藏我的服务器位置
我尝试从 eth0 中删除网关,然后向 eth1 添加一个网关,但是我无法访问互联网,甚至无法 ping 通 eth0。我将 getaway 添加到两个 eth*,然后删除默认路由,然后通过以下方式将路由添加到 eth1 网关
route del default
route add 192.168.10.10 gw 192.168.10.254
但那也失败了!我该如何修复它?
操作系统 Ubuntu 18.04
答案1
这route add 192.168.10.10 gw 192.168.10.254
告诉您的系统仅通过网关 192.168.10.254 路由目的地为 192.168.10.10 的流量。这似乎不是您想要实现的。
您希望通过网关 192.168.10.254 和 dev eth1 路由所有流量(无论目的地如何)
尝试一下这个:route add default gw 192.168.10.254 dev eth1
当有人尝试通过 88.198.xx 访问您的服务器时,您可能会遇到另一个问题。您的服务器将尝试通过其默认路由 eth0 进行响应,而您的本地 IP 192.168.10.10 可能被“natted”(通过您的路由器或 VPN)到不同的公共 IP。尝试访问 88.198.xx 的人将收到来自不同 IP 的数据包作为响应。这行不通。您必须强制通过 eth0 发送对通过 eth0 发出的请求的响应。查看此线程:https://unix.stackexchange.com/questions/4420/reply-on-same-interface-as-incoming