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