Iptables

使用 iptables 動態地將流量轉發到基於源 IP 地址的虛擬介面

  • December 30, 2017

我正在試驗基於源 IP 地址回復不同結果的 DNS 伺服器設置。同時我需要動態更改外部源ip應該轉發的介面,

eth0    physical inteface   192.168.1.10
eth0:   virtual interface 1   192.168.1.11
eth0:1  virtual interface 2   192.168.1.12

我在我的伺服器上安裝了 bind9,配置了兩個視圖,分別監聽 192.168.1.11 和 12。

在我的設置中,只有面向外部的介面是 eth0,所有客戶端都通過它請求 DNS。我需要根據我的客戶端源 IP 地址將這些請求轉發到我的虛擬介面並動態更改它。

舉個例子

對於場景 1,如果使用者 192.168.1.40 通過 eth0 查詢 DNS,我需要他轉發 eth0: (192.168.1.11)

對於場景 2 相同的使用者 (192.168.1.40) 我需要轉發到 eth0:1 (192.168.1.1)

我想通過在兩個不同的時間使用同一個 dns 伺服器來實現外部使用者可以得到不同的結果。

看看iproute2。您可以輕鬆配置許多路由表並定義處理連接的網路介面,包括解決您的問題。

這裡有一些有用的例子:

參考:

引用自:https://unix.stackexchange.com/questions/413678