插件窝 干货文章 linux怎么添加路由命令

linux怎么添加路由命令

route 路由 bash 600    来源:    2025-04-20

在 Linux 系统中,可以使用 routeip route 命令来添加路由。以下是详细的方法:


方法 1:使用 ip route 命令(推荐)

ip route 是现代 Linux 系统推荐的工具,语法更清晰。

添加临时路由(重启后失效)

sudo ip route add <目标网络> via <网关IP> dev <接口名>

示例: 1. 添加默认路由(所有流量走网关 192.168.1.1): bash sudo ip route add default via 192.168.1.1 dev eth0 2. 添加特定网络的路由(如 10.0.0.0/24 通过网关 192.168.1.2): bash sudo ip route add 10.0.0.0/24 via 192.168.1.2 dev eth0

永久生效

不同 Linux 发行版的永久路由配置方式不同: - Debian/Ubuntu:编辑 /etc/network/interfaces,在接口配置中添加: bash up ip route add 10.0.0.0/24 via 192.168.1.2 dev eth0 - RHEL/CentOS:在 /etc/sysconfig/network-scripts/route-<接口名> 中添加: bash 10.0.0.0/24 via 192.168.1.2 dev eth0 - 通用方法(systemd-networkd)
创建 /etc/systemd/network/10-static-route.network,内容如下: ini [Route] Destination=10.0.0.0/24 Gateway=192.168.1.2


方法 2:使用传统 route 命令(过时但可用)

sudo route add -net <目标网络> netmask <子网掩码> gw <网关IP> dev <接口名>

示例

sudo route add -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.1.2 dev eth0

验证路由

ip route show    # 推荐
或
route -n        # 传统方式

删除路由

sudo ip route del <目标网络>   # 例如:sudo ip route del 10.0.0.0/24
或
sudo route del -net 10.0.0.0 netmask 255.255.255.0

常见场景

  1. 双网卡配置
    假设 eth0 连接内网(192.168.1.0/24),eth1 连接公网,添加默认路由:

    sudo ip route add default via 公网网关 dev eth1
    
  2. VPN 路由
    访问 172.16.0.0/16 通过 VPN 接口 tun0

    sudo ip route add 172.16.0.0/16 dev tun0
    

注意事项

  • 临时路由会随网络重启或系统重启失效。
  • 永久路由需根据发行版选择对应配置文件。
  • 如果目标网络是单个主机,用 /32(如 192.168.1.100/32)。

如有其他需求(如策略路由),可以进一步使用 ip rule 命令。