4

for example: i have a router with the lladdr fe80::1/64 on interface e0. the router is configured to advertise the autonomous, on-link prefix 2001:db8:1:1::/64 in RAs on e0. must the router have an address in 2001:db8:1:1::/64 configured on e0?

i don't see any technical reason why this should be required, since the hosts only use the router's lladdr for their gateway. i also can't find anything in RFCs 4861 or 4862 that would require this.

however, i can't find a definitive answer either way, and all the IPv6 configuration guides i've seen demonstrate configuring the router interface with an IP address in the advertised prefix.

2 Answers 2

2

Unless you apply an address in a prefix for that link, the router has no way to know that is the prefix for that link, so it cannot route packets destined to that network to that interface. A host (a router is also a host) needs to know the on-link prefix in order to generate the proper layer-2 frame for a packet (destination host for an on-link host, or a gateway for an off-link host). Remember that you are not just send packets from the link, but you also need to receive packets from elsewhere to the link.

Having said all that, there is a possibility of Using Only Link-Local Addressing inside an IPv6 Network for infrastructure links between routers:

In an IPv6 network, it is possible to use only link-local addresses on infrastructure links between routers. This document discusses the advantages and disadvantages of this approach to facilitate the decision process for a given network.

5
  • thanks. the issue of routing packets to the prefix did occur to me, but that could be solved by (for example) adding an interface route for the prefix, right? or not? (i'm not suggesting this is necessarily a good idea, i'm just wondering if it's technically permissible.)
    – unixwitch
    Commented Sep 10, 2023 at 14:53
  • No, because the router would not know that prefix is on-link. It needs to know what is on- or off-link so that that it can use things like NDP properly. Layer-3 packets need to be encapsulated into layer-2 frames, and packets for on-link hosts get frames addressed directly to the host at layer-2, while frames for off-link hosts get addressed to a gateway at layer-2.
    – Ron Maupin
    Commented Sep 10, 2023 at 15:00
  • that's the part i was missing. thanks!
    – unixwitch
    Commented Sep 10, 2023 at 15:23
  • Routing can be done without an interface address. The complexity will be in configuring the router to announce an unbound prefix. You can do that with radvd, but that's not really "a router". NDP will still work from a lladdr; that's the beauty of link-local addressing.
    – Ricky
    Commented Sep 10, 2023 at 19:32
  • @RonMaupin: Surely an interface route would tell the router the prefix is on-link?
    – psmears
    Commented Sep 11, 2023 at 12:55
2

Technically, there's no requirement for a prefix to be bound to the interface. The RA will be sent from the lladdr, and nodes will build routes using that lladdr as the destination. NDP ("arp") works just fine with lladdr's - it's a link-local process after all.

Looking at my own Cisco router, there have been provisions for announcing "unbound" prefixes for a long time:

gw-1(config)#int g0/0
gw-1(config-if)#ipv6 nd ?      
  advertisement-interval  Send an advertisement interval option in RA's
  autoconfig              Automatic Configuration
  cache                   Cache entry
  dad                     Duplicate Address Detection
  managed-config-flag     Hosts should use DHCP for address config
  ns-interval             Set advertised NS retransmission interval
  nud                     Neighbor Unreachability Detection
  other-config-flag       Hosts should use DHCP for non-address config
  prefix                  Configure IPv6 Routing Prefix Advertisement
  ra                      Router Advertisement control
  reachable-time          Set advertised reachability time
  router-preference       Set default router preference value

gw-1(config-if)#ipv6 nd prefix ?
  X:X:X:X::X/<0-128>  IPv6 prefix x:x::y/<z>
  default             Specify prefix default parameters
  framed-ipv6-prefix  Advertise prefix obtained from RADIUS server

HOWEVER... given a Standard LAN is commonly /64, there's very little reason not to assign an address for each prefix to the interface.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.