牵着老婆满街逛

严以律己,宽以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

P2P之UDP打洞原理、应用及框架设计

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开始分配端口号
 
 
 
待续

posted on 2007-08-21 00:37 杨粼波 阅读(957) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理