Subject: RE: Last call on LSP Ping

From: Shahram Davari <[email-masked]>
Date: Mon, 9 Dec 2002 11:44:32 -0800

Curtis,

Apart from this draft what is the current behavior of a router that
receives any of the 127/8 addresses from an external interface? discard, send to control-plane, or loopback?

-Shahram

---

From: Curtis Villamizar <[email-masked]>
Date: Mon, 09 Dec 2002 16:19:53 -0500

In message <[email-masked]
>, Shahram Davari writes:

It is hard to say empirically with my copy of ping since ping -I only
takes multicast addresses.

     -I interface
             Source multicast packets with the given interface address.  This
             flag only applies if the ping destination is a multicast address.

I suppose I could use the source and change this to run the test.

I think what you'll find is:

  1.  If it arrives in a tunnel, such as GRE, or L2TP, or PPP over SSH
      or whatever, the router responds, even if there is a filter on
      127/8.

  2.  If it arrives with source router, the router responds, unless a
      filter has been configured on 127/8.

  3.  If it arrived on an interface, such as when PHP is used without
      explicit NULL label, the router responds, unless a filter has
      been configured on 127/8.

Without PHP, MPLS-ping would be like case 1.  With PHP and without a
explicit null label MPLS-ping would be like case 3.

Editing the router config to remove the filter is a trivial matter.

Someone who has actually written the client side of mpls-ping can
respond with their experiences.

Traceroute -g on one host with source routing disabled returns an ICMP
message indicating source routing failed (!S in traceroute), on
another it blackholed it.  With source routing enabled, traceroute -g
with destination 127.0.0.1 replied on both of them.  I have to go
through a few hosts acting as routers (which don't allow source
routing) to get to real Cisco, Juniper and Avici routers so its easier
for me to try this on a few local hosts.  If you insist I'll number a
loopback to 127.0.0.1 and try it on the loopback of a router.

Maybe you don't understand what the loopback interface is.  It *is*
the control plane of the router.  Go on a BSD machine and type "man
lo".  This is what is meant by delivery to a loopback in RFC1812.
Cisco documentation has a similar definition.

Curtis

ps - maybe some readers don't have a BSD machine:

LO(4)                  FreeBSD Kernel Interfaces Manual                  LO(4)

NAME
     lo - software loopback network interface

SYNOPSIS
     pseudo-device loop

DESCRIPTION
     The loop interface is a software loopback mechanism which may be used for
     performance analysis, software testing, and/or local communication.  As
     with other network interfaces, the loopback interface must have network
     addresses assigned for each address family with which it is to be used.
     These addresses may be set or changed with the SIOCSIFADDR ioctl(2).  The
     loopback interface should be the last interface configured, as protocols
     may use the order of configuration as an indication of priority.  The
     loopback should never be configured first unless no hardware interfaces
     exist.

DIAGNOSTICS
     lo%d: can't handle af%d.  The interface was handed a message with ad-
     dresses formatted in an unsuitable address family; the packet was
     dropped.

SEE ALSO
     inet(4),  intro(4)

HISTORY
     The lo device appeared in 4.2BSD.

BUGS
     Previous versions of the system enabled the loopback interface automati-
     cally, using a nonstandard Internet address (127.1).  Use of that address
     is now discouraged; a reserved host address for the local network should
     be used instead.

4.2 Berkeley Distribution        June 5, 1993                                1