我有一台用Java编写的ServerSocket服务器。Java + ServerSocket +防火墙
而且我有一个客户端,它是一个企业防火墙,它阻止了除公共端口之外的所有内容。
我已经在SMTP端口上启动了服务器(#25)。
带防火墙的用户连接到它,到目前为止一切正常。
然后服务器处理ServerSocket.accept()。据我了解,它在随机端口上创建一个套接字(每次端口号不同)。由于防火墙而失败。
我的问题是 - 我如何让ServerSocket.accept()从我的白名单中选择一个套接字端口?我知道它不适合大规模在线使用,但我想让我的朋友能够连接到我的服务器。
可能吗?如何?
我认为你需要使用像朋友一边的袜子:http://en.wikipedia.org/wiki/SOCKS。假设您的家中没有配置问题,您必须允许出站服务器通信。 – Picarus