我最近在测试 nat-gw pod 怎么支持多个公网网段,发现了一些问题,感觉很有意思
1. 什么时候 ttl 直接为 1
一、IPv4 多播地址范围
| 范围 | 类型 | 说明 |
|---|---|---|
| 224.0.0.0 – 239.255.255.255 | Class D | IPv4 Multicast |
你给的 225.5.5.5 属于 224–239 范围,所以:
- ✅ 合法 IPv4 地址
- ✅ 被标准定义为 多播地址
- ❌ 不是普通的单播(unicast)地址
二、Multicast 的特点
-
不走默认路由
- Linux 内核会专门处理 multicast
- 不会像普通 0.0.0.0/0 一样查路由表
-
TTL 意义不同
- TTL=1 表示只在本地链路/子网内传播
-
不会触发 NAT(SNAT / MASQUERADE)
- NAT 只作用在 单播转发流量
-
IPtables 匹配注意
-s/-d可以匹配,但 NAT 规则不会生效