Hi,
I found that IPv6addr failed to assign the address in the following
environments.
I attached patch for IPv6addr in Cluster Resource Agents
(changeset:de034cf1e9a1).
1) environments
# ifconfig bond0
bond0 Link encap:Ethernet HWaddr 00:10:18:27:02:D3
inet6 addr: 2001:db8:91:0:92::181/80 Scope:Global
[snip]
# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:1A:64:06:59:92
inet6 addr: 2001:db8:91:0:91::182/64 Scope:Global
[snip]
# grep ^2001 /proc/net/if_inet6
20010db8009100000091000000000182 0e 40 00 80 eth0
20010db8009100000092000000000181 0c 50 00 80 bond0
(* POINT which fails is this order.)
2) IPv6addr start op
# env | grep OCF_RESKEY
OCF_RESKEY_ipv6addr=2001:db8:91:0:92::189
OCF_RESKEY_nic=bond0
(* OCF_RESKEY_cidr_netmask is not specified intentionally.)
# /usr/lib/ocf/resource.d/heartbeat/IPv6addr start
# echo $?
1
#
I hope they are helpful to you.
Regards,
Kazunori INOUE
diff -urN agents.org/heartbeat/IPv6addr.c agents.mod/heartbeat/IPv6addr.c
--- agents.org/heartbeat/IPv6addr.c 2009-10-09 15:13:50.000000000 +0900
+++ agents.mod/heartbeat/IPv6addr.c 2009-10-09 15:19:36.000000000 +0900
@@ -294,6 +294,7 @@
/* release the pid file */
unlink(pid_file);
+ cl_log(LOG_DEBUG, "%s %s : %d", getenv("OCF_RESOURCE_INSTANCE"),
argv[1], ret);
return ret;
}
int
@@ -513,7 +514,6 @@
if (*plen_target!=0 && plen != *plen_target) {
continue;
}
- *plen_target = plen;
/* If interface name provided, only same devname entry
* would be considered
@@ -554,6 +554,7 @@
/* We found it! */
if (same) {
fclose(f);
+ *plen_target = plen;
return devname;
}
}
_______________________________________________________
Linux-HA-Dev: [email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/