Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Recognize Martian Addresses for Routing

 

Understanding Martian Addresses

Martian addresses are host or network addresses about which all routing information is ignored. When received by the routing device, these routes are ignored. They commonly are sent by improperly configured systems on the network and have destination addresses that are obviously invalid.

In IPv6, the loopback address and the multicast resolve and discard routes are the default martian addresses.

In Junos OS Release 10.4R5 and later, the reserved IPv6 multicast address space (ff00::/8 and ff02::/16) is added to the list of martian addresses.

In Junos OS Release 9.6 and later, you can configure Class E addresses on interfaces. Class E addresses are treated like any other unicast address for the purpose of forwarding. To allow Class E addresses to be configured on interfaces, you must remove the Class E prefix from the list of martian addresses. To remove the Class E prefix from the list of martian addresses include the martians 240/4 orlonger allow statement at the [edit routing-options] hierarchy level.

To view the default and configured martian routes, run the show route martians command.

IPv4 Martian Addresses

user@host> show route martians table inet.

IPv6 Martian Addresses

user@host> show route martians table inet6

Example: Removing the Class E Prefix on Martian Addresses

This example shows how to remove the Class E prefix from the list of martian addresses.

Requirements

No special configuration beyond device initialization is required before configuring this example.

Overview

In this example, Junos OS defaults are modified to allow the 240.0.0.0/4 address block. This block of addresses is known as the experimental Class E addresses. In Junos OS Release 9.6 and later, you can configure Class E addresses on interfaces and use them for forwarding traffic. However, to do this, you must first allow routing on this address block.

This example also shows how to modify the martian addresses in the IPv6 routing table, inet6.0.

Configuration

CLI Quick Configuration

To quickly configure this example, copy the following commands, paste them into a text file, remove any line breaks, change any details necessary to match your network configuration, and then copy and paste the commands into the CLI at the [edit] hierarchy level.

Step-by-Step Procedure

The following example requires you to navigate various levels in the configuration hierarchy. For information about navigating the CLI, see Using the CLI Editor in Configuration Mode in the CLI User Guide.

To configure martian routes:

  1. Allow Class E addresses in the default unicast routing table.
  2. Allow Class E addresses in the routing table that is used for the IPv4 multicast forwarding cache.
  3. Allow Class E addresses in the routing table that is used for multicast reverse path forwarding (RPF) lookup.
  4. Allow Class E addresses in the routing table that stores MPLS LSP information.
  5. Add a disallowed martian route to the IPv6 unicast routing table.
  6. If you are done configuring the device, commit the configuration.

Results

Confirm your configuration by issuing the show routing-options command. If the output does not display the intended configuration, repeat the instructions in this example to correct the configuration.

Verification

Confirm that the configuration is working properly.

Verifying That the 240.0.0.0/4 Routes Are Now Accepted

Purpose

Make sure that the 240.0.0.0/4 route appears in the routing tables as allowed.

Action

user@host> show route martians table inet.

Meaning

The output shows that the 240.0.0.0/4 route is allowed.

Verifying That the fd00::/8 Routes Are Now Rejected

Purpose

Make sure that the fd00::/8 route appears in the IPv6 unicast routing table as disallowed.

Action

user@host> show route martians table inet6.0

Meaning

The output shows that the fd00::/8 route is disallowed.