Linux添加永久静态路由

这篇具有很好参考价值的文章主要介绍了Linux添加永久静态路由。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

[root@VM-4-10-centos ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.4.1        0.0.0.0         UG    0      0        0 eth0
10.0.4.0        0.0.0.0         255.255.252.0   U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
[root@VM-4-10-centos ~]# 

通过route add 添加静态路由,网卡或服务等重启就失效了

[root@VM-4-10-centos ~]# route --help
Usage: route [-nNvee] [-FC] [<AF>]           List kernel routing tables
       route [-v] [-FC] {add|del|flush} ...  Modify routing table for AF.

       route {-h|--help} [<AF>]              Detailed usage syntax for specified AF.
       route {-V|--version}                  Display version/author and exit.

        -v, --verbose            be verbose
        -n, --numeric            don't resolve names
        -e, --extend             display other/more information
        -F, --fib                display Forwarding Information Base (default)
        -C, --cache              display routing cache instead of FIB

  <AF>=Use -4, -6, '-A <af>' or '--<af>'; default: inet
  List of possible address families (which support routing):
    inet (DARPA Internet) inet6 (IPv6) ax25 (AMPR AX.25) 
    netrom (AMPR NET/ROM) ipx (Novell IPX) ddp (Appletalk DDP) 
    x25 (CCITT X.25) 
[root@VM-4-10-centos ~]# 

手动添加主机/网段路由示例:

#添加主机路由(指定下一跳网关IP)
route add -host 172.17.33.25 gw 10.0.4.1
#添加主机路由(指定出接口)
route add -host 172.17.33.25 dev eth0

#添加网段路由(指定下一跳网关IP)
route add -net 172.17.33.0/24 gw 10.0.4.1
#添加主机路由(指定出接口)
route add -net 172.17.33.0/24 dev eth0

##添加网段路由(同时指定出接口和下一跳网关IP)
route add -net 172.17.33.0/24 dev eth0 gw 10.0.4.1

永久添加的两种方式:

A:添加至系统开机启动脚本/etc/rc.local        //这是个软链接,实际指向/etc/rc.d/rc.local

[root@VM-4-10-centos ~]# ls -l /etc/rc.local
lrwxrwxrwx 1 root root 13 Nov  9 10:00 /etc/rc.local -> rc.d/rc.local
[root@VM-4-10-centos ~]# 

vi /etc/rc.local

将上面route add指令添加到末尾

#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.

touch /var/lock/subsys/local
/usr/local/qcloud/irq/net_smp_affinity.sh >/tmp/net_affinity.log 2>&1
/usr/local/qcloud/cpuidle/cpuidle_support.sh &> /tmp/cpuidle_support.log
/usr/local/qcloud/rps/set_rps.sh >/tmp/setRps.log 2>&1
/usr/local/qcloud/irq/virtio_blk_smp_affinity.sh > /tmp/virtio_blk_affinity.log 2>&1
/usr/local/qcloud/gpu/nv_gpu_conf.sh >/tmp/nv_gpu_conf.log 2>&1
/usr/local/qcloud/scripts/disable_rt_runtime_share.sh >/tmp/disable_rt_runtime_share.log 2>&1
route add -net 172.17.33.0/24 gw 10.0.4.1

不过这种方式存在一定的缺陷,因为这个脚本是系统启动后最后一个脚本,所以如果主机有挂载nfs的情况下(且添加的路由正好是关联nfs的),由于nfs在rc.local前面执行,所以会缺少路由导致无法挂载。

B:添加至/etc/sysconfig/static-routes (没有static-routes的话就手动建立一个这样的文件)

从系统启动的/etc/rc.d/init.d/network脚本可以看到其会调用static-routes,并执行相关操作

 # Add non interface-specific static-routes.
    if [ -f /etc/sysconfig/static-routes ]; then
        if [ -x /sbin/route ]; then
            grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
                /sbin/route add -$args
            done
        else
            net_log $"Legacy static-route support not available: /sbin/route not found"
        fi
    fi

vi /etc/sysconfig/static-routes

any net 172.17.33.0/24 gw 10.0.4.1

相比而言,通常建议修改/etc/sysconfig/static-routes的方式来实现永久添加静态路由。

**大家通过route add添加临时路由,再修改/etc/sysconfig/static-routes,这样无需重启网卡或服务,同时也保证了下次重启后路由仍存在**文章来源地址https://www.toymoban.com/news/detail-463357.html

到了这里,关于Linux添加永久静态路由的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux route命令实战:route 命令实战教程,配置静态路由,删除路由表项

    大家好,又见面了,我是沐风晓月,本文是专栏【linux基本功-基础命令实战】的第61篇文章。 专栏地址:[linux基本功-基础命令专栏] , 此专栏是沐风晓月对Linux常用命令的汇总,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。 如果文章有什么需要改进的地方还请

    2024年02月16日
    浏览(48)
  • Linux 添加永久路由的方法

    假设Linux服务器有双网卡,一张网卡接内网,一张网卡接外网。现假设物理线路已经接好 内网网卡: 名称:ens192 IP: 192.168.0.192 网关:192.168.0.254 外网网卡: 名称:ens224 IP:111.111.111.110 网关:111.111.111.111 我们需要将该服务器设置为访问内网默认走内网网卡,访问外网默认走外

    2024年02月05日
    浏览(24)
  • route命令 路由表 Linux Centos

    route route 命令在Linux中被用于显示和操纵IP路由表。然而,现在大部分Linux发行版都推荐使用 ip route 命令代替 route ,因为 ip route 提供更多的功能和更灵活的控制。 以下是 route 命令的基本用法: 查看路由表 : route -n 这个命令显示当前机器的路由表。 -n 标志意味着数字形式的网

    2024年02月04日
    浏览(34)
  • [linux] 添加静态路由

    1 通过route命令 1# route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0 2# route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.1.1.1 2 通过ip route 1# ip route add 192.168.0.0/24 via 10.1.17.1 2# route add 192.168.0.0/24 dev ens18 3 /etc/sysconfig/static-routes any net 192.168.0.0 netmask 255.255.255.0 gw 10.1.17.1 4 /etc/sysconfig/network-scri

    2024年02月08日
    浏览(26)
  • 静态路由(Static Routing)

    目录 一、前言 1.1 静态路由定义 1.2 静态路由可能造成路由环路的原因         1)配置错误         2)聚合了不存在网络         3)网络故障 二、案例说明 2.1 案例1(静态路由配置) 案例小结 2.2 案例2(默认路由配置) 案例小结 三、路由环路问题的解决方案 3.1 配置错误 解

    2024年02月12日
    浏览(25)
  • Linux中路由route和ip route

    如果你要求在使用 macvlan 配置多个 IP 和 MAC 地址时,要求 ARP 响应的 MAC 地址与 IP 地址一一对应,可以考虑使用不同的 macvlan 接口来实现。 首先,创建多个 macvlan 接口,并为每个接口分配对应的 IP 地址和 MAC 地址。例如,创建两个接口 macvlan1 和 macvlan2 : 这里假设你的基础网

    2024年01月15日
    浏览(30)
  • VM虚拟机安装Centos7 | 静态ip网络服务配置 | 虚拟化 | 虚拟机运行架构

    在学习之前我觉得有必要先介绍一些前置的知识,列如 “虚拟化” 和 “虚拟机” 还有 “虚拟机运行架构” ,这样更有利于我们对操作环境的理解 (1).什么是虚拟化 ? VT 就是虚拟化技术(Virtualization Technology)的缩写 是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机 对

    2023年04月12日
    浏览(30)
  • Linux(三)---------网络路由命令(route路由命令)

    计算机之间的数据传输必须经过网络,网络可以直接两台计算机,也可以通过一个一个的节点去连接。路由可以理解为互联网的中转站,网络中的数据包就是通过一个一个的路由器转发到目的地的。  路由分类学习: 路由分为静态和动态路由 linux机器上配置的都是静态路由,

    2024年02月14日
    浏览(26)
  • Linux路由转发+多网卡配置(route命令)

    什么是交换?什么是路由?什么是路由表? 交换是指 同网络访问 (两台机器连在 同一交换机上 ,配置 同网段的不同IP 就可以直接通讯) 路由就是 跨网络访问(路径选择) 路由表是 记录路由信息的表 ,在Linux中首先是一张 可见的,可更改的表 ,它的作用就是当数据包发

    2024年02月02日
    浏览(31)
  • Linux虚拟机中增加永久路由

    一、使用route命令添加 使用route 命令添加的路由,机器重启或者网卡重启后路由就失效了,方法: A、添加到主机的路由 # route add –host 192.168.1.10 dev eth0 # route add –host 192.168.1.10 gw 192.168.1.1 B、添加到网络的路由 # route add –net 192.168.1.0  netmask 255.255.255.0 eth0 # route add –net 192

    2024年02月05日
    浏览(21)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包