Hi there,
now I've found the problem with the broken packets. It was an error in
the packet assembly, where the compression pointers are created. These
pointers are in udp packets allowed to go up to 0x1FF. Dnrd truncated
them at 0x3F. Thus my long domain names produced broken packets in dnrd.
I've attached a patch, that fixes that. (dnrd-2.10d.patch)
On the way I've changed and added two features to dnrd, which are very
usefull for me. Also some more debugging information is given in debug
mode.
The two features are:
forwarding to nameservers on different ports,
setting the port, dnrd listens on (this disables some security features
of dnrd).
These features are in the second patch (dnrd-2.10d-allfeatures.patch).
wish you happy DNS'ing
DRND is a great piece of software.
Johnny