Jetty远程调试侦听0.0.0.0?

时间:2016-01-07 08:09:06

标签: jetty remote-debugging tcp-ip

我正在尝试远程调试webapp。按照这个码头document的指示。我得到了这样的java进程。

jetty     9682  0.4  2.2 4433620 87568 ?       Sl   15:52   0:03 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64/jre/bin/java -Xdebug -agentlib:jdwp=transport=dt_socket,address=12000,server=y,suspend=n -Djava.io.tmpdir=/tmp -Djetty.home=/opt/jetty -Djetty.base=/opt/jetty

但该过程仅侦听0.0.0.0。

以下是netstat -an

的输出
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State
tcp        0      0 0.0.0.0:12000               0.0.0.0:*                   LISTEN 

所以我无法在其他IP上连接此端口。

我的问题是如何发生这种情况以及如何解决这个问题?

编辑:我错了。我对netstat的输出感到困惑。因为端口8080的输出是

tcp        0      0 :::8080                     :::*                        LISTEN 

我终于意识到这可能是由防火墙造成的。我通过将此端口添加到iptables来解决了这个问题。

1 个答案:

答案 0 :(得分:0)

  

0.0.0.0表示"本地计算机上的所有IPv4地址"。如果主机有两个IP地址192.168.1.1和10.1.2.1,并且主机上运行的服务器侦听0.0.0.0,则可以在这两个IP上访问它。

来自:https://en.wikipedia.org/wiki/0.0.0.0

Is binding to 0.0.0.0 in Java guaranteed to bind to all network interfaces?

的更多信息
相关问题