diff --git a/app/models/wds_server.rb b/app/models/wds_server.rb index 2169206ed80dddf3420ea3a9fa01f6f55c85d9b2..3371c7797861010db688253a10b18020635e427e 100644 --- a/app/models/wds_server.rb +++ b/app/models/wds_server.rb @@ -111,9 +111,9 @@ class WdsServer < ApplicationRecord end def next_server_ip - IPSocket.getaddress URI(url).host - rescue SocketError - ::Rails.logger.info "Failed to look up IP of WDS server #{name}" + Resolv.getaddresses(URI(url).host).select { |str| IPAddr.new(str).ipv4? }.first + rescue Resolv::ResolvError => e + ::Rails.logger.info "Failed to look up IP of WDS server #{name}. #{e.class}: #{e}" nil end