On Mon, Apr 10, 2023 at 10:17:08AM +0200, Peter J. Philipp wrote: > On Sat, Apr 08, 2023 at 08:28:05PM +0200, Peter J. Philipp wrote: > /cut > > Apr 6 14:43:05 polarstern unwind[97893]: bad packet: too large: 65552 - > > pool.ntp.org. IN AAAA > > Apr 6 14:46:25 polarstern unwind[97893]: bad packet: too large: 65552 - > > pool.ntp.org.mainrechner.de. IN AAAA > > /cut > > Any thoughts? > > > > Best Regards, > > -peter > > OK I traced this log down, by mere accident. It is a condition when the > forwarder isn't listening on TCP (or UDP). Perhaps we need a better syslog > for this, I'll see later today if I can produce a patch. > > Best Regards, > -peter
Alright, I have a patch together with the first patch that I sent. I tested this by killing my forwarder and pinging centroid.eu (my site), the error message is correct in my view. But you're the judge of that. ----------------> Apr 13 20:53:26 polarstern unwind[73363]: terminating Apr 13 20:53:27 polarstern resolvd[81113]: rebuilding: new unwind Apr 13 20:54:12 polarstern unwind[16252]: remote nameserver had no listening port: centroid.eu. IN A ^Z[1] + Suspended tail -f /var/log/daemon root@polarstern# dddctl start starting delphinusdnsd root@polarstern# fg tail -f /var/log/daemon <---------------- (after this restart of delphinusdnsd forwarder this pinged fine, no more logs) The patch is below my .signature, Best Regards, -peter Index: resolver.c =================================================================== RCS file: /cvs/src/sbin/unwind/resolver.c,v retrieving revision 1.158 diff -u -p -u -r1.158 resolver.c --- resolver.c 8 Feb 2023 08:01:25 -0000 1.158 +++ resolver.c 13 Apr 2023 18:51:01 -0000 @@ -954,13 +954,19 @@ resolve_done(struct uw_resolver *res, vo running_res = --rq->running; if (answer_len < LDNS_HEADER_SIZE) { - log_warnx("bad packet: too short"); + if (answer_len != -1) + log_warnx("bad packet: too short"); goto servfail; } if (answer_len > UINT16_MAX) { - log_warnx("bad packet: too large: %d - %s", answer_len, - query_imsg2str(query_imsg)); + if (answer_len == 65552) { + log_warnx("remote nameserver had no listening port: %s", + query_imsg2str(query_imsg); + } else { + log_warnx("bad packet: too large: %d - %s", answer_len, + query_imsg2str(query_imsg)); + } goto servfail; } answer_header->answer_len = answer_len;