/etc/sysconfig/static-routes 是添加持久路由的已弃用方法吗?

/etc/sysconfig/static-routes 是添加持久路由的已弃用方法吗?

RHEL 5.x

我很乐意通过添加静态路由/etc/sysconfig/static-routes。当我复习的时候红帽文档不过,我没有看到提到这一点。相反,建议使用/etc/sysconfig/network-scripts/route-<interface>

static-routes文件是否是已弃用的添加持久路由的方法?

答案1

如果关闭某个接口,则使用该接口的所有路由都将被删除。这在内核中自动发生。

如果您随后再次启动该接口,/etc/sysconfig/static-routes则不会再次运行,因此该文件中为此接口指定的路由将丢失。但是,如果将路由放入特定于接口的文件中,那么它们将要当您再次打开该界面时,系统会恢复该信息。

因此最好将路线放入/etc/sysconfig/network-scripts/route-<interface>文件中。

答案2

该文件看起来包含非特定于接口的静态路由,通过以下命令进行一些 grep 操作/etc

# grep -rl static-route .
./rc.d/init.d/network
./ppp/ipv6-up
./ppp/ip-up.ipv6to4
./sysconfig/network-scripts/ifup-sit
./sysconfig/network-scripts/ifup-ipv6
# perl -00 -ne 'print if m/static-routes/' rc.d/init.d/network 
        # Add non interface-specific static-routes.
        if [ -f /etc/sysconfig/static-routes ]; then
           grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
              /sbin/route add -$args
           done
        fi    
        # Add non interface-specific static arp entries.
        if [ -f /etc/ethers ]; then
                /sbin/arp -f /etc/ethers
        fi

这些文件存在于 RHEL5、6 和 7 上,但如果network禁用该服务可能无法运行,因为我不知道是否NetworkManager引用了该static-routes文件;这需要实际启用它并可能运行它strace -o blah -ff -e trace=file ...以查看它接触到的内容。

相关内容