cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2474
Views
10
Helpful
1
Replies

ipv6 general-prefix 'anomaly'?

mmanthe
Level 1
Level 1
I ran across a curious occurence as I was 'playing' with ipv6 on my lab. Specifically, I noticed that, when using the 'ipv6 general-prefix' feature, deleted prefixes do not seem to disappear from 'other routers'.
 
Example:
 
On R1 I configured several general prefixes:
 
R1#sho run | in general
ipv6 general-prefix LAB 2001:1:2::/48
ipv6 general-prefix LAB 2001:3:4::/48
ipv6 general-prefix LAB 2001:5:6::/48
 
I configured an interface on R1 to formulate addresses based on these prefixes:
 
R1#sho run int g1.146
Building configuration...
 
Current configuration : 189 bytes
!
interface GigabitEthernet1.146
 description link to VLAN 146 via VSwitch 2
 encapsulation dot1Q 146
 ip address 155.1.146.1 255.255.255.0
 ipv6 address LAB ::/64 eui-64
 ipv6 enable
end
 
Which worked as intended:
 
R1#sho ipv6 int bri g1.146
GigabitEthernet1.146   [up/up]
    FE80::20C:29FF:FE8E:FBA2
    2001:1:2:0:20C:29FF:FE8E:FBA2
    2001:3:4:0:20C:29FF:FE8E:FBA2
    2001:5:6:0:20C:29FF:FE8E:FBA2
 
It also had the (expected) effect of being used on an adjacent router (R4) whose connected interface was configured for autoconfig:
 
R4#sho run int g1.146
Building configuration...
 
Current configuration : 191 bytes
!
interface GigabitEthernet1.146
 description link to VLAN 146 via VSwitch 2
 encapsulation dot1Q 146
 ip address 155.1.146.4 255.255.255.0
 ipv6 address autoconfig default
 ipv6 enable
end
 
R4#sho ipv6 int bri g1.146
GigabitEthernet1.146   [up/up]
    FE80::20C:29FF:FE9B:470
    2001:1:2:0:20C:29FF:FE9B:470
    2001:3:4:0:20C:29FF:FE9B:470
    2001:5:6:0:20C:29FF:FE9B:470
    2001:6:6:6:20C:29FF:FE9B:470
 
So far, so good...
 
The 'odd' thing is, as I removed a couple of the general-prefixes from R1 - which automatically and immediately removed those addresses from Gig1.146 on R1:
 
R1(config)#no ipv6 general-prefix LAB 2001:3:4::/48
R1(config)#no ipv6 general-prefix LAB 2001:5:6::/48
R1(config)#do sho ipv6 int bri g1.146
GigabitEthernet1.146   [up/up]
    FE80::20C:29FF:FE8E:FBA2
    2001:1:2:0:20C:29FF:FE8E:FBA2
 
The deleted general-prefixes remained on R4's interface:
 
R4#sho ipv6 int bri g1.146
GigabitEthernet1.146   [up/up]
    FE80::20C:29FF:FE9B:470
    2001:1:2:0:20C:29FF:FE9B:470
    2001:3:4:0:20C:29FF:FE9B:470
    2001:5:6:0:20C:29FF:FE9B:470
    2001:6:6:6:20C:29FF:FE9B:470
 
Basically, to get them to go away, I had to shut\no shut the interface - thereby disrupting service:
 
R4(config)#int g1.146
R4(config-subif)#shut
R4(config-subif)#no shut
R4(config-subif)#^Z
R4#
*Mar 15 2019 13:13:44.582 EDT: %SYS-5-CONFIG_I: Configured from console by console
R4#sho ipv6 int bri g1.146
GigabitEthernet1.146   [up/up]
    FE80::20C:29FF:FE9B:470
    2001:1:2:0:20C:29FF:FE9B:470
    2001:6:6:6:20C:29FF:FE9B:470
 
Questions:
 
Is this normal\expected behavior - or is it a bug?
If it is normal, is there a non-disruptive way to clear the addresses?
If it is normal, what is the purpose?
 
Thanks!
 
1 Reply 1

Seb Rupik
VIP Alumni
VIP Alumni

Hi there,

Without testing it, I would say this appears to be the correct behavior as defined by RFC 4862, specifically:

https://tools.ietf.org/html/rfc4862#section-5.5.4

 

The interface will retain the addresses to ensure existing sessions can continue to function, but once the prefix lifetime expires it will no longer be used to initiate or receive new connections. The only way to clear these prefixes is as you have noted is to shut/ no shut the interface.

 

As for what happens on Router1, the addressing here is not dependent on SLAAC and RAs. General-prefixes are used to simplify interface prefix allocation. Once the general-prefix is removed the the router will 'know' to remove all occurrences from its interfaces.

 

cheers,

Seb.

 

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: