diff --git a/server/src/main/java/org/elasticsearch/common/network/NetworkUtils.java b/server/src/main/java/org/elasticsearch/common/network/NetworkUtils.java index 6a49f0d7658d4..c3e8209463488 100644 --- a/server/src/main/java/org/elasticsearch/common/network/NetworkUtils.java +++ b/server/src/main/java/org/elasticsearch/common/network/NetworkUtils.java @@ -172,6 +172,10 @@ private static boolean isUp(final NetworkInterface intf) throws IOException { try { return intf.isUp(); } catch (final SocketException e) { + // virtual ethernet devices come and go, we will treat such a device that disappeared as not being up + if (intf.getName().startsWith("veth") && e.getMessage().equals("No such device (getFlags() failed)")) { + return false; + } throw new IOException("failed to check if interface [" + intf.getName() + "] is up", e); } }