EDNS - edns-udp-size and max-udp-size

Mark Andrews Mark_Andrews at isc.org
Tue Feb 24 22:05:09 UTC 2009

In message <200902240828.n1O8SLlN027800 at mail42.nsc.no>, Jan Arild =?iso-8859-1?
Q?Lindstr=F8m?= writes:

> How can it reduce it from 512 that is in the config, down to 512?

	The code just looks at the number of timeouts not at what
	size was sent in the initial query.  triededns512() records
	when the DNS_FETCHOPT_EDNS512 has been set not when the
	initial query advertised a receive buffer of 512 bytes.

        if ((triededns512(fctx, &query->addrinfo->sockaddr) ||
             fctx->timeouts >= (MAX_EDNS0_TIMEOUTS * 2)) &&
            (query->options & DNS_FETCHOPT_NOEDNS0) == 0) {
                query->options |= DNS_FETCHOPT_NOEDNS0;
                fctx->reason = "disabling EDNS";
        } else if ((triededns(fctx, &query->addrinfo->sockaddr) ||
                    fctx->timeouts >= MAX_EDNS0_TIMEOUTS) &&
                   (query->options & DNS_FETCHOPT_NOEDNS0) == 0) {
                query->options |= DNS_FETCHOPT_EDNS512;
                fctx->reason = "reducing the advertised EDNS UDP packet "
                               "size to 512 octets";
> I was expecting to see only "after disabling EDNS" messages after setting t=
> he size(s) to 512.
> It seems to me that max-udp-size and/or edns-udp-size does not do what I wa=
> nt, wich is to use 512 bytes packets.

	max-udp-size controls the size of packets you send.
	edns-udp-size controls the size of packets you receive.

	A pack trace should show you that they are working as you
	wont see UDP packets over 512 bytes in either direction is
	you have that set.

	What you need to find out is what is causing the packet
	loss.  Even with a clear EDNS path you will see some of
	these logged as not all timeouts are due to EDNS issues.

> OS: Solaris 10 (SunOS 5.10 138888-01)
> BIND: 9.6.0-P1, threaded.
> Regards
> Jan Arild Lindstr=F8m
> _______________________________________________
> bind-users mailing list
> bind-users at lists.isc.org
> https://lists.isc.org/mailman/listinfo/bind-users
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742                 INTERNET: Mark_Andrews at isc.org

More information about the bind-users mailing list