[
https://jira.jboss.org/jira/browse/JGRP-977?page=com.atlassian.jira.plugi...
]
Bela Ban commented on JGRP-977:
-------------------------------
Apparently, the scope-id should only be present when binding, e.g. a ServerSocket needs to
bind to local address AADR%3 (or ADDR%eth1 for instance).
However, when *connecting* to a link-local address, the Socket's target address must
not include the scope-id, or else the connection won't be established, e.g. a socket
connects to ADDR (succeeds), but NOT to ADDR%3 or ADDR%eth1 !
Handle IPv6 link-local addresses correctly when used as bind
addresses or multicast addresses
---------------------------------------------------------------------------------------------
Key: JGRP-977
URL:
https://jira.jboss.org/jira/browse/JGRP-977
Project: JGroups
Issue Type: Feature Request
Affects Versions: 2.4.6, 2.6.10, 2.8
Environment: IPv6 addresses being used
Reporter: Richard Achmatowicz
Assignee: Bela Ban
Fix For: 2.8
IPv6 has two types of IP addresses: global addresses and non-global addresses.
Global addresses are unique across the internet (via judicious allocation of network
prefixes by authorities). They make up the range 2000::/3 (2000:: to
3fff:ffff:ffff:ffff:ffff:ffff:ffff:ffff). Global addresses generally require no special
treatment.
Non-global addresses, like link-local (fe80::/10) and site-local addresses (fec0::/10)
are not guaranteed to be unique - in the extreme case, two interfaces on the same host can
have the same link-local address. This means that they cannot be used on their own when
binding to a socket, but must have extra information (a zone id or sometimes called scope)
added to them to disambiguate them. The zone id is basically the interface you want the
message to go out on.
A scoped link-local address is one which has a scope appended to it. The way to notate
this is to append the scope to the link-local address after a % sign:
<link-local IP address>%<zone id>
where the zone Id can be numerical or simply the next name of the interface. For example,
fe80::215:58ff:fec8:81a8%eth0.
A JGroups user may make use of link-local addresses when binding. In that case, we need
to make sure that the scope is present, and if not, take some action. Otherwise, when
binding to a socket with an unscoped link-local address, a SocketException will be raised.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira