Nat

“NAT 反向路徑故障”ASA 8.3

  • February 24, 2016

請原諒我,因為我對 ASA 不是很有經驗,但我相信我所配置的應該可以工作。

我有一個執行版本 8.3(2) 的 ASA 5510,它連接到內部、外部和 dmz 網路,以及一個 RA VPN。從 internal/dmz 到 Internet 時,Internal 和 DMZ 網路都配置了動態 NAT。這些動態 NAT 都按預期工作。

嘗試通過 VPN 訪問 DMZ 網路時會出現此問題。

我在 ASA 上收到的錯誤消息指出:

%ASA-5-305013: Asymmetric NAT rules matched for forward and reverse flows; Connection for icmp src outside:x.x.x.x dst dmz: y.y.y.y (type 8, code 0) denied due to NAT reverse path failure

我認為發生這種情況的原因是因為從 DMZ 返回的流量將匹配動態 NAT 規則,並被 nat’d 到外部介面。

因此,我將 DMZ 子網的靜態無 NAT 規則放入 VPN:

nat (dmz,outside) source static DMZ_VLAN DMZ_VLAN destination static VPN VPN

但是…我仍然收到錯誤消息。

現在,這就是我更加困惑的地方。添加該靜態 NAT 後,我的sh nat外觀如下:

1 (inside) to (outside) source static any any destination static VPN VPN description VPN No NAT
   translate_hits = 3, untranslate_hits = 1198

2 (dmz) to (outside) source static DMZ_VLAN DMZ_VLAN destination static VPN VPN
   translate_hits = 0, untranslate_hits = 0

如果我將 DMZ 移動到外部規則上方的內部到外部規則,我可以訪問 DMZ,但我無法從 VPN 訪問內部。

我不確定為什麼這些規則的順序會有所不同,因為如果頂級規則不匹配,它應該繼續沿著列表向下流動。

任何幫助將不勝感激,儘管我的感覺告訴我,我只是在某個明顯的地方犯了一個愚蠢的錯誤。

編輯:更多資訊。

介面安全等級:

內部:100

dmz:50

外部:0

NAT 規則來自show run nat

nat (inside,outside) source static any any destination static VPN VPN description VPN No NAT
nat (dmz,outside) source static DMZ_VLAN DMZ_VLAN destination static VPN VPN

object network DMZ_VLAN
nat (dmz,outside) dynamic interface

object network In_VLAN
nat (inside,outside) dynamic interface

訪問列表不應該像我一樣應用,sysopt connection permit-vpn除非我誤解了這個命令,它應該啟用來自 VPN 的流量,而不考慮 ACL。

此外,正在檢查 ICMP 流量,因此返回流量應該返回而不受訪問列表的影響(同樣,除非我誤解了流量檢查)

網路:

內部:10.1.4.0/24

DMZ:10.1.254.0/24

VPN:10.1.10.0/24

Packet-tracer從 DMZ 到 VPN

Type: NAT
Subtype: 
Result: ALLOW
Config:
nat (dmz,outside) source static DMZ_VLAN DMZ_VLAN destination static VPN VPN
Additional Information:
Static translate 10.1.254.1/0 to 10.1.254.1/0

packet-tracer一直到最後,“允許”一直到最後。

固定的!

我不完全確定導致問題的原因,但這似乎正在發生。

讓我們再次回顧一下 NAT 規則。

nat (inside,outside) source static any any destination static VPN VPN
nat (dmz,outside) source static DMZ_VLAN DMZ_VLAN destination static VPN VPN

請注意(應該)對不同介面執行相同操作的兩個規則之間的區別。

頂部 NAT 像這樣any any

似乎一直在發生的問題是,當流量從 VPN 進來時,ASA 似乎會在決定通過防火牆的路徑之前通過它的 NAT。所以它會根據頂級 NAT 檢查流量,它匹配,因為它肯定是從 VPN 到任何.. 而返回流量將從 DMZ_VLAN 到 VPN,因此不匹配頂級規則。

我不確定匹配第一個 NAT 是否會導致 ASA 將流量定向到內部,或者它是否只是意識到出站流量將匹配不同的 NAT。

一旦我將頂級 NAT 規則修改為更具體:

nat (inside,outside) source static IN_VLANS IN_VLANS destination static VPN VPN

一切正常!

奇怪的問題..但似乎故事的寓意是對所有事情都具體化,即使你認為它不會引起任何問題..因為它可以。

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