Enabling a Host to Use the Router Discovery Protocol

The router discovery protocol enables enterprise server TCP/IP hosts attached to multicast or broadcast IPv4 networks to dynamically discover the IP addresses of their neighboring routers. This is especially useful when an enterprise server TCP/IP host is attempting to route IP traffic to a host that is beyond its directly attached subnet. Use of the router discovery protocol eliminates the need for you to manually configure IP addresses of neighboring routers.

Note: RFC 1256 defines different actions to be taken by a system involved in router discovery depending on whether the system is a host or a router. The TCP/IP library checks the setting of the IPFORWARDING attribute to determine whether the system is capable of forwarding datagrams. If IPFORWARDING is enabled, the router discovery frames (along with data packets) will be forwarded to the appropriate destination.When a system is a host, it can perform router discovery, receiving router advertisements and sending router solicitations. It cannot forward IP packets since the IPFORWARDING attribute is set to disabled.RFC 1009 contains a list of functions which must all be performed for a system to be considered a router. RFC 1256 requires that to act as a router in router discovery, RFC 1009 must be followed. However, at this time, the enterprise server TCP/IP implementation does not fully support RFC 1009, and therefore the TCP/IP library cannot act as a router. This means that the system cannot send router advertisements or answer router solicitations, but this system can forward IP packets.The IPFORWARDING attribute is settable through the SNMP SET command. Issue the SNMP GET command to inquire on a systems current setting of the IPFORWARDING attribute.

Router discovery is performed by issuing the following ICMP messages.

ICMP Message Types

Description

Advertisements

Periodically sent from neighboring routers to announce their IP address for the multicast interface.

The enterprise server TCP/IP host, enabled for router discovery, will listen to the advertisements received from neighboring routers to discover their IP addresses.

Current enterprise server TCP/IP implementation of router discovery enables the hosts to listen but not send advertisements to other neighboring routers on the network.

Solicitations

Issued by a host to request advertisements from neighboring routers in the network.

When a host that is enabled for router discovery and attached to a multicast link is initialized (or reinitialized), it will multicast a router solicitation message to ask for immediate advertisements from neighboring routers. Issuing an SNMP SET command also causes the host to send an ICMP router discovery solicitation message.

Current TCP/IP implementation of router discovery enables the hosts to solicit IP addresses of neighboring routers but not respond to solicitations received from other routers in the network. Solicitations received from neighboring routers are discarded by the TCP/IP host.

Enabling a Host to Dynamically Discover Neighboring Router's IP Addresses

To enable a host to use the router discovery protocol, set one or more of the following router discovery attributes:

Note: Setting any one of the following attributes causes the other three attributes to automatically be set to default values.

Attribute

Description

ICMPRDISCPERFORM

Enables a host to use the router discovery protocol.

ICMPRDISCNETADDR

The network for which the router discovery information applies.

ICMPRDISCSOLICITATIONADDR

The IP destination address used for sending router solicitations from the interface.

ICMPRDISCTTL

The number of hops an IP datagram can take before becoming invalid and discarded. This value is inserted in the Time To Live (TTL) field of the IP header of a router discovery message.

The router discovery attributes that you have set will be stored in the Router Discovery table, which is indexed by ICMPRDISCNETADDR.

Setting Router Discovery Attributes on a Per-Network Basis

To set a router discovery attribute, issue the following command from the system console:

NW SNMP SET <attribute name> <ip address> = <value>

where <ip address> is the IP address of the host that you want to perform router discovery.

The variables are described as follows.

<attribute name> =

<value> =

ICMPRDISCPERFORM

One of the following values:

  • 1 = Enabled

  • 2 = Disabled

Default = 1 (Enabled)

Note: Setting ICMPRDISCPERFORM to 1 will send an ICMP router discovery solicitation message.

ICMPRDISCNETADDR

<ip address>

ICMPRDISCSOLICITATIONADDR

One of the following:

  • 244.0.0.2 = multicast address

  • 255.255.255.255 = broadcast address

    For a link to be multicast-capable, the MULTICASTADDRLIST attribute must be set for the connection.

    To statically configure a value for the MULTICASTADDRLIST attribute, you must issue either of the following OI commands:

    • ADD CONNECTION

    • MODIFY CONNECTION

Note: For command syntax, refer to the Networking Commands and Inquiries Help.

Default = 255.255.255.255

ICMPRDISCTTL

1 if the solicitation address is set to 244.0.0.2.

1 - 255 if a broadcast address is used.

Default = 1

Note: The SNMP SET command can also be issued to disable the router discovery protocol. To disable the router discovery protocol for a host, set the ICMPRDISCPERFORM attribute equal to 2 (Disabled).

For example, if you issue an SNMP SET command (using the ICMPRDISCPERFORM attribute), and the command is successful, the system returns the following response:

SNMP OBJECTS
 REQUEST ID = 0
 ERROR STATUS = 0
 ERROR INDEX = 0
OBJECT ID = ICMPRDISCPERFORM 1.3.6.1.4.1.223.5.1.1.6.1.2.<IP address>
 OBJECT DESC = <1 or 2>

To verify that a router discovery attribute is correctly set, issue the SNMP GET inquiry. For example, to verify that the ICMPRDISCPERFORM attribute is set to enabled, issue the following inquiry from the system console:

NW SNMP GET ICMPRDISCPERFORM <ip address>

Setting an Additional Global Router Discovery Attribute

In addition to setting the router discovery attributes on a per-network basis, you have the option of setting an additional router discovery attribute on a global basis.

The enterprise server TCP/IP ICMPLIMITEDBCAST attribute can be set for the entire system. It is recommended that you set this attribute to prevent possible flooding of the network when a link using router discovery is configured with a broadcast address and if you have one or more routers that retransmit limited broadcast messages.

To set the ICMPLIMITEDBCAST attribute, issue the following command from the system console:

NW SNMP SET ICMPLIMITEDBCAST = <value>

where <value> can be one of the following:

  • 1 = Enabled (Limited broadcast)

  • 2 = Disabled (Directed broadcast)

Default = 1

Note: Some routers are known to disobey the RFCs and retransmit limited broadcast onto other physical LANs. Setting the ICMPLIMITEDBCAST attribute to 2 (Disabled) will limit the retransmission to a particular network.

Router Discovery Log Message

The following message will appear in the SUMLOG if a router discovery advertisement message is received on a network for which there is no information in the Router Discovery table. This message will only appear in the SUMLOG if the tracing option of the TCP/IP DEBUG command is enabled for ICMP.

ROUTER DISCOVERY ERROR MESSAGE: AN ADVERTISEMENT WAS RECEIVED FROM THE
SOURCE IP ADDRESS <IP address> BUT NO ENTRY EXISTS IN THE ROUTER
DISCOVERY TABLE

If you want a host to participate in router discovery, see "Enabling a Host to Dynamically Discover Neighboring Router's IP Addresses" earlier in this section.