You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将IPv6 ULA子网的路由通告服务从Windows迁移至Ubuntu?

如何将IPv6 ULA子网的路由通告服务从Windows迁移至Ubuntu?

我完全懂你不想依赖Windows做路由通告的心情,把这个服务迁移到Ubuntu其实很简单,咱们主要用radvd(Router Advertisement Daemon)这个工具就能搞定,这是Linux上专门用来发送IPv6路由通告的标准服务。下面是一步步的操作指南:

  • 第一步:安装radvd
    先更新系统的软件包列表,然后安装radvd:

    sudo apt update && sudo apt install radvd
    
  • 第二步:配置radvd
    接下来要编辑radvd的配置文件,路径是/etc/radvd.conf。你需要把自己的FD开头的ULA前缀填进去,还要指定负责发送通告的网卡(比如你的LAN网卡是enp0s3或者eth0,根据实际情况替换)。这里给你一个基础的配置示例:

    interface enp0s3 {
        AdvSendAdvert on;
        MinRtrAdvInterval 30;
        MaxRtrAdvInterval 100;
        prefix fdxx:xxxx:xxxx::/64 {
            AdvAutonomous on;
            AdvOnLink on;
            AdvRouterAddr on;
        };
    };
    

    解释下关键参数:

    • AdvSendAdvert on:开启路由通告发送
    • MinRtrAdvInterval和MaxRtrAdvInterval:设置发送通告的最小和最大间隔时间(单位秒)
    • AdvAutonomous on:允许客户端自动使用这个前缀生成IPv6地址(和你之前Windows上的效果一致)
    • AdvOnLink on:告诉客户端这个前缀对应的网络是直连的
    • AdvRouterAddr on:在通告里包含路由器自己的IPv6地址
  • 第三步:验证配置文件
    配置完后先检查语法有没有问题,避免启动失败:

    radvd -c /etc/radvd.conf
    

    如果没有报错,就说明配置没问题。

  • 第四步:启动并启用radvd服务
    现在启动服务,同时设置开机自启,这样Ubuntu重启后服务会自动运行:

    sudo systemctl start radvd
    sudo systemctl enable radvd
    
  • 第五步:验证服务运行
    你可以用下面的命令查看服务状态,确认是否正常运行:

    sudo systemctl status radvd
    

    也可以抓包看看有没有发送路由通告包:

    sudo tcpdump -i enp0s3 icmp6
    

    正常情况下会看到类型为134(Router Advertisement)的ICMPv6包。

最后还有几个小提醒:

  1. 确保Ubuntu机器本身已经配置了对应的ULA地址,不然没法发送有效的通告
  2. 检查防火墙设置,要允许ICMPv6的路由通告(类型133和134)通过,不然客户端收不到通告
  3. 记得关掉Windows上之前的路由通告服务,避免LAN里出现多个路由通告源导致冲突

备注:内容来源于stack exchange,提问作者Robert Chapin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 07:23:25