在 openvpn 中停用 NAT

在 openvpn 中停用 NAT

我遇到了與此類似的問題: 沒有 NAT 的 OpenVPN

好像還沒有回答。

我的情況描述:我在網路A 上有​​一個openvpn 伺服器,另一個管理員在離開公司之前安裝了該伺服器,現在有幾個用戶和伺服器連接到該openvpn 伺服器來存取網路A 並進行NAT,因此來自vpn 使用者/伺服器的所有請求都具有來自 openvpn 伺服器的來源位址。

現在我需要網路 A 上的一台伺服器來存取 openvpn 用戶端/伺服器之一,並希望在 openvpn 中停用 NAT 以公開這些客戶端和伺服器的「vpn 內部」IP 位址。

我知道我需要在網絡A 上添加一條路由來訪問vpn 網絡,這對我來說很清楚,但我不知道如何在openvpn 中禁用NAT,而且也沒有存在IPtables 規則,因此某些openvpn 內部NAT 機制似乎在使用。

我需要檢查哪些選項才能停用 NAT?

答案1

在 OpenVPN 伺服器上必須有這樣的規則

        iptables -t nat -A POSTROUTING -i tun0 -j MASQUERADE

你可以找到它

      iptables-t nat -L -n -v

你必須禁止這條規則。

如果,正如你所說(但你跑了

      iptables -t nat -L -n -v

仔細檢查是否有 iptables 規則在起作用? ),唯一的其他可能性是 natting 是透過套件完成的iproute2。做

    cat /etc/iproute2/rt_tables

記下您擁有的表格的名稱,然後發出

     ip route table TABLE_NAME | grep ^nat

看看是否能找到一些輸出。如果這樣做,則表示資料包標頭被iproute2命令重寫ip route add nat ..。您所需要做的就是刪除有問題的路由表。

這是兩種可能,第三非達圖爾

現在,您需要為路由器新增一條規則,以透過 OpenVPN 伺服器路由 OpenVPN 子網路 10.0.0.0/24 的封包(假設它的 IP 位址為 192.168.0.127)。如果路由器是 Linux 機器,則執行下列命令:

       ip route add 10.0.0.0/24 via 192.168.0.127

大多數路由器(例如 Cisco 的路由器)都具有Advanced routing可在其 GUI 中找到的功能。您應該使用它來指定上面的路線。

相關內容