Cơ sở kiến thức

Cấu hình IPv6 /64 được định tuyến

Đặt /64 đi kèm của bạn trên giao diện trong Debian 13 và AlmaLinux 10, kiểm tra tuyến đường, và sử dụng phần còn lại của prefix cho các container.

“路由”在这里的含义

该前缀被路由到您的实例,而不是与其他客户共享在同一个网段上。网络上没有其他设备应答这些地址,中间没有邻居发现代理,您可以绑定 /64 内的任何地址而无需事先询问。这也意味着路由器通告不是机制:地址和网关是静态的,等待 SLAAC 将一无所获。

面板为每个实例显示三个值——前缀、我们预先分配的地址以及网关。从那里获取这三个值。网关因站点而异。

Debian 13

镜像使用 systemd-networkd。编写您自己的单元,并保留自带的单元:

cat > /etc/systemd/network/20-wan-v6.network <<EOF
[Match]
Name=enp1s0

[Network]
Address=<ipv6>/64
Gateway=<gateway6>
IPv6AcceptRA=no
EOF
networkctl reload
networkctl status enp1s0

当网关是链路本地地址时,必须知道它所在的接口。该小节已由 [Match] 限定在一个接口上,因此无需其他操作。

AlmaLinux 10

不再有 ifcfg- 文件。AlmaLinux 10 将连接保存为 NetworkManager 密钥文件,支持的方式是通过 nmcli 编辑它们:

nmcli -f NAME,DEVICE connection show
nmcli connection modify "System eth0" ipv6.method manual ipv6.addresses <ipv6>/64 ipv6.gateway <gateway6> ipv6.may-fail no
nmcli connection up "System eth0"

ipv6.may-fail no 阻止引导在 v6 配置完成之前声明网络就绪。这对任何在启动时绑定 v6 地址并因地址不存在而放弃的服务都很重要。

检查

ip -6 addr show dev enp1s0
ip -6 route show
ping -6 -c 3 paragonvps.com

地址存在,默认路由存在,但没有任何响应?防火墙是常见的罪魁祸首,而 ICMPv6 是常见原因。邻居发现和数据包过大两者都位于 ICMPv6 中;选择性过滤它们会破坏 IPv6,看起来就像是一天半应用程序的 bug。小数据包正常工作,大的则消失。nftables 文章有一条规则不会这样做。

使用前缀的其余部分

在同一接口上添加额外的地址:

ip -6 addr add <ipv6-2>/64 dev enp1s0 nodad

通过另一行 Address= 或在 ipv6.addresses 中添加第二个条目,使其在重启后仍然有效。对于容器,从 /64 中划分一个切片,将其分配给桥接器,并在宿主机上路由它。/80 对于任何桥接器来说都绰绰有余。没有 NAT 步骤,也没有代理步骤,因为整个前缀已经指向您。

如果您需要多个路由子网,多个桥接器或嵌套虚拟机监控程序,请订购 /48 附加服务。它是委派的而非代理的,因此您这边的路由设计是真正属于您的。

两个会悄悄破坏它的事情

  • 某些东西重新启用了 RA 接受。通常“修复”网络的工具会这样做,您最终会得到一条在两个之间摇摆的默认路由。固定 IPv6AcceptRA=no
  • 启用转发。设置 net.ipv6.conf.all.forwarding=1 会使内核停止在每个接口上处理路由器通告。在这里无害,因为 RA 已经关闭,但在您责怪站点之前了解一下是值得的。

完整的按站点详细信息,包括哪些位置将 v6 传递到边缘,请参阅网络页面

Sẵn sàng khi bạn cần

Chọn thành phố. Chọn kích thước. Thanh toán bằng coin.

Không có biểu mẫu về bạn là ai, không chờ đợi con người phê duyệt, không gọi điện thoại để xác minh bất cứ điều gì. Hóa đơn được thanh toán và thông tin đăng nhập sẽ vào hộp thư của bạn.