Problem upgrading 9.18 to 9.20: dnstap doesnt work
Fred Morris
m3047 at m3047.net
Sat Jun 27 00:51:32 UTC 2026
How's your python? Download
https://github.com/m3047/shodohflo/blob/master/examples/dnstap2json.py
and see if you can make that go. Well really, download the entire repo.
The framestreams implementation is here:
https://github.com/m3047/shodohflo/blob/master/shodohflo/fstrm.py
I make no apologies for framestreams, I think think they could have done
better borrowing from how DNS does TCP but that's just my opinion. In any
case, it requires a "notary sojack" (handshake) from the "server"... yes
your client is the server. Is whatever you're using as a sink sending the
handshake?
(There is a complete pure python implementation of framestreams / protobuf
in there.)
--
Fred Morris, internet plumber
On Sat, 27 Jun 2026, Peter 'PMc' Much wrote:
>
> A while back I upgraded an internal server from 9.18 to 9.20.
> Everything works fine there.
>
> Now I upgraded a public server (rented KVM). Same config, same
> infrastructure. It probably works, but there is no dnstap output, so I
> am blind.
>
> I put a hexdump on the socket like so (before starting named):
>
> root at wand:/tmp # /usr/bin/stdbuf -o 0 /usr/local/bin/fstrm_capture \
> -t protobuf:dnstap.Dnstap -u /var/named//var/run/dnstap.sock -w - | hd
> fstrm_capture: opening Unix socket path /var/named//var/run/dnstap.sock
> fstrm_capture: opened output file -
> 00000000 00 00 00 00 00 00 00 22 00 00 00 02 00 00 00 01 |......."........|
> 00000010 00 00 00 16 70 72 6f 74 6f 62 75 66 3a 64 6e 73 |....protobuf:dns|
>
> And that is all that appears.
> [...]
More information about the bind-users
mailing list