需要在 java 中创建一个服务器套接字,它只监听选定的 IP 地址

Need to create a serversocket in java, which listen on only selected IP addresses

我对 java 中的网络有点陌生。 我陷入了一种情况,我需要创建一个服务器套接字,它将只侦听机器中所有可用 IP 中选定的 IP。

我有 8 个 vNIC(接口),名称从 eth0 到 eth7,每个都有自己的 IP。我的服务器套接字应该只监听 eth4、eth5、eth6 和 eth7。

目前我可以看到一个选项,用于侦听特定 IP 或计算机中的任何可用 IP。但我的要求不是任何,而是多个 IP。

此外,我可以看到一个解决方案,其中可以为每个 IP 创建多个套接字。在我的情况下总共有四个插座。

有没有更优雅的方案?

你不能。您可以监听一个 IP 地址,也可以监听所有 IP 地址。没有别的。

您必须为每个 IP 地址创建一个侦听套接字。