C/S模式,TCP/IP协议。没打开防火墙时,可正常通讯。一打开防火墙包就被过滤,请问如何穿透防火墙

解决方案 »

  1.   

    如果你不想改动2边的程序太多,Server端又可以用80端口的话,那么可以考虑使用HTTP隧道技术:
        在你的Client端新建一个负责数据转发的线程,侦听任意可用的端口比如1234,将收到的数据通过HTTP Post方式提交给Server端的80(一般的防火墙设置都允许连远程的80端口),接下来你在你的Server端启一个80端口的HTTP侦听服务,将收到的数据取出后转发给本机的TCP侦听端口处理,得到应答后用Http Response原路返回,你的Client端收到HTTP应答后,再用TCP/IP转发给1234端口处理。现在你的Client传数据的时候就不是连远程主机了,而是连本机的1234。