做了一个UDP的程序
放到外网上测试有的通 有的就不通 不通的时候 一个包都收不到应该不是程序的问题 曾经测试过广州电信到哈尔滨联通 都没有问题
但是广州电信到珠海电信就有问题然后有特定的测试了一下
发现A-C 正常 (A机器与其他机器也正常)
B-C 正常 (B机器与其他机器也正常)但是A-B却不正常按理说 这肯定不是防火墙或者端口之类的问题吧如果是这类问题的话  那A 或者是B  是任何时候都不会通的 
大家帮我分析下 还有可能是什么原因呢?
已经测了好多天了  各种试啊各种试啊....

解决方案 »

  1.   

    建议
    1)先要测试A-B是不是通的,比如试试ping下
    2)在A-B通的下,使用其他的UDP通信软件测试下,
       如果也是OK的,那就可以怀疑是你写的程序问题
       如果不行,那就要定位A-B之间为什么UDP不能通信的,这个和你的程序就没有关系了
      

  2.   

    UDP不保证数据的完整性会丢包的
      

  3.   

    考虑ping 能否通,考虑防火墙等,
    C不一定有防火墙,但A和B就可能有了[我遇到过相似的情况]
      

  4.   

    比较可能的问题是,防火墙或者NAT。A-B之间,一般是没问题能够通信的。但是,
    有些防火墙,只允许出站连接,不允许入站连接。
    注:出站连接,也是可以双向通信的。NAT会将网络地址进行转换,所以,编程的时候也要捎带考虑这种情况。
    注:如果双方都存在NAT,就要通过第三方“打孔技术”进行辅助通信了。