On 08/18/2015 03:39 PM, Björn Lässig wrote: > For not having any dependencies in my cluster network, i want to use > only ipv6 link-local addresses on interface 'cephnet'. > cluster_network = fe80::%cephnet/64 RFC4007 11.7 The IPv6 addressing architecture [1] also defines the syntax of IPv6 prefixes. If the address portion of a prefix is non-global and its scope zone should be disambiguated, the address portion SHOULD be in the format. For example, a link-local prefix fe80::/64 on the second link can be represented as follows: fe80::%2/64 In this combination, it is important to place the zone index portion before the prefix length when we consider parsing the format by a name-to-address library function [11]. That is, we can first separate the address with the zone index from the prefix length, and just pass the former to the library function. so my original format would be the correct one. just looked into the code ... and this is exactly what happens in: src/common/ipaddr.cc: bool parse_network(const char *s, […]) { it looks where a '/' is and try to cast everything after to a longint. Everything before the '/' is thrown into inet_pton ok = inet_pton(AF_INET6, addr, &((struct sockaddr_in6*)network)->sin6_addr); and inet_pton6 from glibc does not look at '%'. No chance, this code could work with an interfacename after or before the '/' I'm using addresses with global scope now. Björn _______________________________________________ ceph-users mailing list ceph-users@xxxxxxxxxxxxxx http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com