通过限制性出站防火墙建立 TCP 连接
我正在使用 Java 创建一个使用 TCP 进行通信的客户端/服务器应用程序。客户端运行的网络具有出站防火墙,可阻止客户端连接到服务器。有什么方法/解决方法可以通过此防火墙创建 TCP 连接吗?
我尝试使用开放的常见端口,例如端口 80、443 和 113,但是防火墙似乎会在建立连接后断开连接(可能是通过检测非协议数据包)。
另一种方法是让客户端软件作为从外部网站托管的 Java 小程序运行,但我不确定出站防火墙是否仍然能够阻止此连接。
任何帮助将不胜感激。
I'm using Java to create a client/server application that communicates using TCP. The network that the client is running on has an outbound firewall that prevents the client from connecting to the server. Is there any way/workaround to create a TCP connection through this firewall?
I have tried to use common ports that are open such as port 80, 443, and 113, however the firewall appears to drop the connection once it is made (possibly by detecting non-protocol packets).
An alternative would be to have the client software run as a Java applet hosted from an external website, however I'm not sure if the outbound firewall would still be able to block this connection.
Any help would be greatly appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
假设用户可以访问互联网,并且无法通过端口 80/443 进行远程登录,这可能意味着用户通过浏览器中配置的 HTTP 代理进行连接。
您可以尝试通过 HTTP 代理研究各种隧道方法......不过,这将是一个非常不稳定的黑客攻击。
我建议联系系统管理员,解释您的需求,并看看他/她的建议。
Assuming that the users have internet access, and you can't telnet through port 80/443, it probably mean that the users connect through an HTTP Proxy configured in the browser.
You could try to research on various tunneling methods via an HTTP Proxy... Though, that will be a very unstable hack.
I recommend contacting the system administrator, explaining your needs, and see what he/she suggests.
您可以尝试使用 http 或 https 进行通信。通过在这些协议上建立隧道,防火墙可能会让您的流量通过。
You can try to communicate using http or https. By tunneling your protocol over these, it might be possible that the firewall lets your traffic through.