Examples: Configuring DVMRP

 

Understanding DVMRP

Distance Vector Multicast Routing Protocol (DVMRP) was deprecated in Junos OS Release 16.1. Although DVMRP commands continue to be available and configurable in the CLI, they are no longer visible and are scheduled for removal in a subsequent release.

The Distance Vector Multicast Routing Protocol (DVMRP) is a distance-vector routing protocol that provides connectionless datagram delivery to a group of hosts across an internetwork. DVMRP is a distributed protocol that dynamically generates IP multicast delivery trees by using a technique called reverse-path multicasting (RPM) to forward multicast traffic to downstream interfaces. These mechanisms allow the formation of shortest-path trees, which are used to reach all group members from each network source of multicast traffic.

DVMRP is designed to be used as an interior gateway protocol (IGP) within a multicast domain.

Because not all IP routers support native multicast routing, DVMRP includes direct support for tunneling IP multicast datagrams through routers. The IP multicast datagrams are encapsulated in unicast IP packets and addressed to the routers that do support native multicast routing. DVMRP treats tunnel interfaces and physical network interfaces the same way.

DVMRP routers dynamically discover their neighbors by sending neighbor probe messages periodically to an IP multicast group address that is reserved for all DVMRP routers.

Configuring DVMRP

Distance Vector Multicast Routing Protocol (DVMRP) was deprecated in Junos OS Release 16.1. Although DVMRP commands continue to be available and configurable in the CLI, they are no longer visible and are scheduled for removal in a subsequent release.

Distance Vector Multicast Routing Protocol (DVMRP) is the first of the multicast routing protocols and has a number of limitations that make this method unattractive for large-scale Internet use. DVMRP is a dense-mode-only protocol, and uses the flood-and-prune or implicit join method to deliver traffic everywhere and then determine where the uninterested receivers are. DVMRP uses source-based distribution trees in the form (S,G).

To configure the Distance Vector Multicast Routing Protocol (DVMRP), include the dvmrp statement:

You can include this statement at the following hierarchy levels:

  • [edit protocols]

  • [edit logical-systems logical-system-name protocols]

By default, DVMRP is disabled.

Example: Configuring DVMRP

This example shows how to use DVMRP to announce routes used for multicast routing as well as multicast data forwarding.

Distance Vector Multicast Routing Protocol (DVMRP) was deprecated in Junos OS Release 16.1. Although DVMRP commands continue to be available and configurable in the CLI, they are no longer visible and are scheduled for removal in a subsequent release.

Requirements

Before you begin:

Overview

DVMRP is a distance vector protocol for multicast. It is similar to RIP, in that both RIP and DVMRP have issues with scalability and robustness. PIM domains are more commonly used than DVMRP domains. In some environments, you might need to configure interoperability with DVMRP.

This example includes the following DVMRP settings:

  • protocols dvmrp rib-group—Associates the dvmrp-rib routing table group with the DVMRP protocol to enable multicast RPF lookup.

  • protocols dvmrp interface—Configures the DVMRP interface. The interface of a DVMRP router can be either a physical interface to a directly attached subnetwork or a tunnel interface to another multicast-capable area of the Multicast Backbone (MBone). The DVMRP hold-time period is the amount of time that a neighbor is to consider the sending router (this router) to be operative (up). The default hold-time period is 35 seconds.

  • protocols dvmrp interface hold-time—The DVMRP hold-time period is the amount of time that a neighbor is to consider the sending router (this router) to be operative (up). The default hold-time period is 35 seconds.

  • protocols dvmrp interface metric—All interfaces can be configured with a metric specifying cost for receiving packets on a given interface. The default metric is 1.

    For each source network reported, a route metric is associated with the unicast route being reported. The metric is the sum of the interface metrics between the router originating the report and the source network. A metric of 32 marks the source network as unreachable, thus limiting the breadth of the DVMRP network and placing an upper bound on the DVMRP convergence time.

  • routing-options rib-groups—Enables DVMRP to access route information from the unicast routing table, inet.0, and from a separate routing table that is reserved for DVMRP. In this example, the first routing table group named ifrg contains local interface routes. This ensures that local interface routes get added to both the inet.0 table for use by unicast protocols and the inet.2 table for multicast RPF check. The second routing table group named dvmrp-rib contains inet.2 routes.

    DVMRP needs to access route information from the unicast routing table, inet.0, and from a separate routing table that is reserved for DVMRP. You need to create the routing table for DVMRP and to create groups of routing tables so that the routing protocol process imports and exports routes properly. We recommend that you use routing table inet.2 for DVMRP routing information.

  • routing-options interface-routes— After defining the ifrg routing table group, use the interface-routes statement to insert interface routes into the ifrg group—in other words, into both inet.0 and inet.2. By default, interface routes are imported into routing table inet.0 only.

  • sap—Enables the Session Directory Announcement Protocol (SAP) and the Session Directory Protocol (SDP). Enabling SAP allows the router to receive announcements about multimedia and other multicast sessions.

    SAP always listens to the address and port 224.2.127.254:9875 for session advertisements. To add other addresses or pairs of address and port, include one or more listen statements.

    Sessions learned by SDP, SAP's higher-layer protocol, time out after 60 minutes.

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 an MSDP routing instance:

  1. Create the routing tables for DVMRP routes.

  2. Configure SAP and SDP.
  3. Enable DVMRP on the router and associate the dvmrp-rib routing table group with DVMRP to enable multicast RPF checks.
  4. Configure the DVMRP interface with a hold-time value and a metric. This example shows an IP-over-IP encapsulation tunnel interface.
  5. If you are done configuring the device, commit the configuration.

