from:http://backhead.spaces.live.com/blog/cns!62bfa6c80ca756f3!134.entry
一、NAT類型
大多數NAT可分為如下類型
cone nat:把相同的內網地址和端口始終轉換為同一個外網地址和端口
如192.168.0.2:8000始終轉為外網的218.52.37.243:60000,在此session的生命期內,不管目的ip地址和端口是什么,轉化的外網地址都不變
symmetric:相同的內網地址和端口,在對端的地址端口不同時,轉變為不同的外網地址和端口
如192.168.0.2:8000給地址A和地址B發包時,轉化為不同的外網端口60000和60001,對應兩個session
nat具有攔截不速之客的功能,從數據包進入內網受限的角度上分,cone nat又分為如下幾種
1 full cone 幾乎沒有任何限制,任何地址都可以往轉化后的外網地址發包,nat會允許數據包通過
2 restrict cone nat 只允許相同ip地址的主機發的包通過
3 port restrict cone 只允許相同ip地址,相同端口的包通過
symmetric nat在限制方面和port restrict cone是一致的
二、比較流行的nat的一些特性
iptables:symmetric nat,轉化后的外網端口盡量為內網原端口,本端口被占用時,新分配的端口號似乎并無規律(不是累+1的)
windows ics/nat:對內網端口(1025-3000)的端口盡量轉換為原端口,該端口被占用或者超過3000的端口時,很可能從1025開始分配端口號
待續