gpt4 book ai didi

Spring Boot 应用程序在没有 -Djava.net.preferIPv4Stack=true 和 -Djava.net.preferIPv4Addresses 参数的情况下监听 IPv6

转载 作者:行者123 更新时间:2023-12-03 14:58:36 27 4
gpt4 key购买 nike

我关于 Spring Boot jar 的问题。
在生产机器上运行 jar 时:

java -jar xyz.jar

它不响应我的请求。因为它正在监听 ipv6。

但是当我运行应用程序时
java -jar xyz.jar -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses

它响应了我的请求。

是生产机器的配置导致应用程序监听ipv6,还是有其他原因?

幸运的是
-Djava.net.preferIPv4Stack=true
-Djava.net.preferIPv4Addresses

参数解决了我的问题。但我很困惑!!
注意:Tomcat 用作嵌入式服务器。
Spring Boot 1.5.4 版本发布

最佳答案

这里https://docs.oracle.com/javase/8/docs/technotes/guides/net/ipv6_guide/index.html我读到“Java 网络堆栈首先检查底层操作系统是否支持 IPv6。如果支持 IPv6,它会尝试使用 IPv6 堆栈。”

要检查您的 Linux 机器是否支持 IPv6,只需运行“cat/proc/net/if_inet6”,如果您看到一些输出,则表示它已启用。

关于Spring Boot 应用程序在没有 -Djava.net.preferIPv4Stack=true 和 -Djava.net.preferIPv4Addresses 参数的情况下监听 IPv6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44718174/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com