[ovs-dev] [PATCH] Support IPv6 link-local address scopes on Linux.

Ben Pfaff blp at ovn.org
Fri Jul 14 21:34:11 UTC 2017


On Wed, Jul 12, 2017 at 07:11:31AM +0000, Darrell Ball wrote:
> 
> 
> On 7/11/17, 9:23 PM, "Ben Pfaff" <blp at ovn.org> wrote:
> 
>     Thanks for the review.
>     
>     I'm very new to the concept of IPv6 link-local address scoping.  What
>     does this subset out of the larger feature?
> 
> There is lots of flexibility here, mostly not relevant to ovs; for example one basic
> zone mapping option is the ifindex directly.
> It can be used for direct mapping to zone id.
> If this option of encoding were to be additionally supported, it would mean
> something like 
> 
> sudo ovs-vsctl set-controller s1 'tcp:[fe80::41f3:ab56:bbab:a528%1]'
> where ‘1’ is the ifindex
> is another option.
> 
> In this case, it means the scope string converted to int would be the
> ifindex directly, something like
> 
> >     +        char *scope = strsep(&host_s, "%");
>     >     +        if (scope && *scope) {
>     >     +            sin6->sin6_scope_id = str_to_int(scope);
> 
> I did not elaborate earlier since ifindex is mostly secondary in ovs

OK, I see.

I realized that this patch was incomplete: it accepted scope
identifiers, but it dropped them if they needed to be formatted later.
But for formatting, it's unsafe to just randomly put in any netdev name
(it might contain confusing punctuation), so in a case like that one
needs to use the ifindex.  And once that's in there, for consistency one
should accept ifindex values also.

Anyway, to fix all of that, I respun this as a 3-patch series, starting here:
        https://mail.openvswitch.org/pipermail/ovs-dev/2017-July/335663.html


More information about the dev mailing list