linux设置静态路由
时间: 2023-07-26 18:30:45 浏览: 190
要在Linux中设置静态路由,可以使用以下命令:
1. 首先,查看当前路由表:
```
$ route -n
```
2. 添加静态路由:
```
$ sudo route add -net 目标网络地址 netmask 子网掩码 gw 网关地址 dev 网卡名称
```
其中,目标网络地址是要访问的网络地址,子网掩码是目标网络的掩码,网关地址是该网络的网关地址,网卡名称是要使用的网络接口的名称。
例如,如果要将数据包发送到网络 192.168.1.0/24,并将其路由到网关 192.168.0.1,可以使用以下命令:
```
$ sudo route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.1 dev eth0
```
3. 检查新的路由是否已添加:
```
$ route -n
```
注意:上述命令仅适用于临时添加静态路由。如果您想要永久保存静态路由,需要将其添加到网络配置文件中。不同的Linux发行版可能有不同的配置文件,例如CentOS中的/etc/sysconfig/network-scripts/route-eth0文件。
相关问题
linux 设置静态路由
### 如何在Linux系统中设置静态路由
#### 使用命令行临时添加静态路由
为了立即生效而不重启网络服务,在终端输入如下命令可以实现静态路由的配置:
对于IPv4地址,使用`ip route add`命令来增加一条新的路由记录。例如要向目标网段192.168.2.0/24添加通过网关192.168.1.1可达的路由,则执行下面这条指令[^3]:
```bash
sudo ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0
```
如果希望移除已有的特定路由条目,可利用`del`参数代替`add`。
#### 配置文件方式持久化保存静态路由
为了让上述更改在网络重启后仍然有效,应当编辑相应的接口配置文件或创建独立的路由规则文件。具体操作取决于所使用的发行版及其版本号。通常情况下,Red Hat系(如CentOS、RHEL)会在`/etc/sysconfig/network-<interface>`内定义;而对于Debian系(像Ubuntu),则是在`/etc/netplan/*.yaml`或者传统的`/etc/network/interfaces.d/<iface>.conf`里指定永久性的路由信息。
以Ubuntu为例,可以在Netplan YAML配置文件中加入static_routes字段下的项目列表形式描述多条固定路径:
```yaml
network:
version: 2
renderer: networkd
ethernets:
ens3:
dhcp4: no
addresses:
- 192.168.1.100/24
gateway4: 192.168.1.1
nameservers:
search: [mydomain, otherdomain]
addresses: [8.8.8.8, 8.8.4.4]
routes:
- to: 192.168.2.0/24
via: 192.168.1.1
metric: 100
```
完成修改之后记得应用新设定并验证其有效性:
```bash
sudo netplan apply
ip r s | grep '192.168'
```
linux添加静态路由
在 Linux 中添加静态路由的方法如下:
1. 使用命令行工具 `route` 添加路由:
```
route add -net <目的网络地址> netmask <子网掩码> gw <网关地址>
```
例如:
```
route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1
```
2. 使用 `ip` 命令行工具添加路由:
```
ip route add <目的网络地址>/<子网掩码> via <网关地址>
```
例如:
```
ip route add 192.168.1.0/24 via 192.168.1.1
```
3. 修改路由表的配置文件(如 /etc/sysconfig/network-scripts/route-eth0),在其中添加路由规则。
注意:添加的静态路由只在当前会话中有效,重启系统后需要重新添加。
阅读全文