如何将java监听接口从localhost更改为IP地址?

时间:2015-04-14 15:59:27

标签: java agents-jade

如标题所述,我如何将java监听接口从localhost更改为IP地址。 因为此命令netstat -tulpn显示:

tcp     0      0 127.0.0.1:7778     0.0.0.0:*     LISTEN      23958/java

我想在不使用套接字的情况下将127.0.0.1更改为192.168.1.1,例如在java配置文件或jade文件中指定它。

我想这样做是为了使该端口可以访问以允许移动代理从远程机器迁移到该机器。

3 个答案:

答案 0 :(得分:2)

如果您使用ServerSocket,则必须使用three-argument constructor来执行此操作;第三个参数是该套接字的监听地址。

ServerSocketChannel等存在类似的构造函数/工厂方法。

答案 1 :(得分:2)

为了拥有一个除loopback / localhost地址以外的地址的监听器,必须有一个可用的网络接口来监听。如果您在计算机上没有其他网络适配器,我就不会看到您将如何完成任务。

如果您有其他网络适配器,请使用NetworkInterface.getNetworkInterfaces()获取机器必须提供的所有可用适配器,并选择您想要设置监听器的适配器。

此SO线程应该为您提供有关获取可用网络适配器的一些信息。 How to enumerate IP addresses of all enabled NIC cards from Java?

如果您想要使用localhost作为侦听器,因为您在本地计算机上有需要与服务器通信的应用程序,为什么使用环回地址不适合您?

答案 2 :(得分:1)

问题在于/ etc / hosts中的配置。 所以我通过正确配置来解决它