WINSOCK做的聊天程序在局域网正常,广域网连接请教
我有固定的公网IP,需要怎么设置?

解决方案 »

  1.   

    如果有公网IP,那就和局域网一样啊,就是把局域网IP换成公网IP就行了
      

  2.   

    我最近也在研究这个问题,如果A机与B机通信,A、B都是公网IP自不用说,与局域网一样。如A、B机任意有一个具有公网IP,就可以令不具有公网IP的向有公网IP的发出链接请求以建立连接(TCP),或向端口发出信息(UDP)。如果双方都在网关后的话,就很麻烦了。可能要用NAT端口映射了,A发出一条信息告诉一个中转服务器C,然后C就知道了A在NAT映射的ip和端口,C将这个ip和端口告诉B,再由B向A映射的ip和端口发出信息。但NAT的映射是有时间限制的,时间久了没有通讯映射会改变,所以A应该定时向外发送封包。(像QQ一样)
      

  3.   

    一台公网固定IP的机器上安装一个server  用tcp  listen
    winsock用数组
    index为0的用30000端口TCP监听
    用后面的接受监听
    这样就可以聊天了
    信息由server中转
      

  4.   

    补充一句,TCP不容易丢包,UDP丢包严重,特别是网速慢的情况
      

  5.   

    TCP对包的接收顺序有协议的规定,先发先到;
    UDP可能会后发先到,但可以自己控制的.
      

  6.   

    把你做的能不能给一份,让我学习学习
    [email protected]