Cisco ASA和Juniper SRX/NetScreen的不同默認分片策略

這幾今天一直在研究思科和Juniper防火牆建立IPSec ***的MTU問題,

底層基礎可以參考思科官方的這篇文章,講解的十分詳細:

http://www.cisco.com/c/en/us/support/docs/ip/generic-routing-encapsulation-gre/25885-pmtud-ipfrag.html

順便介紹Linux和Windows下兩個測試Path MTU的兩個小工具:http://packetlife.net/blog/2008/aug/18/path-mtu-discovery/


但是瞭解這些理論之後,我在測試的時候發現哪怕兩臺Juniper防火牆(SRX和Netscreen)之間配置了IPSEC ***,但是MTU仍然是1500(當然DF=1),考慮到ESP和新的包頭,這顯然不科學(思科ASA之間建立同樣的IPSEC ***,MTU爲1438)。


於是找到了下面兩篇文章:

http://rtoodtoo.net/ipsec-tcp-mss-df-bit-and-fragmentation-in-srx/

https://kb.juniper.net/InfoCenter/index?page=content&id=kb15263&actp=search

Juniper防火牆默認情況下會重置客戶端數據包的DF位,因此即便ping包的數據超過1472,還要經過IPSEC ***,並且設置爲不能分片(DF=1),其也能順利通過IPSEC ***。


但是思科默認是清除DF位的,因此如果數據+IPSEC封裝超過MTU,那麼就會丟包,可以參考下面這篇文章:

http://www.cisco.com/c/en/us/td/docs/security/asa/asa-command-reference/A-H/cmdref1/c6.html

具體配置請參考給出的文章,這裏不過多列舉這種命令,但是需要注意如果想要修改思科ASA清除DF位,那麼應該同時修改接口和crypto map。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章