IPv6 servers

TODO items


git-svn-id: file:///svn/unbound/trunk@1078 be551aaa-1e26-0410-a405-d3ace91eadb9
This commit is contained in:
Wouter Wijngaards 2008-05-13 12:33:41 +00:00
parent 8d472c8cf8
commit aab6da9362
3 changed files with 35 additions and 5 deletions

View file

@ -1,3 +1,7 @@
13 May 2008: Wouter
- Added root ipv6 addresses to builtin root hints.
- TODO modified for post 1.0 plans.
7 May 2008: Wouter
- fixup no-ip4 problem with error callback in outside network.

View file

@ -1,4 +1,4 @@
TODO items.
TODO items. These are interesting todo items.
o understand synthesized DNAMEs, so those TTL=0 packets are cached properly.
o NSEC/NSEC3 aggressive negative caching, so that updates to NSEC/NSEC3
will result in proper negative responses.
@ -49,3 +49,19 @@ o overhaul outside-network servicedquery to merge with udpwait and tcpwait,
to make timers in servicedquery independent of udpwait queues.
o 0x20 fallback so it can be enabled without trouble.
o check into rebinding ports for efficiency, configure time test.
o DLV is considered.
o EVP hardware crypto support.
Features soon after 1.0.
o EDNS fallback after timeout (firewall drops all edns traffic problem).
For 1.x; features that have been requested during the beta test.
o command channel for couple of tasks. Like rndc.
o see delegation; what servers would be used to get data for a name.
o force stats display; easier than parsing logfiles.
stats display added over threads, displayed in rddtool easy format.
o flush names or domains (all under a name) from the cache. Include NSes.
And the A, AAAA for its NSes.
o add/del static preload data to change the domain redirections.
o and maybe also start, stop, reload.

View file

@ -112,7 +112,7 @@ ah(struct delegpt* dp, struct regional* r, const char* sv, const char* ip)
/** obtain compiletime provided root hints */
static struct delegpt*
compile_time_root_prime(struct regional* r)
compile_time_root_prime(struct regional* r, int do_ip4, int do_ip6)
{
/* from:
; This file is made available by InterNIC
@ -121,14 +121,14 @@ compile_time_root_prime(struct regional* r)
; on server FTP.INTERNIC.NET
; -OR- RS.INTERNIC.NET
;
; last update: Jan 29, 2004
; related version of root zone: 2004012900
; related version of root zone: 2008051300
*/
struct delegpt* dp = delegpt_create(r);
if(!dp)
return NULL;
if(!delegpt_set_name(dp, r, (uint8_t*)"\000"))
return NULL;
if(do_ip4) {
if(!ah(dp, r, "A.ROOT-SERVERS.NET.", "198.41.0.4")) return 0;
if(!ah(dp, r, "B.ROOT-SERVERS.NET.", "192.228.79.201")) return 0;
if(!ah(dp, r, "C.ROOT-SERVERS.NET.", "192.33.4.12")) return 0;
@ -142,6 +142,15 @@ compile_time_root_prime(struct regional* r)
if(!ah(dp, r, "K.ROOT-SERVERS.NET.", "193.0.14.129")) return 0;
if(!ah(dp, r, "L.ROOT-SERVERS.NET.", "199.7.83.42")) return 0;
if(!ah(dp, r, "M.ROOT-SERVERS.NET.", "202.12.27.33")) return 0;
}
if(do_ip6) {
if(!ah(dp, r, "A.ROOT-SERVERS.NET.", "2001:503:ba3e::2:30")) return 0;
if(!ah(dp, r, "F.ROOT-SERVERS.NET.", "2001:500:2f::f")) return 0;
if(!ah(dp, r, "H.ROOT-SERVERS.NET.", "2001:500:1::803f:235")) return 0;
if(!ah(dp, r, "J.ROOT-SERVERS.NET.", "2001:503:c27::2:30")) return 0;
if(!ah(dp, r, "K.ROOT-SERVERS.NET.", "2001:7fd::1")) return 0;
if(!ah(dp, r, "M.ROOT-SERVERS.NET.", "2001:dc3::35")) return 0;
}
return dp;
}
@ -433,7 +442,8 @@ hints_apply_cfg(struct iter_hints* hints, struct config_file* cfg)
/* use fallback compiletime root hints */
if(!hints_lookup_root(hints, LDNS_RR_CLASS_IN)) {
struct delegpt* dp = compile_time_root_prime(hints->region);
struct delegpt* dp = compile_time_root_prime(hints->region,
cfg->do_ip4, cfg->do_ip6);
verbose(VERB_ALGO, "no config, using builtin root hints.");
if(!dp)
return 0;