Subject: RE: (usagi-users 00767) Re: source routing honored by hosts?

From: "Richard Draves" <[email-masked]>
Date: Mon, 10 Sep 2001 10:36:46 -0700

> I think it was quite widely accepted (at least nobody 
> objected, thus I said "consensus") that _hosts_, at least by 
> default, should not forward source-routed packets.

My understanding of RFC 2460 is that all nodes, meaning both hosts and
routers, should process Routing Headers.

Rich
--------------------------------------------------------------------
IETF IPng Working Group Mailing List
IPng Home Page:                      http://playground.sun.com/ipng
FTP archive:                      ftp://playground.sun.com/pub/ipng
Direct all administrative requests to [email-masked]
--------------------------------------------------------------------

---

From: Pekka Savola <[email-masked]>
Date: Mon, 10 Sep 2001 21:19:56 +0300 (EEST)

> routers, should process Routing Headers.

It is mine as well, but that still doesn't make it sane or safe behaviour;
which is why I was gauging opinions on 1) how you interpret RFC2460 and 2)
how you should implement RFC2460 wrt. routing headers.

-- 
Pekka Savola                 "Tell me of difficulties surmounted,
Netcore Oy                   not those you stumble over and fall"
Systems. Networks. Security.  -- Robert Jordan: A Crown of Swords

---

From: Vladislav Yasevich <[email-masked]>
Date: Mon, 10 Sep 2001 16:38:16 -0400

The aproach that we have taken is to introduce a tuning knob for
for forwarding traffic that's addressed to us, such as traffic with
routing headers.

All nodes process the routing header, but the traffic is not forwarded
unless the forwarding feature is enabled.

The feature is off by default in hosts and on by default in routers,
so I wouldn't really have a problem with specifiying this in a document.

-vlad

-- 
++++++++++++++++++++++++++++++++++++++++++++++++++++
Vladislav Yasevich		Tel: (603) 884-1079
Compaq Computer Corp.		Fax: (435) 514-6884
110 Spit Brook Rd ZK03-3/T07
Nashua, NH 03062
--------------------------------------------------------------------
IETF IPng Working Group Mailing List
IPng Home Page:                      http://playground.sun.com/ipng
FTP archive:                      ftp://playground.sun.com/pub/ipng
Direct all administrative requests to [email-masked]
--------------------------------------------------------------------

---

From: Michael Thomas <[email-masked]>
Date: Mon, 10 Sep 2001 16:36:23 -0700 (PDT)

> routers, should process Routing Headers.

   So, like, that means that I can turn any host
   on the net into a router, assuming I supply the
   route?

   Groovy.

		Mike

---

From: Francis Dupont <[email-masked]>
Date: Tue, 11 Sep 2001 10:53:49 +0200

=> two points:
 - should process is too strong, my feeling is "should implement the
   processing of Routing Headers"
 - to process and to forward are two different things (forward is stronger).
   IMHO the default policy for hosts should be process but not forward.

Thanks

[email-masked]

---

From: KANDA Mitsuru / 神田 充<[email-masked]>
Date: Wed, 12 Sep 2001 01:15:08 +0900

Hello,

At Tue, 11 Sep 2001 10:53:49 +0200,
>    IMHO the default policy for hosts should be process but not forward.
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Do you mean as follows:

Hosts know this extention header is Routing Header, but do nothing (just discard).

regards,
-mk

---

From: Vladislav Yasevich <[email-masked]>
Date: Tue, 11 Sep 2001 13:55:22 -0400

I think what Francis means is that all nodes should know how to process the
routing header.  That is, they know the header type and they layout of
the header.

That does not mean that they should process the header whenever they see it. 
Processing the header would imply verifying the contents and forwarding if
necessary.

Some implementations took a really simplistic approach and process
routing header every time including forwarding.  This is what started the
whole thread.  Other implementations took a safer approach an decided that
processing or forwarding is not appropriate under some circumstances
(like when the node is configured as a host).

So as you can see, this whole thread simply a different interpretation of
the specs.  It would nice if this issue would be clarified in some
document, but I can live without it.

-vlad

Forwarding is a different issue.

---

From: Francis Dupont <[email-masked]>
Date: Wed, 12 Sep 2001 08:53:20 +0200

Hosts know this extention header is Routing Header, but do nothing
  (just discard)

=> no, what I've meant is hosts process routing headers but don't forward
it. There are many ways to program the routing header stuff (one is in
RFC 2460), the important point is to block (if the knob is not explicitely
set) the sending of source route packets by the forwarding routine.
So if segment left is zero or if the next destination is the same host (*)
the packet is accepted. I have no strong idea about error cases.

Regards

PS: (*) is used by the routing optimization of mobile IPv6 and
is easy to detect (just consider that special case is common :-).
--------------------------------------------------------------------
IETF IPng Working Group Mailing List
IPng Home Page:                      http://playground.sun.com/ipng
FTP archive:                      ftp://playground.sun.com/pub/ipng
Direct all administrative requests to [email-masked]
--------------------------------------------------------------------

---

From: Francis Dupont <[email-masked]>
Date: Wed, 12 Sep 2001 09:02:01 +0200

=> exactly. Your previous mail is a more accurate (than mine) description
of what should be the policy for a host implementation.

=> safer is better!

=> this is a policy issue so we can understand why the current specs
say nothing about it. But I disagree about different interpretation,
in fact there is nothing to interpret (:-)! The IPv6 host requirement
document should fill the gap, if the issue becomes critical we can
write and adopt a specific document (which will be included in host
requirement). I don't know if there is an emergency?

Regards