如何透過預設系統閘道路由特定 IP 位址?

如何透過預設系統閘道路由特定 IP 位址?

我透過 Wireguard VPN 發送所有流量,但我需要設定例外。發送到我自己的公共IP的資料包必須經過系統的預設閘道。

如果我將其添加到核心路由中,它就會按預期工作: route add X.X.X.X gw 192.168.1.254。但是,當然,我在這裡對路由器的網關進行硬編碼,如果我連接到任何其他網絡,它就無法工作。如何推廣此行為,以便始終透過預設閘道發送定向到 XXXX 的資料包?也許使用 iptables 而不是添加核心路由會更好?

答案1

您可以使用變數:

defaultGW=$(/sbin/ip route | awk '/default/ { print $3 }')

然後:

route add X.X.X.X gw $defaultGW


也許您應該開始使用ip route,它是route.

相關內容