# IPv6：到目标2001:db8::1的路径MTU发现失败，数据包大小1280

- **ID:** `networking/ipv6-mtu-path-discovery-failure`
- **领域:** networking
- **类别:** protocol_error
- **验证级别:** ai_generated
- **修复率:** 85%

## 根因

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

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| Linux 5.15+ | active | — | — |
| FreeBSD 13.2 | active | — | — |
| Cisco IOS 15.0 | active | — | — |
| Juniper Junos 21.0 | active | — | — |

## 解决方案

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
   ```

## 无效尝试

- **** — This disables IPv6 connectivity completely, which may break applications that require IPv6 and is not a targeted fix. (95% 失败率)
- **** — The issue is on the path, not the sender; a static MTU does not address the router dropping ICMPv6 messages. (80% 失败率)
