On 03.02.2012 20:42, folkert wrote: >>> Suddenly after a restart znc won't connect to irc.oftc.net 6667 and >>> irc.eu.rizon.net. >>> So I did an strace on the process to see what was going on and saw this: >> >> what's the error message from ZNC? > 20:23:20] *status: Cannot connect to IRC (Cannot assign requested > address (Is your IRC server's host name valid?)). Retrying... > [...]
>> Also, you could start znc with the argument --debug --foreground and see if >> that >> says anything more about the issue (although I'd almost doubt that). > http://keetweej.vanheusden.com/~folkert/znc.log.gz > > No more details than what it says in the irc channel. Well, the log says a little more. This not only happens with irc.eu.rizon.net, but also with irc.oftc.net. Also, each failure is preceded by: Csocket.cpp:267 DNS server returned answer with no data Also, the log pretty much makes this clear already, but do you have any bindhost set on your users? On 03.02.2012 21:46, folkert wrote: >>> Suddenly after a restart znc won't connect to irc.oftc.net 6667 and >>> irc.eu.rizon.net. >>> So I did an strace on the process to see what was going on and saw this: >> >> what's the error message from ZNC? >> For the strace results: >> ZNC uses libc-ares2 for doing its DNS, so that bad recvfrom() would have to >> be a >> bug in c-ares. Oh and btw 4294967295 (the fd used) is (uint32_t) -1. > > So you're suggesting to file a bug for libc-ares2? > Maybe you can give me some details on the situation (from a code point > of view) in which this is happening? If you want to, feel free. Google found a "minimal c-ares example": http://paste.lisp.org/display/86982/raw Compiling that and running it with google.com as its argument: $ strace -e recvfrom ./a.out google.com 2>&1 1>/dev/null recvfrom(3, "U\275\201\200\0\1\0\6\0\0\0\0\6google\3com\0\0\1\0\1\300\f\0\1"..., 513, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")}, [16]) = 124 recvfrom(4294967295, 0x7fff0be82940, 513, 0, 0x7fff0be82b50, 0x7fff0be82b6c) = -1 EBADF (Bad file descriptor) However, that failing syscall doesn't seem to have any bad effects. I took a closer look at your initial strace output: recvfrom(3, "\212\264\201\200\0\1\0\0\0\0\0\0\3irc\2eu\5rizon\3net\0\0\34"..., 5 Aparts from the standard stuff (header, flags...) and the now-expected stuff (number of replies: 0), I also noticed the query type: \0\34. This is decimal 28 which is[1] the code for AAAA records / IPv6 (An A record has type 1). So something is forcing ZNC to try IPv6. The only possibility (besides weird bugs which only you are seeing) is that you have a bindhost / vhost set. Could you also try /znc clearbindhost? Cheers, Uli [1]: Nope, I don't know this stuff by heart. I started wireshark, captured a DNS packet and used its nice dissectors to compare stuff. The "28" I looked up in c-ares' source code. :-) -- "Engineering - where the semi-skilled laborers execute the vision of those who think and dream. Hello Oompa-Loompas of science." -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org