不知道下一跳的静态路由(linux)

alc*_*lci 5 networking linux routing bridge iproute2

我在 linux 路由器中有一个eth3接口,带有一个 adsl 调制解调器。此 adsl 调制解调器处于桥接模式,因此将公共 IP 分配给 eth3(例如 11.22.33.44),而我的服务器看不到该调制解调器。

我想通过 eth3定义到特定 IP (88.191.250.176)的静态路由,但我没有要设置的 nexthop:

ip route add 88.191.250.176 dev eth3
Run Code Online (Sandbox Code Playgroud)

被接受但不起作用(数据包永远不会出去)。

ip route add 88.191.250.176 via 11.22.33.44 dev eth3
Run Code Online (Sandbox Code Playgroud)

也不行

如果我将调制解调器设置为路由器模式,那么我就有了 linux 服务器的 NATed 地址 (192.168.1.2) 和 Adsl 路由器的 IP 地址 (192.168.1.1),我可以这样做:

ip route add 88.191.250.176 via 192.168.1.1 dev eth3
Run Code Online (Sandbox Code Playgroud)

行得通。

是否可以在桥接模式(第一种情况)下通过我的 adsl 调制解调器定义静态路由,而无需提供明确的下一跳?

Geo*_*ord 5

流量必须通过 ISP 的网关。如果 eth3 已分配您的公共 IP,则默认网关地址应列在您的路由表中:

ip route show table main
Run Code Online (Sandbox Code Playgroud)

然后你需要发出

ip route add 88.191.250.176 via <gatewayip> dev eth3
Run Code Online (Sandbox Code Playgroud)

然后它应该可以工作。