Index: uClibc-0.9.29/libc/inet/resolv.c
===================================================================
--- uClibc-0.9.29.orig/libc/inet/resolv.c	2009-10-13 11:54:37.000000000 +0200
+++ uClibc-0.9.29/libc/inet/resolv.c	2009-10-13 11:57:24.000000000 +0200
@@ -2070,6 +2070,7 @@
 	    return NETDB_SUCCESS;
 	}
 
+        int nameserverretry = 0;
 	for (;;) {
 
 	    __UCLIBC_MUTEX_LOCK(__resolv_lock);
@@ -2081,6 +2082,15 @@
 	    a.add_count = 0;
 	    i = __dns_lookup(name, T_A, __nameserversXX, __nameserverXX, &packet, &a);
 
+            if (i<0 && !nameserverretry)
+            {
+                nameserverretry++;
+                __close_nameservers();
+                __open_nameservers();
+                continue;
+            }
+
+
 	    if (i < 0) {
 			*h_errnop = HOST_NOT_FOUND;
 			DPRINTF("__dns_lookup\n");
