问题如下:
我有两台机器,一个是内网 机器A,一个是外网 机器B。
1.B上所跑的程序是联通短信平台,无法观察现场。
2.B向A所在的公网IP的22222端口发送tcp请求。
3.A所在的公网路由上做了映射,该映射将公网IP:2222映射到A:22222.
4.在A上建立监听端口22222
问题:A上所跑的程序无法接收到数据。补充,A可以通过tcp协议发送信息到B,B接收到信息后,会断开连接,某些情况下B会主动发起连接到A上(此时不通)。
请问上面3,4步有没有错,或者有什么需要补充的地方?

解决方案 »

  1.   

    楼主需要搞清楚内网和外网的区别。内网访问外网比较容易,直接通过IP进行tcp连接就可以了,一旦连接上,在关掉之前,内网和外网是可以进行通讯的,一旦关闭外网就会寻找不到内网。不过有的路由器会暂时记录这一个映射,在这个时间段内,外网通过这个映射可以连接到内网。最好不要采取这种方法,如果要保持内外网机器通讯的话,建议不要断开连接,一直保持tcp的会话;或者连接时内网主动连接外网。