首页 > 解决方案 > java.net.SocketException:DNS 刷新后未解析的地址

问题描述

今天早上我的 DNS 崩溃了,我不得不刷新所有 DNS 条目并将域指向正确的 IP。在此之后,我所有的 apache 服务和其他服务都按预期恢复了。但不是我的 Java 服务器,它在 DNS 崩溃之前没有问题。

现在每次我尝试运行我的 Java 服务器时,我都会收到以下错误:

2019-10-18 22:18:45.377:INFO::Thread-0: Logging initialized @111ms
2019-10-18 22:18:45.782:INFO:oejs.Server:Thread-0: jetty-9.2.z-SNAPSHOT
2019-10-18 22:18:45.815:WARN:oejuc.AbstractLifeCycle:Thread-0: FAILED ServerConnector@ddf171d{SSL-HTTP/1.1}{app.domain.com:8081}: java.net.SocketException: Unresolved address
java.net.SocketException: Unresolved address
        at sun.nio.ch.Net.translateToSocketException(Net.java:151)
        at sun.nio.ch.Net.translateException(Net.java:177)
        at sun.nio.ch.Net.translateException(Net.java:183)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:76)
        at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:279)
        at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
        at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:218)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
        at org.eclipse.jetty.server.Server.doStart(Server.java:336)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
        at com.domain.px.WebSocket.run(WebSocket.java:55)
        at java.lang.Thread.run(Thread.java:745)
Caused by:
java.nio.channels.UnresolvedAddressException
        at sun.nio.ch.Net.checkAddress(Net.java:121)
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:209)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
        at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:279)
        at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
        at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:218)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
        at org.eclipse.jetty.server.Server.doStart(Server.java:336)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
        at com.domain.px.WebSocket.run(WebSocket.java:55)
        at java.lang.Thread.run(Thread.java:745)

在应用程序的控制台中,我收到以下错误:

WebSocket connection to 'wss://app.domain.com:8081/' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT

对此的任何帮助将不胜感激。

标签: javaubuntuwebsocketjetty

解决方案


这似乎是一个 DNS 传播问题,大约 15-20 小时后 Java 服务器开始正常连接并且不再给出 Unresolved address错误。


推荐阅读