networking protocol_error ai_generated partial

IPv6: Path MTU Discovery failed for destination 2001:db8::1, packet size 1280

ID: networking/ipv6-mtu-path-discovery-failure

Also available as: JSON · Markdown · 中文
85%Fix Rate
82%Confidence
1Evidence
2024-06-10First Seen

Version Compatibility

VersionStatusIntroducedDeprecatedNotes
Linux 5.15+ active — — —
FreeBSD 13.2 active — — —
Cisco IOS 15.0 active — — —
Juniper Junos 21.0 active — — —

Root Cause

An intermediate router is dropping ICMPv6 Packet Too Big messages (type 2) required for Path MTU Discovery, causing the sender to assume a larger MTU and leading to packet drop or fragmentation failure.

generic

中文

中间路由器丢弃了路径MTU发现所需的ICMPv6数据包过大消息(类型2),导致发送方假设更大的MTU,从而导致数据包丢弃或分片失败。

Official Documentation

https://datatracker.ietf.org/doc/html/rfc8201

Workarounds

  1. 85% success Set the minimum MTU for the route to 1280 bytes to bypass PMTUD: ip route add 2001:db8::1/128 via fe80::1 dev eth0 mtu 1280
    Set the minimum MTU for the route to 1280 bytes to bypass PMTUD: ip route add 2001:db8::1/128 via fe80::1 dev eth0 mtu 1280
  2. 90% success Enable ICMPv6 filtering rules on intermediate routers to allow ICMPv6 type 2 messages (packet too big) through the firewall
    Enable ICMPv6 filtering rules on intermediate routers to allow ICMPv6 type 2 messages (packet too big) through the firewall

中文步骤

  1. Set the minimum MTU for the route to 1280 bytes to bypass PMTUD: ip route add 2001:db8::1/128 via fe80::1 dev eth0 mtu 1280
  2. Enable ICMPv6 filtering rules on intermediate routers to allow ICMPv6 type 2 messages (packet too big) through the firewall

Dead Ends

Common approaches that don't work:

  1. 95% fail

    This disables IPv6 connectivity completely, which may break applications that require IPv6 and is not a targeted fix.

  2. 80% fail

    The issue is on the path, not the sender; a static MTU does not address the router dropping ICMPv6 messages.