RustROS · 2026-10-27 · 主线 db57dd5

IPv6 报告:本机、Linux 兼容层、路由、容器

按你确认的设计(docs/ipv6-design.md)做完 V6.1 到 V6.4。本机有了 IPv6:自动拿地址(SLAAC)或手动配置,也能当 Hurricane Electric 6in4 隧道的客户端;管理服务、ping、curl 走 IPv6;进程能用 AF_INET6 套接字;能转发 IPv6、在局域网发路由器通告;防火墙、智能流控、CAKE 都认 IPv6。容器各有一个 ULA 地址,经 NAT66 出网(按你的决定:有 HE 也一样),也能用 IPv6 端口映射。IPv4 的转发路径没动。

回归测试(KVM 测试机)0 失败单元测试 227 项;整套第一轮 3 个失败:两个是测试服务器把问候语分两次写(负载下分成两个包),一个是 LTP connect02 现在能走到一个已知没实现的地方(TCP 用 AF_UNSPEC 断开后再绑定),已修好或记入已知,重跑通过。转发 TCP 19.1 / 18.7 Gbit/s,64 B 387 / 359 kpps,和之前一样
新测试4 个ipv6_test(本机、隧道)、router6_test(转发、通告、防火墙)、ct6_test(容器);debian_test 加了 Debian 的 curl -6;nettest 加了 IPv6 检查
内核430,080 字节内核代码只多 4 KiB;其余是启动镜像里的启动用协议栈(它不带 IPv6,但地址改成了 128 位)
这次更新要重启一次内核和 api 改了:所有模块重装,netstack、linux 重装,docker 程序重装

V6.1本机的 IPv6

V6.2Linux 兼容层

V6.3路由

V6.4容器

没做的留到以后

内核这次内核改了什么(按规则报告)

请你确认

1. 是否发布:内核改了,部署时重启一次,所有模块、netstack、linux、docker 程序重装。部署后两台机器默认在主网卡上 SLAAC;没有路由器通告的话只有链路本地地址,没有别的变化。

2. 生产机器的 HE 隧道:要在 RustROS 里开起来,请给我每台机器的 HE 隧道信息(Server IPv4、Client IPv6、Server IPv6,有的话还有 Routed /64),或者你自己在控制台用 ip6 tunnel add ... 配好再 save。阿里云在 1:1 NAT 后面:HE 上登记公网 IPv4,local 用内网地址。