我们的一个Java程序在启动时,只监听IPv6(8080)。
# netstat -ntpl
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
tcp6 0 0 :::8080 :::* LISTEN -
tcp6 0 0 :::22 :::* LISTEN -
问题是它不能从外部访问(除了localhost),为了解决这个问题,我手动添加了以下内容
-Djava.net.preferIPv4Stack=true
但这使得该程序只适用于IPv4网络。
Is it possible to do something like the sshd如上,都支持IPv4和IPv6?