我有一个使用 ServerSocket 用 Java 编写的服务器。
我有一个客户端,它通过公司防火墙阻止除公共端口之外的所有内容。
我已经在 SMTP 端口 (#25) 上启动了服务器。
有防火墙的用户连接到它,到目前为止一切正常。
然后服务器处理 ServerSocket.accept()。据我了解,它会在随机端口上创建一个套接字(每次端口号都不同)。并且由于防火墙而失败。
我的问题是 - 我怎样才能让 ServerSocket.accept() 从我的白名单中为套接字选择一个端口?我知道它不适合大规模在线,但我想让我的一个朋友能够连接到我的服务器。
可能吗?如何?