From 5e420a82758ced50a35756d894a5b8e1846421d3 Mon Sep 17 00:00:00 2001 From: Wouter Wijngaards Date: Fri, 18 Jan 2008 09:18:12 +0000 Subject: [PATCH] manpage fixup, no more 6to4 mapping. git-svn-id: file:///svn/unbound/trunk@876 be551aaa-1e26-0410-a405-d3ace91eadb9 --- doc/Changelog | 1 + doc/example.conf | 5 ++--- doc/unbound.conf.5 | 12 ++++-------- services/listen_dnsport.c | 3 +-- 4 files changed, 8 insertions(+), 13 deletions(-) diff --git a/doc/Changelog b/doc/Changelog index 290eb4978..525dc8142 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -3,6 +3,7 @@ - support for IP_RECVDSTADDR (for *BSD ip4). - fix for BSD, do not use ip4to6 mapping, make two sockets, once ip6 and once ip4, uses socket options. + - goodbye ip4to6 mapping. 17 January 2008: Wouter - fixup configure in case -lldns is installed. diff --git a/doc/example.conf b/doc/example.conf index 7bf43f9e5..473169f98 100644 --- a/doc/example.conf +++ b/doc/example.conf @@ -27,9 +27,8 @@ server: # interface: 192.0.2.154 # interface: 2001:DB8::5 - # enable this feature to detect all available interfaces automatically - # May not be supported on all platforms. experimental. Do not forget - # to enable access-control for your ip4, ip6 and ip6mappedip4 addrs. + # enable this feature to copy the source address of queries to reply. + # Socket options not be supported on all platforms. experimental. # interface-automatic: no # port to answer queries from diff --git a/doc/unbound.conf.5 b/doc/unbound.conf.5 index 98c8c25ec..8a592f7f3 100644 --- a/doc/unbound.conf.5 +++ b/doc/unbound.conf.5 @@ -97,14 +97,10 @@ given the default is to listen to localhost. The interfaces are not changed on a reload (kill \-HUP) but only on restart. .TP .B interface-automatic: \fI -Detect all interfaces and use them. This feature is experimental, and needs -support in your OS for IPv6 (and its socket options). You have to set access -control for IPv4, IPv6 addresses and also for mapped IPv4 to IPv6 addresses -(i.e. ::ffff:192.168.0.0/112 and so on). IPv4 TCP connections use the IPv4 -access control, IPv4 UDP queries use the mapped access control. -On FreeBSD sysconfig is associated with this, net.inet6.ip6.v6only in -/etc/sysctl.conf, it should work with this set or unset. OpenBSD may not -support it at all. Default value is no. +Detect source interface on UDP queries and copy them to replies. This +feature is experimental, and needs support in your OS for IPv6 +(and its socket options) and IPv4 (and have source-interface socket options). +Default value is no. .TP .B outgoing\-interface: \fI Interface to use to connect to the network. This interface is used to send diff --git a/services/listen_dnsport.c b/services/listen_dnsport.c index 6eb8eb8d6..5efc89be5 100644 --- a/services/listen_dnsport.c +++ b/services/listen_dnsport.c @@ -310,10 +310,9 @@ ports_create_if(const char* ifname, int do_auto, int do_udp, int do_tcp, if(!do_udp && !do_tcp) return 0; if(do_auto) { - /* skip ip4 sockets, ip4 udp gets mapped to v6 */ - /* TODO no mapping! */ if((s = make_sock(SOCK_DGRAM, ifname, port, hints, 1)) == -1) return 0; + /* getting source addr packet info is highly non-portable */ if(!set_recvpktinfo(s, hints->ai_family)) return 0; if(!port_insert(list, s, listen_type_udpancil)) { -- 2.47.3