diff --git a/lib/modules/Protocols.pmod/DNS.pmod b/lib/modules/Protocols.pmod/DNS.pmod
index 9295aa922ac909741bcf08ca0d3e7261f65d1f71..54ed328ac9d296d2505517d46424191ab135ca57 100644
--- a/lib/modules/Protocols.pmod/DNS.pmod
+++ b/lib/modules/Protocols.pmod/DNS.pmod
@@ -416,6 +416,20 @@ class client
 	return RegGetValue(HKEY_LOCAL_MACHINE, key, val);
       };
     }
+
+#if constant(RegGetKeyNames)
+    /* W2K, should be fixed to return results from *all* interfaces
+     * instead of just the first interface. -Hubbe
+     */
+    foreach(RegGetKeyNames(HKEY_LOCAL_MACHINE,
+			   "SYSTEM\\CurrentControlSet\\Tcpip\\Parameters\\Interfaces"), string key)
+      {
+	catch {
+	  return RegGetValue(HKEY_LOCAL_MACHINE,
+			     "SYSTEM\\CurrentControlSet\\Tcpip\\Parameters\\Interfaces\\"+key,val);
+	};
+      }
+			   
   }
 #endif