From owner-freebsd-net@FreeBSD.ORG Sat Jul 11 10:10:08 2009 Return-Path: Delivered-To: freebsd-net@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D61B2106568F for ; Sat, 11 Jul 2009 10:10:08 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 4ACA48FC13 for ; Sat, 11 Jul 2009 10:10:07 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n6BAA6aq077946 for ; Sat, 11 Jul 2009 10:10:06 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n6BAA6C3077941; Sat, 11 Jul 2009 10:10:06 GMT (envelope-from gnats) Date: Sat, 11 Jul 2009 10:10:06 GMT Message-Id: <200907111010.n6BAA6C3077941@freefall.freebsd.org> To: freebsd-net@FreeBSD.org From: =?ISO-8859-1?Q?Angelo_H=F6ngens?= Cc: Subject: Re: kern/127050: [carp] ipv6 does not work on carp interfaces [regression] X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: =?ISO-8859-1?Q?Angelo_H=F6ngens?= List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 11 Jul 2009 10:10:09 -0000 The following reply was made to PR kern/127050; it has been noted by GNATS. From: =?ISO-8859-1?Q?Angelo_H=F6ngens?= To: bug-followup@FreeBSD.org, maddog2k@maddog2k.net Cc: Subject: Re: kern/127050: [carp] ipv6 does not work on carp interfaces [regression] Date: Sat, 11 Jul 2009 12:06:30 +0200 A few months ago I could not ping any virtual ipv6 addresses. However, I'm running 7.2 now, and decided to pick up this issue. Something seems to have changed, and I can ping at least the first ipv6 address of a carp interface (just not the others) Some more info: I have four reverse cache machines (simple Dell R300's), running Squid. The four machines are balanced by round robin DNS. The DNS publishes 4 virtual carp addresses, and each node has 4 carp interfaces, but is always the master over its own one. This way, up to three nodes can fail, and the other takes over. Works like a charm, but of course I want to enable ipv6 over the same infrastructure. I've configured ipv6 aliases on all interfaces, and rebooted all nodes. Now the funny thing is, I can ping all ipv4 ip's (it's been running in production for months), I can ping6 the the dedicated ip's of all nodes (2001:81:82::206:113 for the node below), and I can ping to all the FIRST ipv6 addresses of the carp interfaces. Could very well be something I'm doing wrong, but I think it's a bug in carp. (Of course I could work around it by creating 16 carp interfaces on each machine, but I don't know what's the best solution.) So: I can ping6 to 2001:81:82::206:81 I can ping6 to 2001:81:82::206:82 I can ping6 to 2001:81:82::206:83 I can ping6 to 2001:81:82::206:84 I can NOT ping6 to 2001:81:82::206:85 I can NOT ping6 to 2001:81:82::206:86 I can NOT ping6 to 2001:81:82::206:87 I can NOT ping6 to 2001:81:82::206:88 I can NOT ping6 to 2001:81:82::206:121 I can NOT ping6 to 2001:81:82::206:122 I can NOT ping6 to 2001:81:82::206:123 I can NOT ping6 to 2001:81:82::206:124 Here you see pings on the cluster node. Pings to :81 get answered, but the node does not answer of neighbor solicitaions to :85: $ sudo tcpdump -ni nic0 icmp6 listening on nic0, link-type EN10MB (Ethernet), capture size 96 bytes 11:54:09.846489 IP6 2001:610:6a8:0:223:6cff:fe8d:6775 > 2001:81:82::206:81: ICMP6, echo request, seq 0, length 16 11:54:09.846524 IP6 2001:81:82::206:81 > 2001:610:6a8:0:223:6cff:fe8d:6775: ICMP6, echo reply, seq 0, length 16 11:54:10.845796 IP6 2001:610:6a8:0:223:6cff:fe8d:6775 > 2001:81:82::206:81: ICMP6, echo request, seq 1, length 16 11:54:10.845829 IP6 2001:81:82::206:81 > 2001:610:6a8:0:223:6cff:fe8d:6775: ICMP6, echo reply, seq 1, length 16 11:54:11.848522 IP6 2001:610:6a8:0:223:6cff:fe8d:6775 > 2001:81:82::206:81: ICMP6, echo request, seq 2, length 16 11:54:11.848539 IP6 2001:81:82::206:81 > 2001:610:6a8:0:223:6cff:fe8d:6775: ICMP6, echo reply, seq 2, length 16 11:54:13.949889 IP6 fe80::203:feff:fea0:b000 > ff02::1:ff06:85: ICMP6, neighbor solicitation, who has 2001:81:82::206:85, length 32 11:54:14.846703 IP6 2001:81:82::206:113 > 2001:81:82::1: ICMP6, neighbor solicitation, who has 2001:81:82::1, length 32 11:54:14.847034 IP6 2001:81:82::1 > 2001:81:82::206:113: ICMP6, neighbor advertisement, tgt is 2001:81:82::1, length 24 11:54:14.948194 IP6 fe80::203:feff:fea0:b000 > ff02::1:ff06:85: ICMP6, neighbor solicitation, who has 2001:81:82::206:85, length 32 11:54:15.948203 IP6 fe80::203:feff:fea0:b000 > ff02::1:ff06:85: ICMP6, neighbor solicitation, who has 2001:81:82::206:85, length 32 11:54:16.954932 IP6 fe80::203:feff:fea0:b000 > ff02::1:ff06:85: ICMP6, neighbor solicitation, who has 2001:81:82::206:85, length 32 11:54:17.952257 IP6 fe80::203:feff:fea0:b000 > ff02::1:ff06:85: ICMP6, neighbor solicitation, who has 2001:81:82::206:85, length 32 11:54:18.952558 IP6 fe80::203:feff:fea0:b000 > ff02::1:ff06:85: ICMP6, neighbor solicitation, who has 2001:81:82::206:85, length 32 I am running: $ uname -a FreeBSD balancer3.domain.local 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Tue Jun 16 12:08:00 CEST 2009 root@balancer3.domain.local:/usr/obj/usr/src/sys/GENERIC-CARP amd64 IP's below are scrambled and are not the real addresses: -- /etc/rc.conf ------------------------- ifconfig_bge0_name="nic0" ifconfig_bge1_name="nic1" ipv6_enable="YES" ifconfig_nic0="inet 81.82.206.113 netmask 255.255.255.192" ifconfig_nic0_alias0="inet6 2001:81:82::206:113 prefixlen 48" ifconfig_nic1="inet 10.82.20.113 netmask 255.255.255.0" defaultrouter="81.82.206.65" ipv6_defaultrouter="2001:81:82::1" cloned_interfaces="carp0 carp1 carp2 carp3" ifconfig_carp0="vhid 103 pass blabla 81.82.206.81/26 advskew 0" ifconfig_carp0_alias0="inet6 2001:81:82::206:81 prefixlen 48" ifconfig_carp0_alias1="inet 81.82.206.85 netmask 255.255.255.192" ifconfig_carp0_alias2="inet6 2001:81:82::206:85 prefixlen 48" ifconfig_carp0_alias3="inet 81.82.206.121 netmask 255.255.255.192" ifconfig_carp0_alias4="inet6 2001:81:82::206:121 prefixlen 48" ifconfig_carp1="vhid 104 pass blabla 81.82.206.82/26 advskew 100" ifconfig_carp1_alias0="inet6 2001:81:82::206:82 prefixlen 48" ifconfig_carp1_alias1="inet 81.82.206.86 netmask 255.255.255.192" ifconfig_carp1_alias2="inet6 2001:81:82::206:86 prefixlen 48" ifconfig_carp1_alias3="inet 81.82.206.122 netmask 255.255.255.192" ifconfig_carp1_alias4="inet6 2001:81:82::206:122 prefixlen 48" fconfig_carp2="vhid 105 pass blabla 81.82.206.83/26 advskew 100" ifconfig_carp2_alias0="inet6 2001:81:82::206:83 prefixlen 48" ifconfig_carp2_alias1="inet 81.82.206.87 netmask 255.255.255.192" ifconfig_carp2_alias2="inet6 2001:81:82::206:87 prefixlen 48" ifconfig_carp2_alias3="inet 81.82.206.123 netmask 255.255.255.192" ifconfig_carp2_alias4="inet6 2001:81:82::206:123 prefixlen 48" ifconfig_carp3="vhid 106 pass blabla 81.82.206.84/26 advskew 100" ifconfig_carp3_alias0="inet6 2001:81:82::206:84 prefixlen 48" ifconfig_carp3_alias1="inet 81.82.206.88 netmask 255.255.255.192" ifconfig_carp3_alias2="inet6 2001:81:82::206:88 prefixlen 48" ifconfig_carp3_alias3="inet 81.82.206.124 netmask 255.255.255.192" ifconfig_carp3_alias4="inet6 2001:81:82::206:124 prefixlen 48" ----------------------------------------- -- ifconfig output ---------------------- nic0: flags=8943 metric 0 mtu 1500 options=9b ether 00:22:19:cd:5c:e0 inet6 fe80::222:19ff:fecd:5ce0%nic0 prefixlen 64 scopeid 0x1 inet 81.82.206.113 netmask 0xffffffc0 broadcast 81.82.206.127 inet6 2001:81:82::206:113 prefixlen 48 media: Ethernet autoselect (1000baseTX ) status: active nic1: flags=8843 metric 0 mtu 1500 options=9b ether 00:22:19:cd:5c:e1 inet6 fe80::222:19ff:fecd:5ce1%nic1 prefixlen 64 scopeid 0x2 inet 10.82.20.113 netmask 0xffffff00 broadcast 10.82.20.255 media: Ethernet autoselect (1000baseTX ) status: active lo0: flags=8049 metric 0 mtu 16384 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3 inet 127.0.0.1 netmask 0xff000000 carp0: flags=49 metric 0 mtu 1500 inet 81.82.206.81 netmask 0xffffffc0 inet6 2001:81:82::206:81 prefixlen 48 inet 81.82.206.85 netmask 0xffffffc0 inet6 2001:81:82::206:85 prefixlen 48 inet 81.82.206.121 netmask 0xffffffc0 inet6 2001:81:82::206:121 prefixlen 48 carp: MASTER vhid 103 advbase 1 advskew 0 carp1: flags=49 metric 0 mtu 1500 inet 81.82.206.82 netmask 0xffffffc0 inet6 2001:81:82::206:82 prefixlen 48 inet 81.82.206.86 netmask 0xffffffc0 inet6 2001:81:82::206:86 prefixlen 48 inet 81.82.206.122 netmask 0xffffffc0 inet6 2001:81:82::206:122 prefixlen 48 carp: BACKUP vhid 104 advbase 1 advskew 100 carp2: flags=49 metric 0 mtu 1500 inet 81.82.206.83 netmask 0xffffffc0 inet6 2001:81:82::206:83 prefixlen 48 inet 81.82.206.87 netmask 0xffffffc0 inet6 2001:81:82::206:87 prefixlen 48 inet 81.82.206.123 netmask 0xffffffc0 inet6 2001:81:82::206:123 prefixlen 48 carp: BACKUP vhid 105 advbase 1 advskew 100 carp3: flags=49 metric 0 mtu 1500 inet 81.82.206.84 netmask 0xffffffc0 inet6 2001:81:82::206:84 prefixlen 48 inet 81.82.206.88 netmask 0xffffffc0 inet6 2001:81:82::206:88 prefixlen 48 inet 81.82.206.124 netmask 0xffffffc0 inet6 2001:81:82::206:124 prefixlen 48 carp: BACKUP vhid 106 advbase 1 advskew 100 -- With kind regards, Angelo Höngens Systems Administrator ------------------------------------------ NetMatch tourism internet software solutions Ringbaan Oost 2b 5013 CA Tilburg T: +31 (0)13 5811088 F: +31 (0)13 5821239 mailto:A.Hongens@netmatch.nl http://www.netmatch.nl ------------------------------------------