綁定到具有多個網關的 Linux 伺服器上的特定網路介面

綁定到具有多個網關的 Linux 伺服器上的特定網路介面

我正在嘗試在本地計算機上運行伺服器程式。它有 2 條通往 Internet 的路由:

  • 10.0.0.1/24oneth0是連接速度最快的介面上的網關和子網路;但是,防火牆阻止我存取綁定到 TCP 連接埠的任何伺服器。
  • 10.8.0.1/24oneth1是較慢介面上的網關和子網路;但是,我可以控制網關設備,並且能夠透過它成功進行連接埠轉發,並且伺服器在 Internet 上可見。

在我的機器上,我有以下路線:

default via 10.0.0.1 dev eth0 src 10.0.0.x metric 203 default via 10.8.0.1 dev eth1 metric 800 10.8.0.0/24 dev eth1 proto kernel scope link src 10.8.0.y 10.0.0.0/24 dev eth0 proto kernel scope link src 10.0.0.x metric 203

顯然,一般情況下,via 路線eth0優先;但是,為了使我的伺服器進行連接埠轉發,它需要使用eth1介面上的預設網關沒有透過相同介面重定向所有其他流量。

到目前為止我所嘗試的是將伺服器綁定到該位址,10.8.0.y這意味著它只接受目的地是該 IP 位址的連接。但是,它不適用於相反方向的路由流量。我已經使用tcpdump -i eth1 -p 25561正在接收入站連接進行了驗證,但是在監視兩者時,eth0eth1沒有看到出站回复。如果沒有收到回复,遠端客戶端上的連線將逾時。

有其他人嘗試過做類似的事情並且可以提供一些關於我需要如何設置它的見解嗎?

相關內容