Linux之CentOS7添加永久静态路由

本文介绍如何在 CentOS 7 中进行临时及永久静态路由配置。包括使用 route 命令添加临时路由,以及通过编辑 /etc/sysconfig/network-scripts/route-网卡名 文件来设置永久路由,并提供了重启 network 服务的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

临时添加路由

route add -net 100.0.0.0 netmask 255.255.255.0 gw 192.168.10.20

永久添加路由

CentOS7永久静态路由需要写到 /etc/sysconfig/network-scripts/route-网卡名 文件中,故在/etc/sysconfig/network-scripts/下,新建文件名为route-网卡名的文件,(查询网卡名ifconfig)

vim /etc/sysconfig/network-scripts/route-网卡名
100.0.0.0/24 via 192.168.10.20 dev 网卡名

重启network

service network restart
### Linux 中为网卡设置永久静态路由的方法 在 Linux 系统中,为了确保静态路由在系统重启后仍然有效,可以采用多种方式来配置永久静态路由。以下是具体方法: #### 方法一:通过 `/etc/sysconfig/network-scripts/route-ifname` 文件 对于基于 Red Hat 的发行版(如 CentOS 或 Fedora),可以通过创建或编辑特定于网卡的 `route-ifname` 文件来定义永久静态路由。 - **路径**: `/etc/sysconfig/network-scripts/route-<interface>` 这里的 `<interface>` 是指具体的网卡名称,例如 `eth0` 或 `ens33`。 - **格式**: 每条路由占一行,支持多种形式的语法。常见的有以下几种: - `NETWORK via GATEWAY dev INTERFACE`: 定义通往某个网络的具体路由。 ```bash 192.168.2.0/24 via 192.168.1.1 dev eth0 ``` - `default via GATEWAY dev INTERFACE`: 设置默认网关。 ```bash default via 192.168.1.1 dev eth0 ``` 此方法的优点在于配置简单且持久化[^1]。 #### 方法二:使用 NetworkManager 工具 如果系统启用了 NetworkManager,则可以直接通过其图形界面或者命令行工具进行配置。 - 使用 `nmcli` 命令添加静态路由: ```bash nmcli connection modify "ConnectionName" +ipv4.routes "192.168.2.0/24 192.168.1.1" nmcli connection up "ConnectionName" ``` 替换 `"ConnectionName"` 为你实际使用的连接名称。 这种方法适用于现代桌面环境下的 Linux 发行版,并能很好地与 GUI 集成[^4]。 #### 方法三:手动修改 `/etc/network/interfaces` (Debian/Ubuntu) 针对 Debian 和 Ubuntu 类型的操作系统,可以在 `/etc/network/interfaces` 文件中指定静态 IP 地址以及相应的路由规则。 示例配置如下: ```plaintext auto eth0 iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.1 post-up ip route add 192.168.2.0/24 via 192.168.1.1 || true pre-down ip route del 192.168.2.0/24 via 192.168.1.1 || true ``` 上述配置中的 `post-up` 和 `pre-down` 指令分别用于在网络接口启动和关闭时执行额外操作,从而实现静态路由的自动加载和卸载[^3]。 #### 方法四:利用 systemd-networkd 在某些较新的 Linux 版本中可能已经切换到了 `systemd-networkd` 来管理网络服务。此时需要调整对应的 `.network` 文件以加入路由信息。 假设我们正在处理名为 `eth0.network` 的文件,那么应该像这样写入内容: ```ini [Match] Name=eth0 [Network] Address=192.168.1.100/24 Gateway=192.168.1.1 Routes= 192.168.2.0/24 via 192.168.1.1 ``` 完成更改之后记得重新加载并启用 `systemd-networkd.service`[^2]。 --- ### 总结 以上介绍了四种主流的方式用来设定 Linux 下的永久静态路由。每种方案都有各自适用场景,请依据实际情况选取最合适的手段实施部署。 ```python import os os.system('ip route add 192.168.2.0/24 via 192.168.1.1') print("临时路由已成功添加") ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值