Debian

Debian etch:如何糾正錯誤的 iptables/NAT

  • November 17, 2010

我在 Debian Etch 機器上遇到了問題……由於黑暗和暴風雨的原因,它在 eth0 上的 ip 很奇怪,但我們必須保持這樣……

它的ifconfig:

eth0      Link encap:Ethernet            
         inet addr:128.0.0.250    Mask:255.255.0.0 

eth1      Link encap:Ethernet  
         inet addr:192.168.1.250  Mask:255.255.255.0

使用命令:

iptables –t nat –L POSTROUTING

我得到:

target                prot      opt       source              destination
ACCEPT                0         --        128.0.0.2           anywhere
MASQUERADE            0         --        !192.168.1.0/24    anywhere

第二條規則,如果我理解正確的話,對所有與 192.168.1.0/24 不同的流量進行 nat。換句話說,所有發往我有路由規則的區域網路的數據包都是從 Debian Etch 的機器 ip 發送的,失去了真正的發件人。

我希望這台機器不要對不通過它的流量進行 NAT。我會嘗試更清楚…它應該只 NAT 來自 128.0.0.250(它的 ip)並從 192.168.1.250 出去的流量。

我最近在學習 linux,這有點太多了:/ 任何人都可以幫忙(也許可以指導備份配置,這樣我就可以在完全混亂的情況下安全)?

非常感謝!

您可以使用以下命令備份目前的 iptables 配置:

iptables-save >iptables-20101117

這將保存目前執行的規則,這些規則可以通過以下方式恢復:

iptables-restore <iptables-20101117

“iptables -L”命令並未列出有關規則的所有資訊,包括介面限制等資訊,因此我們可能無法在此處看到完整的圖片。我通常會查看“iptables-save”的輸出以確保看到完整的規則資訊。

就規則而言,不應有來自其內部 128 IP 地址並從 192 介面流出的流量。離開 192 介面的流量應綁定到 192 介面 IP 地址。因此,如果您不想要 MASQUERADE 規則,您可以將其刪除。

我通常通過編輯文件並在完整規則集上使用 iptables-restore 來更改規則。iptables-restore 是原子的,因此可以立即應用全套新規則。

引用自:https://serverfault.com/questions/202824