Address assignment protocols
Get a generic overview of the address assignment protocols supported in a MAG-c solution.
This section provides a generic overview of the address assignment protocols supported in a MAG-c solution.
Some address assignment protocols are specific to a session type (for example, IPCP for PPPoE) while other protocols are common for multiple session types (for example, SLAAC for IPoE and PPPoE).
The following table lists the supported address assignment protocols per session type.
IPoE session | PPPoE session | |
---|---|---|
DHCP (see DHCP) | ✓ | |
IPCP (see IPCP) | ✓ | |
DHCPv6 NA (see DHCPv6) | ✓ | ✓ |
DHCPv6 PD (see DHCPv6) | ✓ | ✓ |
SLAAC (see ICMPv6 Router Advertisements (RA) and SLAAC) | ✓ | ✓ |
DHCP
The DHCP protocol, as defined in RFCs 2131, 2132, 3046, 4679, and 6842, is supported for IPv4 address assignment. The address allocation provides the address and the associated default gateway address. The subnet mask, as signaled in DHCP, is based on the micro-net subnet as provided by ODSA.
configure mobile-gateway pdn apn
The MAG-c maintains a DHCP lease for every successfully negotiated DHCP transaction and extends the lease on renew or rebind. If a lease expires, the MAG-c considers the IPv4 address for the session down and takes appropriate actions for the corresponding session (for example, bring the session down).
The following sources define the DHCP options sent in messages to the client:
- explicit option values provided by authentication sources
- bulk options signaled during authentication; for example, via the RADIUS Alc-ToClient-Dhcp-Options VSA
- bulk options derived from a locally configured DHCP profile using the
dhcp-profile command in the following
context
configure mobile-gateway profile bng
- DNS options from local address assignment (used in ODSA)
DHCP Offer and Ack messages to the client are constructed using the explicit option values. The option values of the two bulk sources (authentication and DHCP profile) are appended after the explicit option values.
The following rules apply to the options.
- Only one source can provide DNS or NBNS. If a source with higher priority provides
DNS or NBNS, DNS or NBNS are filtered out of lower-priority bulk options if present.
The sources have the following priority:
- explicit options
- authentication bulk options
- DHCP profile options
- local address assignment options
- Lease time, renew, and rebind timers are only provided by explicit per-session authentication sources and are filtered out of bulk options if present.
- Specific options cannot be configured in the message and are filtered out of authentication bulk options. Overriding these options leads to incorrect DHCP behavior. Examples of these options are subnet mask, router, and DHCP message type.
IPCP
IPCP is used for PPPoE sessions and is defined in RFC 1332 and RFC 1877. IPCP is used to signal an allocated IPv4 address and any DNS or NBNS address.
After IPCP is successfully negotiated, the MAG-c never initiates an IPCP Terminate Request. The client can bring down the IPCP stack and renegotiate if the underlying session is still alive. However, this does not trigger a reallocation of the IP address.
ICMPv6 Router Advertisements (RA) and SLAAC
The MAG-c periodically generates ICMPv6 RA messages when an IPv6 address is allocated for the session. A client can trigger the generation of an ICMPv6 RA message by sending an ICMPv6 Router Solicitation (RS) message, but this is not mandatory.
The client uses the source address of the ICMPv6 RA message as its default gateway address. By default, this source address is a link-local address derived from the MAC address of the MAG-c. The MAG-c installs the link-local address on the BNG-UP via PFCP so the BNG-UP can answer any ND request for it.
configure mobile-gateway profile authentication-database entry interface
The
MAG-c installs the override on the BNG-UP via PFCP. While this allows very granular overrides, a Nokia BNG-UP can only have one unique link-local address per realm.ICMPv6 RA messages use an RA profile. The RA profile is configured during authentication.
configure mobile-gateway profile bng
The RA profile defines the following parameters:
-
advertisement-interval min and advertisement-interval max
These parameters define the interval between periodical unsolicited ICMPv6 RA messages. The MAG-c sends periodical unsolicited ICMPv6 RA messages with a random interval between the configured min and max. The random interval is regenerated after every unsolicited RA message.
By default, the maximum advertisement interval is 600s and the minimum advertisement interval is 33% of the maximum interval.
-
force-unicast-mac
This parameter defines which MAC address to use.
If force-unicast-mac is enabled, the MAG-c sends ICMPv6 RA messages to the unicast MAC address of the session, otherwise the MAG-c sends the ICMPv6 RA messages to the all-nodes multicast MAC address (33:33:00:00:00:01).
To avoid sending ICMPv6 RA messages to the wrong client, the force-unicast-mac parameter is by default enabled.Note: The destination IP address is always the all-nodes multicast IP address (FF02::1). -
router-lifetime
This parameter defines the validity period of the default router after receipt of the ICMPv6 RA message. By default, the router-lifetime is equal to (advertisement-interval max × 3).
-
reachable-time and retransmit-timer
The reachable-time parameter defines the period that a neighbor can be reached after receiving a reachability confirmation.
The retransmit-timer parameter defines the interval between retransmitted NS messages. By default, both parameters are set to zero, that is, the MAG-c does not specify a value, and the client can choose a value based on local configurations.
-
hop-limit
This parameter defines the value of the Hop Limit field in the IPv6 header of outgoing ICMPv6 RA messages.
By default, the hop-limit value equals 255 hops.
-
mtu
This parameter defines whether the MTU option is included in the ICMPv6 RA messages and, if included, what value the MTU option contains. By default, the MTU option equals not-included.
-
other-configuration
This parameter defines whether the other-configuration flag in the ICMPv6 RA message is enabled. If the other-configuration flag is enabled, a client can receive options via DHCPv6 without acquiring an address via DHCPv6; for example, in combination with SLAAC based address assignment. By default, the other-configuration parameter is disabled. To indicate whether address assignment via DHCPv6 is available, the related M flag is automatically set if a DHCPv6 IA-NA or an IA-PD prefix was allocated to the session.
-
on-link
This parameter defines whether the on-link flag is set in the SLAAC prefixes that are present in the ICMPv6 RA messages.
By default, this flag is set.
When an SLAAC address is allocated to the client, each ICMPv6 RA message includes the SLAAC prefix with the A flag enabled. With the A flag enabled, the client can autonomously allocate an IPv6 address from the signaled SLAAC prefix (as defined in RFC 4862).
The ICMPv6 RA messages do not contain any other prefixes. A prefix that is derived from either DHCPv6 IA-PD or IA-NA, is not present.
The ICMPv6 RA messages include all IPv6 DNS servers that are discovered during session authentication (as defined in RFC 8106).
DHCPv6
The MAG-c supports the DHCPv6 protocol, as defined in RFC 8415, with additional support for a Lightweight DHCPv6 Relay Agent (LDRA) between the DHCPv6 client and the BNG-UP/MAG-c as defined in RFC 6221.
Within the DHCPv6 lease, the following is signaled to the client:
- an allocated IA-NA address, an IA-PD prefix, or both
- preferred and valid lifetimes
- IPv6 DNS servers
- DUID of the server
configure mobile-gateway profile authentication-database entry address-assignment lifetimes
Valid
and preferred lifetimes are common for all IPv6 addresses of a session.configure mobile-gateway pdn apn
The MAG-c maintains a DHCP6 lease for every successfully negotiated DHCPv6 transaction and extends the lease on renew or rebind. The lease time is based on the IPv6 valid lifetime. If a lease expires, the MAG-c considers the IA-NA address or IA-PD prefix for the session down and takes appropriate actions for the corresponding session (for example, bring the session down, or bring IPv6CP down).
As with DHCP, DHCPv6 options can come from multiple sources. The following sources define the DHCPv6 options sent in messages to the client:
- explicit option values provided by authentication sources
- bulk options signaled during authentication; for example, via the RADIUS Alc-ToClient-Dhcp6-Options VSA
- bulk options derived from a locally configured DHCP profile using the
dhcpv6-profile command in the following context
configure mobile-gateway profile bng
- DNS options from Local Address Assignment (ODSA)
DHCPv6 Advertise and Reply messages to the client are constructed using the explicit option values. The option values of the two bulk sources (authentication and DHCPv6 profile) are appended after the explicit options.
The following rules apply to the options.
- Only one source can provide DNS. If a source with higher priority provides DNS
options, they are filtered out of lower priority bulk options if present. The
sources have the following priority:
- explicit options
- authentication bulk options
- DHCPv6 profile options
- local address assignment options
- Identity Association (IA) options, server DUID, server unicast, relay message, status code, interface ID, and other similar options are filtered out of the bulk options because these must be in full control of the MAG-c.
- In case of LDRA, all options are included in the Relayed message.
If an IA-PD prefix or IA-NA address is allocated, the MAG-c sends ICMPv6 RA messages so the client can learn its default gateway address. For consistency, the MAG-c sends DHCPv6 messages with a link-local address that is the same as the source address in ICMPv6 RA messages.