同事求助,在使用easyconnect后,使用postman、浏览器、shell方式访问http地址,都可以成功,但是java程序中一直显示 connect timed out。

解决方法

在java启动时,增加参数:

java -Djava.net.preferIPv4Stack=true -jar xxx.jar

应该是在默认情况下,如果支持ipv6,会以ipv6进行网络通信,但是easyconnect阻止了ipv6的通信(可能是easyconnect不支持ipv6)。

参数-Djava.net.preferIPv4Stack=true表示仅仅使用ipv4,禁用ipv6。