NAT连通性测试工具以及Flash P2P中的NAT穿透原理
NAT是在传输层及以上做的,传输层最主要的2个协议是TCP和UDP。对于TCP和UDP而言,每个包都有很基本的4个要素:src ip、src port、dst ip、dst port。 根据在做NAT的时候是否保留src ip和src port,可以把NAT分为这么三种: Cone: 将src ip映射到一个固定的IP,并且将src port映射到一个固定的Port,无论dst ip和dst port是什么。 Single IP address, symmetric:将src ip映射到一个固定的IP,将src port映射到一个随机的port,但是保证对于相同的(dst ip,dst port), src port始终相同。(否则双方没法通话啊,回来的包回给哪个端口呢?) Multiple IP address, symmetric:与上面类似,但是src ip可能会有多个。