百度
360搜索
搜狗搜索

linuxroute命令生效详细介绍

在 Linux 中使用 route 命令添加或修改路由后,路由规则通常会立即生效,但需注意权限、网络接口状态及持久化配置等问题。以下是详细说明:

一、
route 命令添加路由立即生效

1. 基本语法(需管理员权限)

bash

 route  选项 目标网络/子网 网关/接口

  • 示例 1:添加默认网关bash
     route  default gw .1.1 dev eth0  

  • 示例 2:添加子网路由bash
     route   .2.0/24 gw .1.2 dev eth0  

  • 选项说明
    • -net:指定目标网络(默认)。
    • -host:指定目标主机(单 IP)。
    • dev:指定网络接口(如 eth0wlan0)。
    • gw:指定网关 IP。

2. 生效条件

  • 权限:必须使用 sudo 或管理员账户,否则会提示 Operation not permitted
  • 接口状态:目标接口(如 eth0)需处于 up 状态,可通过 ip link show eth0 查看,若为 down 状态,先用 sudo ip link set eth0 up 启用。
  • 网关可达:网关 IP 必须与本地接口 IP 在同一子网,否则路由无效。

二、查看生效的路由

使用以下命令验证路由是否添加成功:
bash

route   

输出示例:
plaintext

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0

192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

192.168.2.0 192.168.1.2 255.255.255.0 UG 0 0 0 eth0

  • FlagsU 表示路由启用,G 表示通过网关转发。

三、路由持久化(重启后生效)

route 命令添加的路由重启后会丢失,若需持久化,需根据 Linux 发行版配置对应文件:

1. 传统方法(适用于大多数旧系统)

  • 写入 /etc/rc.local(需确保该文件可执行):bash
      /etc/rc.local

    route default gw .1.1 dev eth0

    +x /etc/rc.local

2. 基于网络配置文件(推荐)

  • Debian/Ubuntu(Netplan)
    修改 /etc/netplan/*.yaml 文件,添加 routes 字段:
    yaml

    networkd

    192.168.1.10/24

    0.0.0.0/0

    192.168.1.1

    8.8.8.8 8.8.4.4

    应用配置:sudo netplan apply

  • RedHat/CentOS 7 及以下
    修改接口配置文件(如 /etc/sysconfig/network-scripts/ifcfg-eth0),添加:
    ini

    或在 /etc/sysconfig/network-scripts/route-eth0 中直接写入路由:
    ini

    192.168.2.0/24 via 192.168.1.2 dev eth0

    重启网络服务:sudo systemctl restart network

  • CentOS 8+/Rocky Linux/AlmaLinux
    使用 nmcli 命令配置永久路由(基于 NetworkManager):
    bash
     nmcli connection modify eth0 +ipv4.routes 

    nmcli connection up eth0

四、常见问题与解决

1. 路由添加后不生效

  • 检查权限:确保使用 sudo 或管理员账户。
  • 接口状态:接口需为 up 状态,否则路由不会生效(sudo ip link set eth0 up)。
  • 网关可达:ping 网关 IP,确认本地接口与网关在同一子网(如本地 IP 为 192.168.1.10/24,网关应为 192.168.1.x)。
  • 重复路由:若已有同目标网络的路由,新路由可能因 Metric 值更高(优先级更低)而不被使用,可通过 route del 删除旧路由后重试。

2.
route 命令过时警告(推荐改用
ip route

现代 Linux 系统推荐使用 iproute2 工具中的 ip route 命令(功能更强大,支持 IPv6):

  • 等价命令对比:bash

    route default gw .1.1 dev eth0

    route default via .1.1 dev eth0

  • ip route 支持更复杂的配置(如策略路由、多路径等),且在未来可能替代 route(后者属于 net-tools 包,部分新系统未预装)。

总结

  • 立即生效sudo route add 命令执行后路由即时生效,前提是权限、接口状态和网关配置正确。
  • 持久化:根据发行版将路由配置写入网络配置文件(如 Netplan、ifcfg-*)或启动脚本(rc.local)。
  • 最佳实践:新系统建议使用 ip route 替代 route,并通过官方推荐的网络配置工具(如 NetworkManager、Netplan)管理路由,以确保兼容性和稳定性。

阅读更多 >>>  linux关机提醒命令

网站数据信息

"linuxroute命令生效"浏览人数已经达到22次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:linuxroute命令生效的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!