continue;
}
+ // Bind link-local addresses only. Otherwise we bind several sockets
+ // on interfaces that have several global addresses. For examples
+ // with interface with 2 global addresses, we would bind 3 sockets
+ // (one for link-local and two for global). That would result in
+ // getting each message 3 times.
+ if (!addr->getAddress().to_v6().is_link_local()){
+ continue;
+ }
+
sock = openSocket(iface->getName(), *addr, port);
if (sock < 0) {
isc_throw(SocketConfigError, "failed to open unicast socket");