基于centos7配置ipv6永久静态路由

在项目中,需要配置ipv6静态路由,可使用route -A inet6 add ...  添加, 但是在网卡重启和设备重启后,配合的ipv6静态路由就会丢失。因此需要将配置好的路由写入到相应的配置文件中,在服务重启时可自动加载。

1.手动添加静态路由

route -A inet6 add 2001::3/64 gw 2002::1 dev eth2

route -6n 可看到已经配置好的ipv6静态路由

2.将静态路由配置参数写入/etc/sysconfig/static-routes-ipv6,格式如下

eth2 2001::3/64 2002::1

即 网卡名 目的地址 下一跳(网关)

3.修改network服务脚本

在network服务中调用的脚本为/etc/rc.d/init.d/network

添加以下内容:

. ./network-functions-ipv6

# Setup additional static IPv6 routes on specified interface, if given
if [ -f /etc/sysconfig/static-routes-ipv6 ]; then
    LC_ALL=C grep -w "^$DEVICE" /etc/sysconfig/static-routes-ipv6 | while read device args; do
        ipv6_add_route $args $DEVICE
    done
fi

 上面是为了在network脚本中,添加对ipv6静态路由配置文件的读取,并添加对应路由。

4.systemctl restart network 重启网卡

route -6n  可看到对应的路由已自动加载

5.相关注意事项:

1)静态路由配置文件为/etc/sysconfig/static-routes-ipv6,也有/etc/sysconfig/network-scripts/route-eth2配置文件,但是后面这个文件在配置后,无法进行手动删除。static-routes-ipv6配置的可使用route命令手动删除,因此需要注意。

2)/etc/sysconfig/static-routes-ipv6 配置文件只有三个参数 网卡名 目的地址 下一跳

3)网卡重启脚本ifup/ifdown不再适用与ipv6,需要使用ifup-ipv6/ifdown-ipv6,脚本在/etc/sysconfig/network-scripts目录下面,可拷贝至/usr/sbin使用

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