--------------------- PatchSet 4662 Date: 2007/05/28 14:31:46 Author: amosjeffries Branch: squid3-ipv6 Tag: (none) Log: Test Options to prefer IPv6 hostname lookup. Members: NOTES-IPv6:1.1.2.23->1.1.2.24 src/tools.cc:1.22.2.17->1.22.2.18 Index: squid3/NOTES-IPv6 =================================================================== RCS file: /cvsroot/squid-sf//squid3/Attic/NOTES-IPv6,v retrieving revision 1.1.2.23 retrieving revision 1.1.2.24 diff -u -r1.1.2.23 -r1.1.2.24 --- squid3/NOTES-IPv6 28 May 2007 12:49:59 -0000 1.1.2.23 +++ squid3/NOTES-IPv6 28 May 2007 14:31:46 -0000 1.1.2.24 @@ -1,4 +1,4 @@ -$Id: NOTES-IPv6,v 1.1.2.23 2007/05/28 12:49:59 amosjeffries Exp $ +$Id: NOTES-IPv6,v 1.1.2.24 2007/05/28 14:31:46 amosjeffries Exp $ KNOWN BUGS: @@ -8,28 +8,21 @@ Solved for all known events now, but this may reccur at any time until conversion is completed. +PROBLEM: USE_IPV6_SPLITSTACK defiend on dual-stack systems. -CURRENT BLOCK: - - Somewhere After receiving DNS packets telling IP of upstream source. -Program received signal SIGABRT, Aborted. -0xffffe410 in __kernel_vsyscall () -#0 0xffffe410 in __kernel_vsyscall () -#1 0xb7c60df0 in raise () from /lib/tls/i686/cmov/libc.so.6 -#2 0xb7c62641 in abort () from /lib/tls/i686/cmov/libc.so.6 -#3 0x08089341 in xassert (msg=0x814f517 "address.GetPort() != 0", file=0x814f189 "comm.cc", line=1291) at debug.cc:569 -#4 0x08107bb4 in comm_connect_addr (sock=13, address=@0x856fcf4) at comm.cc:1291 -#5 0x0810905d in ConnectStateData::connect (this=0x856fcd0) at comm.cc:1217 -#6 0x080c7b54 in ipcacheCallback (i=0x8334fcc) at ipcache.cc:271 -#7 0x08097ed0 in FwdState::connectStart (this=0x855b8e0) at forward.cc:889 - - -... And a number of problems caused by the URI handling in Squid. (bug #1961) - -PROBLEM: Wireshark reports DNS queries looking up hostname A record for - '2001:200:0:8002:203:47ff:fea5:3085' -Cause: Something is building the NtoA of IP and assuming its valid hostname. - (should be usng ToHostname() at the point the hostname is needed.) -FIXED ?? +SIDE_EFFECT: (also a bug) +2007/05/29 01:25:13.965| fwdConnectStart: got addr [::], tos 0 +2007/05/29 01:25:13.965| comm_open: setsockopt(IPV6_V6ONLY) on FD 13: (92) Protocol not available +2007/05/29 01:25:13.965| comm_open: FD 13 is a new socket + + +PROBLEM: DNS (IPv6-only) getHostname lookup fails +2007/05/29 02:27:33.085| idnsAddNameserver: Added nameserver #0 ([2002:3cea:e96f:0:2e0:18ff:febb:b02e]:53) +2007/05/29 02:27:33.085| idnsAddNameserver: Added nameserver #1 ([2001:5c0:9388:0:2e0:18ff:febb:b02e]:53) +2007/05/29 02:27:33.567| idnsALookup: buf is 37 bytes for proxy.treenet.co.nz, id = 0xa9ec +2007/05/29 02:27:33.567| idnsSendQuery: FD 7: sendto: (97) Address family not supported by protocol +2007/05/29 02:27:33.567| idnsSendQuery: FD 7: sendto: (97) Address family not supported by protocol +LOCATION: src/tools.cc:605 .... cache.log lines detected showing problems: Index: squid3/src/tools.cc =================================================================== RCS file: /cvsroot/squid-sf//squid3/src/tools.cc,v retrieving revision 1.22.2.17 retrieving revision 1.22.2.18 diff -u -r1.22.2.17 -r1.22.2.18 --- squid3/src/tools.cc 27 May 2007 12:52:47 -0000 1.22.2.17 +++ squid3/src/tools.cc 28 May 2007 14:31:46 -0000 1.22.2.18 @@ -1,6 +1,6 @@ /* - * $Id: tools.cc,v 1.22.2.17 2007/05/27 12:52:47 amosjeffries Exp $ + * $Id: tools.cc,v 1.22.2.18 2007/05/28 14:31:46 amosjeffries Exp $ * * DEBUG: section 21 Misc Functions * AUTHOR: Harvest Derived @@ -599,8 +599,11 @@ * reverse DNS lookup on it. */ if(! sa.IsAnyAddr() ) { + #if USE_IPV6 - if(! sa.IsIPv4() ) +// NP: to prefer IPv4 Hostname use this: if( !sa.IsIPv4() ) +// NP: to prefer IPv6 Hostname use this: if( sa.IsIPv6() ) + if( sa.IsIPv6() ) { struct in6_addr ipa; sa.GetInAddr(ipa);