两台局域网主机之间借助公网服务器后直接使用udp通讯问题。请高手指点! (100分)

  • 主题发起人 主题发起人 davisneilp
  • 开始时间 开始时间
D

davisneilp

Unregistered / Unconfirmed
GUEST, unregistred user!
我的想法是借助一台公网服务器s后,两台局域网内部主机可以相互使用udp直接通讯,

具体:
a(内网主机1,ip :192.168.168.3)
a的gateway(代理)ip :192.168.168.1 (外部ip :202.138.2.100)
公网主机s: ip :211.20.3.2 server port :20000
b(内网主机2,ip: 10.3.2.100
b的gateway(代理)ip:10.3.2.1(外部ip:63.22.2.1)

首先:a建立udp socket 侦听 10000 端口,发送信息到s
s收到的信息是:202.138,2.100的23355端口发来的。。
这时候s可以用这个接受包的socket 发到202.138.2.100的23355端口,这时a可以收到信息的。
a的gateway的NAT映射是:192.168.168.3:10000 <->211.20.3.2:20000

类似:
b建立udp socket 侦听 10002 端口,发送信息到s
s收到的信息是:63.22.2.1的37788端口发来的。。
这时候s可以用这个接受包的socket 发到63.22.2.1的37788端口,这时b可以收到信息的。
b的gateway的NAT映射是:10.3.2.100:10002 <->211.20.3.2:20000

怎么做,才可以让a发给b信息,b可以直接收到呢????
就是如何建立如下nat映射:10.3.2.100:xxxxx<->202.138.2.100:yyyyy
或者192.168.168.3:ppppp<->63.22.2.1:qqqqq

谢谢!!
请高手指点!
 
像QQ一样
 
可以都在S主机上登记各自的端口号码,A、B接受使用自己登记的固定端口,发送就使用
从S主机数据库中获得的对方的端口,很简单的问题何别搞的特复杂呀?
 
to haczcg:
你说的想法,我早就实验了,是不行的。
不信你自己试试!
 
后退
顶部