我的伺服器上有 3 個接口,
- 首先用於本地網絡,
- 第二個和第三個是網路連線(每個都有自己的 IP 路由表)。
我如何強制伺服器守護程式和命令列工具使用第一個介面來建立傳出連線。我想為我的伺服器使用與網路中其他電腦相同的 iptables nat 和過濾規則。
eth0 192.168.0.1
eth1 9.9.9.9
eth2 9.9.9.10
我不知道為什麼現在要使用 eth1 進行傳出連線。
答案1
如果你跑
ip route
它將為您提供類似於以下內容的結果:
default via 192.168.0.10 dev eth0 metric 2
127.0.0.0/8 via 127.0.0.1 dev lo
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.106 metric 2
從上面的輸出可以看出,任何通過預設路由的流量都將通過 eth0
所以聽起來你需要做這樣的事情:
ip route delete default via <ip> dev eth1
然後
ip route add default via <ip> dev eth0
如何使此更改永久化取決於您的發行版。