Hello, When I set on samba DC: dns forwarder = DNS1 DNS2 and DNS1 is down, then when I query samba for name resolution, it takes more than 10 seconds to samba to ask DNS2 and reply the query. So every client that tries to resolve name outside domain waits more than 10 seconds for a reply for each query. It makes normal work nearly impossible and renders the feature of having more than 1 DNS forwarder practically useless. Expected result: If DNS1 is down, and samba doesn't get reply, then DNS2 is queried in much shorter time eg. 1 or 2 seconds. The best would be to have it configurable. Best regards, Olaf Frączyk
Here is the strace of samba process, as you see, when DNS1 is down the whole operation takes 30 seconds, 20 seconds till the client gets whole reply: DNS1 is 192.168.217.131 DNS2 is 192.158.217.121 The DC is 192.168.217.135 The asking client is 192.168.217.17 [root@vh4 Desktop]# date ; nslookup wiocha.pl 192.168.217.135 ; date Thu Jun 20 11:50:52 PM CEST 2024 Server: 192.168.217.135 Address: 192.168.217.135#53 Non-authoritative answer: Name: wiocha.pl Address: 188.165.20.150 Name: wiocha.pl Address: 51.255.52.131 Thu Jun 20 11:51:12 PM CEST 2024 [root@vh4 Desktop]# [{events=EPOLLIN, data={u32=3552495520, u64=94823545489312}}], 1, 30000) = 1 23:50:52.624834 ioctl(48, FIONREAD, [27]) = 0 23:50:52.624890 recvfrom(48, "V\315\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\1\0\1", 27, 0, {sa_family=AF_INET, sin_port=htons(45264), sin_addr=inet_addr("192.168.217.17")}, [128 => 16]) = 27 23:50:52.625055 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 53 23:50:52.625124 fcntl(53, F_GETFL) = 0x2 (flags O_RDWR) 23:50:52.625190 fcntl(53, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:50:52.625260 fcntl(53, F_GETFD) = 0 23:50:52.625324 fcntl(53, F_SETFD, FD_CLOEXEC) = 0 23:50:52.625374 connect(53, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.131")}, 16) = 0 23:50:52.625465 sendto(53, "\200\365\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\1\0\1", 27, 0, NULL, 0) = 27 23:50:52.625571 gettimeofday({tv_sec=1718920252, tv_usec=625601}, NULL) = 0 23:50:52.625651 epoll_ctl(7, EPOLL_CTL_ADD, 53, {events=EPOLLIN|EPOLLRDHUP, data={u32=3542046208, u64=94823535040000}}) = 0 23:50:52.625716 gettimeofday({tv_sec=1718920252, tv_usec=625754}, NULL) = 0 23:50:52.625780 epoll_wait(7, [{events=EPOLLIN, data={u32=3552495520, u64=94823545489312}}], 1, 10000) = 1 23:50:57.625637 ioctl(48, FIONREAD, [27]) = 0 23:50:57.625694 recvfrom(48, "V\315\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\1\0\1", 27, 0, {sa_family=AF_INET, sin_port=htons(45264), sin_addr=inet_addr("192.168.217.17")}, [128 => 16]) = 27 23:50:57.625909 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 54 23:50:57.626005 fcntl(54, F_GETFL) = 0x2 (flags O_RDWR) 23:50:57.626109 fcntl(54, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:50:57.626242 fcntl(54, F_GETFD) = 0 23:50:57.626353 fcntl(54, F_SETFD, FD_CLOEXEC) = 0 23:50:57.626468 connect(54, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.131")}, 16) = 0 23:50:57.626617 sendto(54, "\235\312\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\1\0\1", 27, 0, NULL, 0) = 27 23:50:57.626745 gettimeofday({tv_sec=1718920257, tv_usec=626768}, NULL) = 0 23:50:57.626827 epoll_ctl(7, EPOLL_CTL_ADD, 54, {events=EPOLLIN|EPOLLRDHUP, data={u32=3555993104, u64=94823548986896}}) = 0 23:50:57.626907 gettimeofday({tv_sec=1718920257, tv_usec=626950}, NULL) = 0 23:50:57.626992 geteuid() = 0 23:50:57.627111 geteuid() = 0 23:50:57.627240 newfstatat(AT_FDCWD, "/var/log/samba/log.samba", {st_mode=S_IFREG|0644, st_size=9972, ...}, 0) = 0 23:50:57.627361 geteuid() = 0 23:50:57.627439 epoll_wait(7, [{events=EPOLLIN, data={u32=3552495520, u64=94823545489312}}], 1, 4999) = 1 23:51:02.626540 ioctl(48, FIONREAD, [27]) = 0 23:51:02.626597 recvfrom(48, "V\315\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\1\0\1", 27, 0, {sa_family=AF_INET, sin_port=htons(45264), sin_addr=inet_addr("192.168.217.17")}, [128 => 16]) = 27 23:51:02.626786 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 55 23:51:02.626874 fcntl(55, F_GETFL) = 0x2 (flags O_RDWR) 23:51:02.626944 fcntl(55, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:51:02.627038 fcntl(55, F_GETFD) = 0 23:51:02.627102 fcntl(55, F_SETFD, FD_CLOEXEC) = 0 23:51:02.627218 connect(55, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.131")}, 16) = 0 23:51:02.627367 sendto(55, ";N\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\1\0\1", 27, 0, NULL, 0) = 27 23:51:02.627469 gettimeofday({tv_sec=1718920262, tv_usec=627496}, NULL) = 0 23:51:02.627567 epoll_ctl(7, EPOLL_CTL_ADD, 55, {events=EPOLLIN|EPOLLRDHUP, data={u32=3558443248, u64=94823551437040}}) = 0 23:51:02.627656 gettimeofday({tv_sec=1718920262, tv_usec=627685}, NULL) = 0 23:51:02.627728 epoll_ctl(7, EPOLL_CTL_DEL, 53, 0x7ffe5372d454) = 0 23:51:02.627784 close(53) = 0 23:51:02.627892 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 53 23:51:02.627965 fcntl(53, F_GETFL) = 0x2 (flags O_RDWR) 23:51:02.628052 fcntl(53, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:51:02.628140 fcntl(53, F_GETFD) = 0 23:51:02.628241 fcntl(53, F_SETFD, FD_CLOEXEC) = 0 23:51:02.628292 connect(53, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, 16) = 0 23:51:02.628423 sendto(53, "\363\357\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\1\0\1", 27, 0, NULL, 0) = 27 23:51:02.628539 gettimeofday({tv_sec=1718920262, tv_usec=628571}, NULL) = 0 23:51:02.628627 epoll_ctl(7, EPOLL_CTL_ADD, 53, {events=EPOLLIN|EPOLLRDHUP, data={u32=3542046208, u64=94823535040000}}) = 0 23:51:02.628745 gettimeofday({tv_sec=1718920262, tv_usec=628779}, NULL) = 0 23:51:02.628825 epoll_wait(7, [{events=EPOLLIN, data={u32=3542046208, u64=94823535040000}}], 1, 4998) = 1 23:51:02.628911 ioctl(53, FIONREAD, [59]) = 0 23:51:02.628994 recvfrom(53, "\363\357\201\200\0\1\0\2\0\0\0\0\6wiocha\2pl\0\0\1\0\1\300\f\0\1\0"..., 59, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, [128 => 16]) = 59 23:51:02.629109 epoll_ctl(7, EPOLL_CTL_DEL, 53, 0x7ffe5372d394) = 0 23:51:02.629210 close(53) = 0 23:51:02.629354 sendto(48, "V\315\201\200\0\1\0\2\0\0\0\0\6wiocha\2pl\0\0\1\0\1\300\f\0\1\0"..., 59, 0, {sa_family=AF_INET, sin_port=htons(45264), sin_addr=inet_addr("192.168.217.17")}, 16) = 59 23:51:02.629457 gettimeofday({tv_sec=1718920262, tv_usec=629489}, NULL) = 0 23:51:02.629564 epoll_wait(7, [{events=EPOLLIN, data={u32=3552495520, u64=94823545489312}}], 1, 4998) = 1 23:51:02.629969 ioctl(48, FIONREAD, [27]) = 0 23:51:02.630006 recvfrom(48, "\263n\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\34\0\1", 27, 0, {sa_family=AF_INET, sin_port=htons(59849), sin_addr=inet_addr("192.168.217.17")}, [128 => 16]) = 27 23:51:02.630095 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 53 23:51:02.630215 fcntl(53, F_GETFL) = 0x2 (flags O_RDWR) 23:51:02.630347 fcntl(53, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:51:02.630422 fcntl(53, F_GETFD) = 0 23:51:02.630507 fcntl(53, F_SETFD, FD_CLOEXEC) = 0 23:51:02.630567 connect(53, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.131")}, 16) = 0 23:51:02.630680 sendto(53, "\32E\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\34\0\1", 27, 0, NULL, 0) = 27 23:51:02.630818 gettimeofday({tv_sec=1718920262, tv_usec=630849}, NULL) = 0 23:51:02.630916 epoll_ctl(7, EPOLL_CTL_ADD, 53, {events=EPOLLIN|EPOLLRDHUP, data={u32=3542046208, u64=94823535040000}}) = 0 23:51:02.630998 gettimeofday({tv_sec=1718920262, tv_usec=631030}, NULL) = 0 23:51:02.631069 epoll_wait(7, [{events=EPOLLIN, data={u32=3552495520, u64=94823545489312}}], 1, 4996) = 1 23:51:07.631172 ioctl(48, FIONREAD, [27]) = 0 23:51:07.631262 recvfrom(48, "\263n\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\34\0\1", 27, 0, {sa_family=AF_INET, sin_port=htons(59849), sin_addr=inet_addr("192.168.217.17")}, [128 => 16]) = 27 23:51:07.631546 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 56 23:51:07.631644 fcntl(56, F_GETFL) = 0x2 (flags O_RDWR) 23:51:07.631718 fcntl(56, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:51:07.631778 fcntl(56, F_GETFD) = 0 23:51:07.631833 fcntl(56, F_SETFD, FD_CLOEXEC) = 0 23:51:07.631874 connect(56, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.131")}, 16) = 0 23:51:07.631967 sendto(56, "\210\356\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\34\0\1", 27, 0, NULL, 0) = 27 23:51:07.632059 gettimeofday({tv_sec=1718920267, tv_usec=632079}, NULL) = 0 23:51:07.632165 epoll_ctl(7, EPOLL_CTL_ADD, 56, {events=EPOLLIN|EPOLLRDHUP, data={u32=3543801136, u64=94823536794928}}) = 0 23:51:07.632241 gettimeofday({tv_sec=1718920267, tv_usec=632270}, NULL) = 0 23:51:07.632342 epoll_ctl(7, EPOLL_CTL_DEL, 54, 0x7ffe5372d454) = 0 23:51:07.632425 close(54) = 0 23:51:07.632545 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 54 23:51:07.632620 fcntl(54, F_GETFL) = 0x2 (flags O_RDWR) 23:51:07.632710 fcntl(54, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:51:07.632787 fcntl(54, F_GETFD) = 0 23:51:07.632855 fcntl(54, F_SETFD, FD_CLOEXEC) = 0 23:51:07.632935 connect(54, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, 16) = 0 23:51:07.633025 sendto(54, "{\271\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\1\0\1", 27, 0, NULL, 0) = 27 23:51:07.633122 gettimeofday({tv_sec=1718920267, tv_usec=633153}, NULL) = 0 23:51:07.633216 epoll_ctl(7, EPOLL_CTL_ADD, 54, {events=EPOLLIN|EPOLLRDHUP, data={u32=3555993104, u64=94823548986896}}) = 0 23:51:07.633346 gettimeofday({tv_sec=1718920267, tv_usec=633370}, NULL) = 0 23:51:07.633430 epoll_wait(7, [{events=EPOLLIN, data={u32=3555993104, u64=94823548986896}}], 1, 4995) = 1 23:51:07.633508 ioctl(54, FIONREAD, [59]) = 0 23:51:07.633585 recvfrom(54, "{\271\201\200\0\1\0\2\0\0\0\0\6wiocha\2pl\0\0\1\0\1\300\f\0\1\0"..., 59, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, [128 => 16]) = 59 23:51:07.633698 epoll_ctl(7, EPOLL_CTL_DEL, 54, 0x7ffe5372d394) = 0 23:51:07.633771 close(54) = 0 23:51:07.633895 sendto(48, "V\315\201\200\0\1\0\2\0\0\0\0\6wiocha\2pl\0\0\1\0\1\300\f\0\1\0"..., 59, 0, {sa_family=AF_INET, sin_port=htons(45264), sin_addr=inet_addr("192.168.217.17")}, 16) = 59 23:51:07.634007 gettimeofday({tv_sec=1718920267, tv_usec=634039}, NULL) = 0 23:51:07.634097 epoll_wait(7, [{events=EPOLLIN, data={u32=3552495520, u64=94823545489312}}], 1, 4994) = 1 23:51:12.632103 ioctl(48, FIONREAD, [27]) = 0 23:51:12.632169 recvfrom(48, "\263n\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\34\0\1", 27, 0, {sa_family=AF_INET, sin_port=htons(59849), sin_addr=inet_addr("192.168.217.17")}, [128 => 16]) = 27 23:51:12.632386 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 54 23:51:12.632457 fcntl(54, F_GETFL) = 0x2 (flags O_RDWR) 23:51:12.632512 fcntl(54, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:51:12.632557 fcntl(54, F_GETFD) = 0 23:51:12.632588 fcntl(54, F_SETFD, FD_CLOEXEC) = 0 23:51:12.632632 connect(54, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.131")}, 16) = 0 23:51:12.632684 sendto(54, "\251\321\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\34\0\1", 27, 0, NULL, 0) = 27 23:51:12.632799 gettimeofday({tv_sec=1718920272, tv_usec=632818}, NULL) = 0 23:51:12.632861 epoll_ctl(7, EPOLL_CTL_ADD, 54, {events=EPOLLIN|EPOLLRDHUP, data={u32=3555993104, u64=94823548986896}}) = 0 23:51:12.632934 gettimeofday({tv_sec=1718920272, tv_usec=632950}, NULL) = 0 23:51:12.632997 epoll_ctl(7, EPOLL_CTL_DEL, 55, 0x7ffe5372d454) = 0 23:51:12.633044 close(55) = 0 23:51:12.633124 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 55 23:51:12.633201 fcntl(55, F_GETFL) = 0x2 (flags O_RDWR) 23:51:12.633248 fcntl(55, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:51:12.633320 fcntl(55, F_GETFD) = 0 23:51:12.633390 fcntl(55, F_SETFD, FD_CLOEXEC) = 0 23:51:12.633437 connect(55, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, 16) = 0 23:51:12.633506 sendto(55, "\3336\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\1\0\1", 27, 0, NULL, 0) = 27 23:51:12.633576 gettimeofday({tv_sec=1718920272, tv_usec=633601}, NULL) = 0 23:51:12.633647 epoll_ctl(7, EPOLL_CTL_ADD, 55, {events=EPOLLIN|EPOLLRDHUP, data={u32=3558443248, u64=94823551437040}}) = 0 23:51:12.633700 gettimeofday({tv_sec=1718920272, tv_usec=633722}, NULL) = 0 23:51:12.633770 epoll_ctl(7, EPOLL_CTL_DEL, 53, 0x7ffe5372d454) = 0 23:51:12.633831 close(53) = 0 23:51:12.633903 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 53 23:51:12.633957 fcntl(53, F_GETFL) = 0x2 (flags O_RDWR) 23:51:12.633993 fcntl(53, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:51:12.634035 fcntl(53, F_GETFD) = 0 23:51:12.634070 fcntl(53, F_SETFD, FD_CLOEXEC) = 0 23:51:12.634113 connect(53, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, 16) = 0 23:51:12.634201 sendto(53, "\253s\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\34\0\1", 27, 0, NULL, 0) = 27 23:51:12.634275 gettimeofday({tv_sec=1718920272, tv_usec=634291}, NULL) = 0 23:51:12.634347 epoll_ctl(7, EPOLL_CTL_ADD, 53, {events=EPOLLIN|EPOLLRDHUP, data={u32=3542046208, u64=94823535040000}}) = 0 23:51:12.634410 gettimeofday({tv_sec=1718920272, tv_usec=634431}, NULL) = 0 23:51:12.634467 epoll_wait(7, [{events=EPOLLIN, data={u32=3558443248, u64=94823551437040}}], 1, 4998) = 1 23:51:12.634521 ioctl(55, FIONREAD, [59]) = 0 23:51:12.634591 recvfrom(55, "\3336\201\200\0\1\0\2\0\0\0\0\6wiocha\2pl\0\0\1\0\1\300\f\0\1\0"..., 59, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, [128 => 16]) = 59 23:51:12.634665 epoll_ctl(7, EPOLL_CTL_DEL, 55, 0x7ffe5372d394) = 0 23:51:12.634727 close(55) = 0 23:51:12.634822 sendto(48, "V\315\201\200\0\1\0\2\0\0\0\0\6wiocha\2pl\0\0\1\0\1\300\f\0\1\0"..., 59, 0, {sa_family=AF_INET, sin_port=htons(45264), sin_addr=inet_addr("192.168.217.17")}, 16) = 59 23:51:12.634927 gettimeofday({tv_sec=1718920272, tv_usec=634961}, NULL) = 0 23:51:12.634991 epoll_wait(7, [{events=EPOLLIN, data={u32=3542046208, u64=94823535040000}}], 1, 4998) = 1 23:51:12.635058 ioctl(53, FIONREAD, [79]) = 0 23:51:12.635118 recvfrom(53, "\253s\201\200\0\1\0\0\0\1\0\0\6wiocha\2pl\0\0\34\0\1\300\f\0\6\0"..., 79, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, [128 => 16]) = 79 23:51:12.635223 epoll_ctl(7, EPOLL_CTL_DEL, 53, 0x7ffe5372d394) = 0 23:51:12.635286 close(53) = 0 23:51:12.635394 sendto(48, "\263n\201\200\0\1\0\0\0\1\0\0\6wiocha\2pl\0\0\34\0\1\300\f\0\6\0"..., 79, 0, {sa_family=AF_INET, sin_port=htons(59849), sin_addr=inet_addr("192.168.217.17")}, 16) = 79 23:51:12.635487 gettimeofday({tv_sec=1718920272, tv_usec=635509}, NULL) = 0 23:51:12.635540 epoll_wait(7, [], 1, 4997) = 0 23:51:17.637714 gettimeofday({tv_sec=1718920277, tv_usec=637766}, NULL) = 0 23:51:17.637818 epoll_ctl(7, EPOLL_CTL_DEL, 56, 0x7ffe5372d454) = 0 23:51:17.637882 close(56) = 0 23:51:17.638004 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 53 23:51:17.638083 fcntl(53, F_GETFL) = 0x2 (flags O_RDWR) 23:51:17.638143 fcntl(53, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:51:17.638273 fcntl(53, F_GETFD) = 0 23:51:17.638409 fcntl(53, F_SETFD, FD_CLOEXEC) = 0 23:51:17.638484 connect(53, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, 16) = 0 23:51:17.638609 sendto(53, "\341D\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\34\0\1", 27, 0, NULL, 0) = 27 23:51:17.638721 gettimeofday({tv_sec=1718920277, tv_usec=638740}, NULL) = 0 23:51:17.638775 epoll_ctl(7, EPOLL_CTL_ADD, 53, {events=EPOLLIN|EPOLLRDHUP, data={u32=3543801136, u64=94823536794928}}) = 0 23:51:17.638836 gettimeofday({tv_sec=1718920277, tv_usec=638862}, NULL) = 0 23:51:17.638892 epoll_wait(7, [{events=EPOLLIN, data={u32=3543801136, u64=94823536794928}}], 1, 4994) = 1 23:51:17.639022 ioctl(53, FIONREAD, [79]) = 0 23:51:17.639079 recvfrom(53, "\341D\201\200\0\1\0\0\0\1\0\0\6wiocha\2pl\0\0\34\0\1\300\f\0\6\0"..., 79, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, [128 => 16]) = 79 23:51:17.639167 epoll_ctl(7, EPOLL_CTL_DEL, 53, 0x7ffe5372d394) = 0 23:51:17.639236 close(53) = 0 23:51:17.639334 sendto(48, "\263n\201\200\0\1\0\0\0\1\0\0\6wiocha\2pl\0\0\34\0\1\300\f\0\6\0"..., 79, 0, {sa_family=AF_INET, sin_port=htons(59849), sin_addr=inet_addr("192.168.217.17")}, 16) = 79 23:51:17.639424 gettimeofday({tv_sec=1718920277, tv_usec=639449}, NULL) = 0 23:51:17.639486 epoll_wait(7, [], 1, 4994) = 0 23:51:22.638678 gettimeofday({tv_sec=1718920282, tv_usec=638724}, NULL) = 0 23:51:22.638773 epoll_ctl(7, EPOLL_CTL_DEL, 54, 0x7ffe5372d454) = 0 23:51:22.638819 close(54) = 0 23:51:22.638907 socket(AF_INET, SOCK_DGRAM, IPPROTO_IP) = 53 23:51:22.638964 fcntl(53, F_GETFL) = 0x2 (flags O_RDWR) 23:51:22.639040 fcntl(53, F_SETFL, O_RDWR|O_NONBLOCK) = 0 23:51:22.639164 fcntl(53, F_GETFD) = 0 23:51:22.639279 fcntl(53, F_SETFD, FD_CLOEXEC) = 0 23:51:22.639410 connect(53, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, 16) = 0 23:51:22.639500 sendto(53, "\256\200\1\0\0\1\0\0\0\0\0\0\6wiocha\2pl\0\0\34\0\1", 27, 0, NULL, 0) = 27 23:51:22.639624 gettimeofday({tv_sec=1718920282, tv_usec=639652}, NULL) = 0 23:51:22.639703 epoll_ctl(7, EPOLL_CTL_ADD, 53, {events=EPOLLIN|EPOLLRDHUP, data={u32=3555993104, u64=94823548986896}}) = 0 23:51:22.639819 gettimeofday({tv_sec=1718920282, tv_usec=639843}, NULL) = 0 23:51:22.639897 epoll_wait(7, [{events=EPOLLIN, data={u32=3555993104, u64=94823548986896}}], 1, 10000) = 1 23:51:22.639987 ioctl(53, FIONREAD, [79]) = 0 23:51:22.640078 recvfrom(53, "\256\200\201\200\0\1\0\0\0\1\0\0\6wiocha\2pl\0\0\34\0\1\300\f\0\6\0"..., 79, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.217.121")}, [128 => 16]) = 79 23:51:22.640222 epoll_ctl(7, EPOLL_CTL_DEL, 53, 0x7ffe5372d394) = 0 23:51:22.640275 close(53) = 0 23:51:22.640410 sendto(48, "\263n\201\200\0\1\0\0\0\1\0\0\6wiocha\2pl\0\0\34\0\1\300\f\0\6\0"..., 79, 0, {sa_family=AF_INET, sin_port=htons(59849), sin_addr=inet_addr("192.168.217.17")}, 16) = 79 23:51:22.640508 epoll_wait(7, [], 1, 30000) = 0 23:51:52.670674 geteuid() = 0 23:51:52.670732 geteuid() = 0 23:51:52.670769 newfstatat(AT_FDCWD, "/var/log/samba/log.samba", {st_mode=S_IFREG|0644, st_size=9972, ...}, 0) = 0 23:51:52.670870 geteuid() = 0 23:51:52.670997 epoll_wait(7,
Might it in practice be better for the server to remember which servers seem down and avoid trying them for a while?