[dnssec-deployment] some observations about .SE's DNSSEC

Mark Andrews Mark_Andrews at isc.org
Tue Sep 25 21:04:12 EDT 2007


> > I remember a sequence something like:
> > Request big bunch of DNSKEYS (udp) ->
> >  X(lost) <- Big udp packet
> > ...timeout
> > Request big bunch of DNSKEYS (udp) ->
> >   <- 512 byte truncated packet (udp)
> > ...truncated..fail
> > Then sometimes...
> > Request big bunch of DNSKEYS (TCP) ->
> >   <- Big TCP packet
> > Request more information to complete validation ->
> > ..works
> 
> this sounds more like a firewall that says
> 
> 	permit from inside to any udp/53
> 	permit from any udp/53 to inside
> 
> (season to taste with as much "keep-state" as you've got)
> 
> but if the firewall doesn't do ip reassembly before running the ruleset,
> 
> and if the firewall doesn't remember the IP <SRC,DST,ID> of firstfrags
> who matched a "permit" so as to give the otherfrags the same treatment,
> 
> then you'll get a timeout.
> 
> turns out all firewalls work this way.  who knew?  wide area UDP can't
> work end to end unless the datagrams are small enough to never need to
> be fragmented.  DNSSEC, being an EDNS form, often has to be fragmented
> in its first hop, which usually has a 1500 byte MTU.

	No.  It can if NAT/firewall vendors actually re-assemble the
	packets before processing them.

	The non-kernel NATs all work as the packet needs to be
	reassembled to make it to user space.

	One of the problem for firewalls is that the layer 3 headers
	are not available execpt in the first fragment (which may not
	be the first to arrive).

	I've bug reports filed against ipnat for this mis-behaviour
	with FreeBSD as it only handles fragmented responses where
	the first response is the first fragment.

	I suggest that anyone with this problem file a bug report
	with their firewall/NAT vendor.

	I use "edns-udp-size 1460;" on the nameservers behind the NAT.

	Mark
-- 
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 Dnssec-deployment mailing list