2-ipv6服务器之-radvd

对于无状态自动配置的ipv6测试需要搭建radvd服务器,这样在路由器/设备发送RS请求(icmpv6 type133)的时候,radvd服务器就可以返回RA消息(icmpv6 type134),告诉设备全局地址的前缀,设备自己再结合接口ID算出一个可聚集全局单播地址。

1. 安装radvd服务器

登陆http://sources.buildroot.net/radvd/网站下载radvd-2.11.tar.gz

下载后在 Ubuntu上编译安装。

命令如下:

解压: tar –zxvf radvd-2.11.tar.gz
编译安装(cd radvd-2.11):./configure
make 
sudo make install
(卸载:sudo make uninstall)

2. 配置radvd服务器

安装好后,在系统 /usr/local/etc/目录下建一个 radvd.conf的配置文件:

#注意:eth0为实际网卡的名字
interface eth0 {
        AdvSendAdvert on;
        AdvCurHopLimit 64;
        MinRtrAdvInterval 198;
        MaxRtrAdvInterval 600;
        AdvDefaultLifetime 1800;
        AdvReachableTime 0;
        AdvRetransTimer 0;
        AdvDefaultPreference low;
        AdvHomeAgentFlag off;
        AdvOtherConfigFlag on;
        AdvManagedFlag off;
        prefix 2016:ac11:5cad:0::/64 {
                AdvOnLink on;
                AdvAutonomous on;
                AdvValidLifetime 2400;
                AdvPreferredLifetime 1800;
        };
        RDNSS  fe80::2224:7ff:fe26:3014 {
                AdvRDNSSPreference 8;
                AdvRDNSSLifetime 1200;
        };
};
  • 正常interface为eth0,当为pppoe拨号的时候,需要把interface改成拨号成功的端口,如ppp0
  • prefix就是要下发RA时候的路由前缀

3. 启动、停止

打开命令:

sudo radvd -C /usr/local/etc/radvd.conf start

停止的话需要手动kill这个进程

killall radvd

根据需要设置

/etc/sysctl.conf   net.ipv6.conf.all.forwarding=1
sudo sysctl -w net.ipv6.conf.all.forwarding=1
参数会影响ra的发送

在出现yacc flex commod not found的时候,先安装byacc、flex:sudo apt-get install byacc flex

你可能感兴趣的:(IPV6)