[189540] in North American Network Operators' Group
Re: rfc 1812 third party address on traceroute
daemon@ATHENA.MIT.EDU (Octavio Alvarez)
Wed Jun 1 17:14:30 2016
X-Original-To: nanog@nanog.org
To: Hugo Slabbert <hugo@slabnet.com>, nanog@nanog.org
From: Octavio Alvarez <octalnanog@alvarezp.org>
Date: Wed, 1 Jun 2016 14:14:26 -0700
In-Reply-To: <20160531165200.GE6467@bamboo.slabnet.com>
Errors-To: nanog-bounces@nanog.org
On 05/31/2016 09:52 AM, Hugo Slabbert wrote:
>> I'm not sure if you mean that, if sent through C it should have the
>> source addres of A, or that it should actually be sent through A
>> regardless of the routing table (which sounds better to me).
>
> How is the latter better? What guarantees are there that the
> adjacent L3 device on R's interface A has a route for S [?]
Consider this scenario:
.-------. ISP1ADDR/30 {
D---|B R A|---------------[ ISP 1 ]---- {
`---C---' {
|(towards S) { S is someplace
| { over this side
.----F---. {
---|G R2 H|--------------*[ ISP 2 ]---- {
`--------' ISP2ADDR/30 {
In the asterisk there is BCP38 filtering which won't allow ISPADDR/30.
The packet expired on R incoming from ISP 1. Under Randy's scenario, the
TTL-exceeded packet would get dropped by ISP2.
The only way for the packet to get through is to follow RFC 1812, or to
send it back through A using A's address (this follows RFC 1812 4.3.2.4).
> and if such a route exists that it doesn't simply point at R?
If the route points back to R, then R just forwards it using the routing
table as with any packet.
Best regards.