tech-net archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Dealing with ICMPv6 network unreachable.
On Fri, 03 Apr 2015, Roy Marples wrote:
On Fri, 2015-04-03 at 11:20 -0400, Mouse wrote:
There is no guarantee the same network will be plugged back
in.
True. But the time to deal with that is when you discover
another network was plugged in, not when the original network
is unplugged.
I strongly agree with Mouse. A cable being unplugged should be
treated as a temporary condition, until such time as you have
better information, such as "it's been unplugged for a long time
now", or "it's plugged in again, but looks like a different
network".
So lets say that we are plugged back into a new network, but it
shares the same subnet and your existing IP address conflicts
with a server on the network.
Two different networks that use the same address range? Like two
distinct instances of 192.168.1.0/24?
Yes, that can happen, but dealing with should be done in a
way that does not punish people who simply remove a cable and
re-attach it seconds later, or power cycle a switch or access
point to have it come back up a minute or two later.
However, I would rather be notified right away that something
was awry with the connection rather than waiting for a long
timeout on switching networks.
People who connect to multiple disjoint networks that happen to
share the same IP address range are unusual, and should have the
lowest priority in considering tradeoffs where making things work
better for one class of user causes trouble for another class of
user.
Here are a few scenarios:
1. Disconnected and re-connected to the same network after a short
delay: Don't remove addresses on disconnect, but perhaps mark
them as deprecated, or not to be used for initiating new outbound
comnnections; On re-connect, verify that we appear to be on the
same network, and mark addresses as fully usable again.
2. Disconnected and re-connected to the same network after a long
delay: Perhaps the addresses can be removed after a timeout, and
then re-connection can be handled like the very first connection
after reboot. (The timeout could be a configuration option, and
I'd suggest between 5 and 15 minutes: long enough to reboot a
router or switch, but short enough that the user is unlikely to
be able to travel to a different site and plug in to a different
network that happens to share so many qualities that dhcpcd is
unable to distinguish the two, as in case 5 below.)
3. Disconnected and re-connected to a different network after a
short delay: On re-connect, notice that the network is different,
remove the old addresses, and add new addresses.
4. Disconnected and re-connected to a different network after
a long delay: Same as case 3, or perhaps the old addresses had
already been removed as for case 2.
5. Disconnected and then re-connected to a network that is really
different, but that is somehow mis-identified as being the same:
The user loses, unless the old addresses had been removed after a
timeout as in case 2. The user can manually initiate some sort
of "repair" process, which removes old addresses and requests new
addresses.
If you can do something to make the user in case 5 happier, while
not making the user in case 1 sadder, then please do so. If you
can improve the mechanism for distinguishing between "the same"
and "different" networks, then please do so. But I think that
being nice to the user in case 1 is much more important than being
nice to the user in case 5.
--apb (Alan Barrett)
Home |
Main Index |
Thread Index |
Old Index