Client A和 Client B 都是在内网, Client A与Client B可以与Server S通信了。如果Client A此时想直接发送信息给Client B,那么他可以从Server S那儿获得B的公网地址187.34.1.56:40000,是不是Client A向这个地址发送信息Client B就能收到了呢?答案是不行,因为如果这样发送信息,NAT B会将这个信息丢弃(因为这样的信息是不请自来的,为了安全,大多数NAT都会执行丢弃动作)。
我想问 是什么原因使NAT把这个数据包丢弃。 或者说,怎样才认为这个包是不请自来的。
我想问 是什么原因使NAT把这个数据包丢弃。 或者说,怎样才认为这个包是不请自来的。
具体可查找关于NAT原理的一些帖子
http://midcom-p2p.sourceforge.net/draft-ford-midcom-p2p-01.txt
参考UDP Hole Punching