Subject: draft-voyer-6man-extension-header-insertion-07- ICMP Question

From: Ron Bonica <[email-masked]>
Date: Tue, 24 Sep 2019 03:19:45 +0000

Daniel,

I think that header insertion might reduce the usefulness of ICMP messages.

Referring to the example that you present in Section 2, what would happen if R5 were slightly misconfigured. If it were configured correctly, R5 would generate the following packet:

-          P3: (A3, S7)(S6,S8.PSP; SL=2)(S4;SL=1)(A1, A2)

However, because it is misconfigured, R5 generates the following packet

-          P3: (A3, S7)(S999,S8.PSP; SL=2)(S4;SL=1)(A1, A2)

(Assume that S999 is unreachable. That's an artifact of the misconfiguration.)

The packet reaches R8, but R8 cannot process the packet further. So, it sends an ICMP message to R3. R3 determines:

  *   That it originated the packet
  *   That the packet's destination was R4

Sadly, the misconfigured router's address appears nowhere in the ICMP message. While it is fairly obvious that S999 is the problem, S3 has no way to determine that R5 is the misconfigured router.

                                                                                                 Ron

Juniper Business Use Only

---

From: Fernando Gont <[email-masked]>
Date: Wed, 25 Sep 2019 04:18:05 +0300

> I think that header insertion might reduce the usefulness of ICMP messages.

Also note: Implementations will normally check that the packet embedded
in the ICMP payload makes sense. If what's in the payload is not what
you sent (whcih would be the case if a middle-box has fiddled with the
packet inserting an EH), then the ICMPv6 error is likely to be discarded.

Thanks,
-- 
Fernando Gont
SI6 Networks
e-mail: [email-masked]
PGP Fingerprint: 6666 31C6 D484 63B2 8FB1 E3C4 AE25 0D55 1D4E 7492

---

From: Tom Herbert <[email-masked]>
Date: Tue, 24 Sep 2019 20:12:38 -0700

> packet inserting an EH), then the ICMPv6 error is likely to be discarded.
Fernando,

If we're lucky the error will be innocuously discarded. However,
there's probably some host implementations that will try to act on the
information in arbitrary ways, or worse, they'll send the ICMP error
to some application or some logger complete with a SID list intact
thereby leaking sensitive info out of the SR domain. It's simply a bad
idea to send an ICMP error for a packet with contents not created by
the source node.

Tom

> --------------------------------------------------------------------
> IETF IPv6 working group mailing list
> [email-masked]
> Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
> --------------------------------------------------------------------

---

From: Fernando Gont <[email-masked]>
Date: Wed, 25 Sep 2019 06:34:10 +0300

> idea to send an ICMP error for a packet with contents not created by

Actually, it's simply a bad idea to *mangle IP packets like this* ;-),
because the box that sends the error has no way to tell if somebody
fiddled with the packet or not.

That is, the problem is not in sending the error, but in modifying the
packet by inserting an EH.

Thanks,