> On Sep 3, 2024, at 10:28, Mike Fischer <fischer+o...@lavielle.com> wrote:
> 
> There are two parts to this:
> - The IPv6 prefix.
> - The IID.
> 
> The changes of the IPv6 prefix are generally triggered from the outside 
> (Internet provider). So here some mechanism to notify about changes would be 
> nice.
> 
> Note that I am not advocating for slaacd to directly execute arbitrary 
> scripts. But maybe an (optional) service that can be notified by slaacd would 
> allow slaacd to stay secure, stable and compact while still providing 
> proactive notification instead of polling might fit the bill.
> 
> The IID is controlled by the host. Currently the only combination of 
> automatic prefix + static IID seems to be EUI64 IIDs. Additional syntax to 
> allow manually set static IIDs might be nice. Something like: `ifconfig $if 
> inet6 autoconf -iid aaaa:bbbb:cccc:dddd` which would imply -temporary -soii. 
> And the same for alias addresses.

Yup.  I can totally see the point of not wanting a script for both security and 
sanity.  The other suggestions above look reasonable and interesting.

>> I think this will not work when the network changes.
> 
> Not sure what you mean by "the network changes“? Are you talking about the 
> IPv6 prefix? If so it does work. I am using this in my setup to update DDNS 
> for IPv6 hosts on a dynamic IP Internet connection.

I did mean the prefix/network being advertised.

> Right now I see
>> two matches for that, one from the router I’m building which is getting
>> its IPv6 from a different location than the prior/current gateway.
>> I have the “new” network from that advertisement last night, with a
>> lifetime of 0.
> 
> Are you talking about a situation where multiple RAs from different routers 
> reach your host? That would take additional handling as that would lead to 
> your host having multiple (public/routable) IPv6 addresses with different 
> prefixes. I have not seen such a setup and have not thought about how to 
> handle that. Should be possible though.

No, no.  Sorry if this became unclear.  I am talking about what you presumed, a 
single router advertising a single prefix, but that could/would change.
I do see two prefixes, from different routers.  But, they were not both active 
at the same time.  One went away, and should’ve deprecated the network.  I 
presumed the same would happen with a change of RA from the same router.  That 
it would deprecate the old one and provide a new one.  So, I would expect to 
see the same thing I’m seeing now.  Perhaps it’s not the same, and changing 
addresses from a single router LL address doesn’t work the same way.


> 
> For me this all speculation as I don’t have such a setup. And maybe I 
> misunderstood your situation?

Yes, but only because I didn’t provide enough information.  :-)

> If I understand your situation correctly, you are implementing your new setup 
> in parallel to the old one? So you have the old router advertising a static 
> prefix and the new router advertising a different dynamic prefix?

In parallel as in switching back and forth, but not ever having them 
active/active (or even active/standby really.  More like a cold spare)

> What does `slaacctl show interface $if` output look like in that case? Do you 
> get two separate »Router Advertisement from …« sections?

What I’m seeing now is three “Router Advertisement from” from three different 
LL addresses on my single network interface.  I don’t know why that is.  Two of 
them are 61000+ seconds ago, so testing the new router with the new local-ISP 
IPv6 network.  But I can’t think of why there might've been two different LL 
address from that period of experimentation last night.  Of those two, one 
shows a router lifetime of 1800s, the other 0s.  That last is what I expected, 
that a deprecated route would show up with a 0 lifetime or something similar I 
could parse out indicating such.

(I also count 15 Address proposals, 4 from the original (and current) router, 
and 11 from the experimentation with the new router last night.  Much more 
complicated than I expected.)

I think this is all because this system has an uptime of more than 2 months and 
I’ve switched the routers around many times in recent weeks.  I think we can 
just ignore what I was/am seeing, and I’m happy to presume that you’re right 
with your commands and my situation is just unusual.

>> I only have “inet6 autoconf” for the same purpose.  Then, after sleeping
>> a few seconds, a couple of “inet6 alias” lines for the static secondary
>> addresses.
> 
> But isn’t this the same situation you have now with the only difference being 
> the frequency of the prefix changes? As soon as you use autoconf, you 
> potentially have changing prefixes.

I suppose that’s true, but I have been using the same /48 over a tunnel for 
more than 15 years.  It’s reserved.  So, I just knew my prefix wouldn’t change.

> How did you choose the alias addresses? Manually or based on the addresses 
> set by autoconf? With just autoconf without -temporary -soii you will get 
> multiple temporary IPv6 addresses for the prefix. Even if your prefix never 
> changes, the IIDs will.

The alias addresses were just chosen by me that were meaningful or interesting 
to me as a human.  Simple addresses.

And I don’t see changing IIDs.  I have an autoconf IPv6 address in DNS for this 
host and it hasn’t changed.  It came up when the system did and stays that way. 
 It’s not a temporary address.  Of the 3 proposed addresses I see now from this 
router in slaacctl output, two are temporary (one with a 0 pltime) and one is 
not.  That one is what I put in DNS years ago, and doesn’t change.

>> But, of course, that only works for the historic static
>> IPv6 network I am moving away from.
> 
> Depends on the answer to the above question ;-) In theory the frequency of 
> prefix changes should not make any difference to the overall mechanism.

Right.  The issue now is that I have no mechansim.  Well, static alias add on 
boot, and the advertised network never changes, so.  :-). I need a mechanism 
that can handle changes.  That was my original reason for inquiry.

Thanks.

              - Chris

Reply via email to