Results

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

Verification

To verify the configuration, run the following commands:

Example: Configuring DVMRP to Announce Unicast Routes

Distance Vector Multicast Routing Protocol (DVMRP) was deprecated in Junos OS Release 16.1. Although DVMRP commands continue to be available and configurable in the CLI, they are no longer visible and are scheduled for removal in a subsequent release.

This example shows how to use DVMRP to announce unicast routes used solely for multicast reverse-path forwarding (RPF) to set up the multicast control plane.

Requirements

Before you begin:

Overview

DVMRP has two modes. Forwarding mode is the default mode. In forwarding mode, DVMRP is responsible for the multicast control plane and multicast data forwarding. In the nondefault mode (which is shown in this example), DVMRP does not forward multicast data traffic. This mode is called unicast routing mode because in this mode DVMRP is only responsible for announcing unicast routes used for multicast RPF—in other words, for establishing the control plane. To forward multicast data, enable Protocol Independent Multicast (PIM) on the interface. If you have configured PIM on the interface, as shown in this example, you can configure DVMRP in unicast-routing mode only. You cannot configure PIM and DVMRP in forwarding mode at the same time.

This example includes the following settings:

  • policy-statement dvmrp-export—Accepts static default routes.

  • protocols dvmrp export dvmrp-export—Associates the dvmrp-export policy with the DVMRP protocol.

    All routing protocols use the routing table to store the routes that they learn and to determine which routes they advertise in their protocol packets. Routing policy allows you to control which routes the routing protocols store in and retrieve from the routing table. Import and export policies are always from the point of view of the routing table. So the dvmrp-export policy exports static default routes from the routing table and accepts them into DVMRP.

  • protocols dvmrp interface all mode unicast-routing—Enables all interfaces to announce unicast routes used solely for multicast RPF.

  • protocols dvmrp rib-group inet dvmrp-rg—Associates the dvmrp-rib routing table group with the DVMRP protocol to enable multicast RPF checks.

  • protocols pim rib-group inet pim-rg—Associates the pim-rg routing table group with the PIM protocol to enable multicast RPF checks.

  • routing-options rib inet.2 static route 0.0.0.0/0 discard—Redistributes static routes to all DVMRP neighbors. The inet.2 routing table stores unicast IPv4 routes for multicast RPF lookup. The discard statement silently drops packets without notice.

  • routing-options rib-groups dvmrp-rg import-rib inet.2—Creates the routing table for DVMRP to ensure that the routing protocol process imports routes properly.

  • routing-options rib-groups dvmrp-rg export-rib inet.2—Creates the routing table for DVMRP to ensure that the routing protocol process exports routes properly.

  • routing-options rib-groups pim-rg import-rib inet.2—Enables access to route information from the routing table that stores unicast IPv4 routes for multicast RPF lookup. In this example, the first routing table group named pim-rg contains local interface routes. This ensures that local interface routes get added to the inet.2 table.

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, copy and paste the commands into the CLI at the [edit] hierarchy level, and then enter commit from configuration mode.

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 an MSDP routing instance:

  1. Configure the routing options.

  2. Configure DVMRP.
  3. Configure PIM so that PIM performs multicast data forwarding.
  4. Configure the DVMRP routing policy.
  5. If you are done configuring the device, commit the configuration.

Results

Confirm your configuration by entering the show policy-options command, the show protocols command, and the show routing-options command from configuration mode. If the output does not display the intended configuration, repeat the instructions in this example to correct the configuration.

Verification

To verify the configuration, run the following commands:

Tracing DVMRP Protocol Traffic

Distance Vector Multicast Routing Protocol (DVMRP) was deprecated in Junos OS Release 16.1. Although DVMRP commands continue to be available and configurable in the CLI, they are no longer visible and are scheduled for removal in a subsequent release.

Tracing operations record detailed messages about the operation of routing protocols, such as the various types of routing protocol packets sent and received, and routing policy actions. You can specify which trace operations are logged by including specific tracing flags. The following table describes the flags that you can include.

Flag

Description

all

Trace all operations.

general

Trace general flow.

graft

Trace graft messages.

neighbor

Trace neighbor probe packets.

normal

Trace normal events.

packets

Trace all DVMRP packets.

poison

Trace poison-route-reverse packets.

policy

Trace policy processing.

probe

Trace probe packets.

prune

Trace prune messages.

report

Trace membership report messages.

route

Trace routing information.

state

Trace state transitions.

task

Trace task processing.

timer

Trace timer processing.

In the following example, tracing is enabled for all routing protocol packets. Then tracing is narrowed to focus only on DVMRP packets of a particular type. To configure tracing operations for DVMRP:

  1. (Optional) Configure tracing at the routing options level to trace all protocol packets.
  2. Configure the filename for the DVMRP trace file.
  3. (Optional) Configure the maximum number of trace files.
  4. (Optional) Configure the maximum size of each trace file.
  5. (Optional) Enable unrestricted file access.
  6. Configure tracing flags. Suppose you are troubleshooting issues with a particular DVMRP neighbor. The following example shows how to trace neighbor probe packets that match the neighbor’s IP address.
  7. View the trace file.

Related Documentation

Release History Table
Release
Description

Distance Vector Multicast Routing Protocol (DVMRP) was deprecated in Junos OS Release 16.1. Although DVMRP commands continue to be available and configurable in the CLI, they are no longer visible and are scheduled for removal in a subsequent release.