Bug 1276698
Summary: | [RFE] IPaddr2: Use IPv6 DAD for collision detection | ||||||
---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | Oyvind Albrigtsen <oalbrigt> | ||||
Component: | resource-agents | Assignee: | Oyvind Albrigtsen <oalbrigt> | ||||
Status: | CLOSED ERRATA | QA Contact: | cluster-qe <cluster-qe> | ||||
Severity: | high | Docs Contact: | |||||
Priority: | high | ||||||
Version: | 6.8 | CC: | abeekhof, agk, cbuissar, cluster-maint, cluster-qe, fdinitto, jkortus, jruemker, mnovacek, royoung, sauchter, tbowling, tlavigne | ||||
Target Milestone: | rc | Keywords: | FutureFeature | ||||
Target Release: | --- | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Whiteboard: | |||||||
Fixed In Version: | resource-agents-3.9.5-28.el6 | Doc Type: | Enhancement | ||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | 1191247 | ||||||
: | 1276699 (view as bug list) | Environment: | |||||
Last Closed: | 2016-05-10 19:15:12 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Bug Depends On: | 1191247 | ||||||
Bug Blocks: | 1172231, 1271835, 1276699 | ||||||
Attachments: |
|
Setup an IPv6 address that collides with one on the network and check /var/log/cluster/corosync.log. Before: IPaddr2(IP)[18807]: 2015/12/21_14:25:40 WARNING: XXXX::10 still has 'tentative' status. (ignored) After: IPaddr2(IP)[14066]: 2015/12/21_14:19:44 ERROR: IPv6 address collision XXXX::10 [DAD] Setup an IPv6 address resource that collides with one on the network: # pcs resource create IPv6 IPaddr2 ip=XXXX::10 Before: # pcs resource enable IPv6 # tail -f /var/log/cluster/corosync.log ... IPaddr2(IP)[18807]: 2015/12/21_14:25:40 WARNING: XXXX::10 still has 'tentative' status. (ignored) After: # pcs resource enable IPv6 # tail -f /var/log/cluster/corosync.log ... IPaddr2(IP)[14066]: 2015/12/21_14:19:44 ERROR: IPv6 address collision XXXX::10 [DAD] I have verified that DAD is used for ipv6 address collision detection in resource-agents-3.9.5-34.el6.x86_64 ---- # ping6 -c 2 2620:52:0:2246:1800:ff:fe00:90 PING 2620:52:0:2246:1800:ff:fe00:90(2620:52:0:2246:1800:ff:fe00:90) 56 data bytes 64 bytes from 2620:52:0:2246:1800:ff:fe00:90: icmp_seq=1 ttl=64 time=1.81 ms 64 bytes from 2620:52:0:2246:1800:ff:fe00:90: icmp_seq=2 ttl=64 time=0.697 ms --- 2620:52:0:2246:1800:ff:fe00:90 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1002ms rtt min/avg/max/mdev = 0.697/1.254/1.811/0.557 ms # pcs status Cluster name: STSRHTS4495 Last updated: Wed Mar 30 11:33:40 2016 Last change: Wed Mar 30 11:29:16 2016 by root via cibadmin on virt-146.cluster-qe.lab.eng.brq.redhat.com Stack: cman Current DC: virt-146.cluster-qe.lab.eng.brq.redhat.com (version 1.1.14-3.el6-70404b0) - partition with quorum 2 nodes and 3 resources configured Online: [ virt-146.cluster-qe.lab.eng.brq.redhat.com virt-147.cluster-qe.lab.eng.brq.redhat.com ] Full list of resources: fence-virt-146 (stonith:fence_xvm): Started virt-146.cluster-qe.lab.eng.brq.redhat.com fence-virt-147 (stonith:fence_xvm): Started virt-147.cluster-qe.lab.eng.brq.redhat.com PCSD Status: virt-146.cluster-qe.lab.eng.brq.redhat.com: Unable to authenticate virt-147.cluster-qe.lab.eng.brq.redhat.com: Unable to authenticate virt-146# pcs resource create ClusterIP ocf:heartbeat:IPaddr2 ip=2620:52:0:2246:1800:ff:fe00:90 cidr_netmask=64 virt-146# pcs resource disable ClusterIP virt-146# pcs resource --full Resource: ClusterIP (class=ocf provider=heartbeat type=IPaddr2) Attributes: ip=2620:52:0:2246:1800:ff:fe00:90 cidr_netmask=64 Meta Attrs: target-role=Stopped Operations: start interval=0s timeout=20s (ClusterIP-start-interval-0s) stop interval=0s timeout=20s (ClusterIP-stop-interval-0s) monitor interval=30s (ClusterIP-monitor-interval-30s) unpatched: resource-agents-3.9.5-27.el6.x86_64 ============================================== virt-146# pcs resource enable ClusterIP virt-146# grep IPaddr2 /var/log/messages | tail Mar 30 11:22:26 virt-147 IPaddr2(ClusterIP)[4256]: INFO: IP status = ok, IP_CIP= Mar 30 11:39:07 virt-147 IPaddr2(ClusterIP)[4523]: INFO: Adding inet6 address 2620:52:0:2246:1800:ff:fe00:90/64 to device eth0 Mar 30 11:39:07 virt-147 IPaddr2(ClusterIP)[4523]: INFO: Bringing device eth0 up >>>>> Mar 30 11:39:11 virt-147 IPaddr2(ClusterIP)[4523]: WARNING: 2620:52:0:2246:1800:ff:fe00:90 still has 'tentative' status. (ignored) Mar 30 11:39:11 virt-147 IPaddr2(ClusterIP)[4523]: INFO: /usr/libexec/heartbeat/send_ua -i 200 -c 5 2620:52:0:2246:1800:ff:fe00:90 64 eth0 Mar 30 11:51:26 virt-147 IPaddr2(ClusterIP)[7046]: INFO: IP status = ok, IP_CIP= Mar 30 11:59:48 virt-147 IPaddr2(ClusterIP)[7247]: INFO: Adding inet6 address 2620:52:0:2246:1800:ff:fe00:90/64 to device eth0 Mar 30 11:59:48 virt-147 IPaddr2(ClusterIP)[7247]: INFO: Bringing device eth0 up Mar 30 11:59:52 virt-147 IPaddr2(ClusterIP)[7247]: WARNING: 2620:52:0:2246:1800:ff:fe00:90 still has 'tentative' status. (ignored) Mar 30 11:59:52 virt-147 IPaddr2(ClusterIP)[7247]: INFO: /usr/libexec/heartbeat/send_ua -i 200 -c 5 2620:52:0:2246:1800:ff:fe00:90 64 eth0 patched: resource-agents-3.9.5-34.el6.x86_64 ========---------=========================== virt-146# pcs resource enable ClusterIP virt-146# grep IPaddr2 /var/log/messages | tail Mar 30 11:22:45 virt-146 IPaddr2(ClusterIP)[11049]: INFO: Adding inet6 address 2620:52:0:2246:1800:ff:fe00:93/64 to device eth0 Mar 30 11:22:45 virt-146 IPaddr2(ClusterIP)[11049]: INFO: Bringing device eth0 up Mar 30 11:22:47 virt-146 IPaddr2(ClusterIP)[11049]: INFO: /usr/libexec/heartbeat/send_ua -i 200 -c 5 2620:52:0:2246:1800:ff:fe00:93 64 eth0 Mar 30 11:28:36 virt-146 IPaddr2(ClusterIP)[11733]: INFO: IP status = ok, IP_CIP= Mar 30 11:35:59 virt-146 IPaddr2(ClusterIP)[12146]: INFO: IP status = ok, IP_CIP= Mar 30 11:39:06 virt-146 IPaddr2(ClusterIP)[12274]: INFO: Adding inet6 address 2620:52:0:2246:1800:ff:fe00:90/64 to device eth0 Mar 30 11:39:06 virt-146 IPaddr2(ClusterIP)[12274]: INFO: Bringing device eth0 up >>>>> Mar 30 11:39:07 virt-146 IPaddr2(ClusterIP)[12274]: ERROR: IPv6 address collision 2620:52:0:2246:1800:ff:fe00:90 [DAD] Mar 30 11:39:07 virt-146 IPaddr2(ClusterIP)[12274]: ERROR: run_send_ua failed. Mar 30 11:39:07 virt-146 IPaddr2(ClusterIP)[12359]: INFO: IP status = ok, IP_CIP= Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2016-0735.html |
Created attachment 1087941 [details] Working patch Tested and working patch.