mirror of
https://github.com/NLnetLabs/unbound.git
synced 2026-01-02 21:09:35 -05:00
Fixup for EDNS probe (neater than patch on mailing list).
git-svn-id: file:///svn/unbound/trunk@1684 be551aaa-1e26-0410-a405-d3ace91eadb9
This commit is contained in:
parent
4ead61eb63
commit
ec30ae3ca6
3 changed files with 9 additions and 1 deletions
|
|
@ -1,3 +1,7 @@
|
|||
26 June 2009: Wouter
|
||||
- Fix EDNS fallback when EDNS works for short answers but long answers
|
||||
are dropped.
|
||||
|
||||
22 June 2009: Wouter
|
||||
- fixup iter priv strict aliasing while preserving size of sockaddr.
|
||||
- iana portlist updated. (one less port allocated, one more fraction
|
||||
|
|
|
|||
|
|
@ -235,6 +235,9 @@ o EDNS fallback. Is done according to the EDNS RFC (and update draft-00).
|
|||
It minimizes the chances of a dropped query making a (DNSSEC) EDNS server
|
||||
falsely EDNS-nonsupporting, and thus DNSSEC-bogus, works well with
|
||||
middleboxes, and can detect the occasional authority that drops EDNS.
|
||||
For some boxes it is necessary to probe for every failing query, a
|
||||
reassurance that the DNS server does EDNS does not mean that path can
|
||||
take large DNS answers.
|
||||
|
||||
o 0x20 backoff.
|
||||
The draft describes to back off to the next server, and go through all
|
||||
|
|
|
|||
|
|
@ -1234,7 +1234,8 @@ serviced_udp_send(struct serviced_query* sq, ldns_buffer* buff)
|
|||
&edns_lame_known, &rtt))
|
||||
return 0;
|
||||
if(sq->status == serviced_initial) {
|
||||
if(edns_lame_known == 0 && rtt > 5000) {
|
||||
if((vs != -1 || edns_lame_known == 0) &&
|
||||
rtt > 5000 && rtt < 10001) {
|
||||
/* perform EDNS lame probe - check if server is
|
||||
* EDNS lame (EDNS queries to it are dropped) */
|
||||
verbose(VERB_ALGO, "serviced query: send probe to see "
|
||||
|
|
|
|||
Loading…
Reference in a new issue