openEuler网络及路由配置

目录

一、网络配置

方法一、使用nmcli命令

步骤1:查看当前网络连接

步骤2:修改连接配置为静态IP

步骤3:重启网络连接

步骤4:验证配置

方法二:编辑配置文件

步骤1:备份原配置文件

步骤2:编辑配置文件

步骤3:重启NetworkManager服务

步骤4:验证配置

方法三:使用nmtui图形界面(适合新手)

步骤1:启动nmtui

步骤2:选择配置项

步骤3:重启网络连接

注意事项

验证配置是否生效

二、路由配置

1、查看路由表

(1)查看当前活跃路由表

(2)查看IPv6路由表

2、临时添加路由

(1)、添加默认网关

(2)添加特定网段路由

(3)添加主机路由

3、删除路由

(1)删除默认网关

(2)删除特定网段路由

4、永久配置路由

方法一:通过NetworkManager

1、编辑网络连接配置

2、应用配置

方法二:编辑路由配置文件

1、创建路由配置文件

2、添加路由规则

2.1 示例解析:

3、重启NetworkManager服务

5、修改默认路由优先级

(1)临时修改(添加路由时指定metric)

(2) 永久修改(通过NetworkManager)

6、策略路由(基于条件的路由)

(1)添加路由表

(2)配置路由规则

(3)持久化策略路由(通过脚本)

7、常用路由命令参数

8、验证配置

9、注意事项


一、网络配置

方法一、使用nmcli命令

NetworkManager 是 openEuler 默认的网络管理工具,使用 nmcli 命令可以方便地配置静态 IP。

步骤1:查看当前网络连接

nmcli connection show

输出示例:

NAME    UUID                                  TYPE      DEVICE 
eth0    5e0d1a4c-3a8c-4b6c-8e3d-8e7e8e8e8e8e  ethernet  eth0   

步骤2:修改连接配置为静态IP

# 将 eth0 连接设置为静态 IP
sudo nmcli connection modify eth0 \
  ipv4.addresses "192.168.1.100/24" \
  ipv4.gateway "192.168.1.1" \
  ipv4.dns "8.8.8.8 8.8.4.4" \
  ipv4.method manual \
  connection.autoconnect yes

步骤3:重启网络连接

sudo nmcli connection down eth0 && sudo nmcli connection up eth0

步骤4:验证配置

ip addr show eth0
ping -c 3 8.8.8.8  # 测试网络连通性

方法二:编辑配置文件

配置文件位于 /etc/sysconfig/network-scripts/ 目录下,以 ifcfg- 开头。

步骤1:备份原配置文件

sudo cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0.bak

步骤2:编辑配置文件

sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0

修改为以下内容(示例):

TYPE=Ethernet
BOOTPROTO=static      # 使用静态 IP
NAME=eth0
DEVICE=eth0
ONBOOT=yes            # 开机自动激活
IPADDR=192.168.1.100  # IP 地址
PREFIX=24             # 子网掩码
GATEWAY=192.168.1.1   # 网关
DNS1=8.8.8.8          # DNS 服务器
DNS2=8.8.4.4

步骤3:重启NetworkManager服务

sudo systemctl restart NetworkManager

步骤4:验证配置

ip addr show eth0
ping -c 3 8.8.8.8

方法三:使用nmtui图形界面(适合新手)

nmtui提供了简单的文本界面来配置网络

步骤1:启动nmtui

sudo nmtui

步骤2:选择配置项

  • 选择Edit a connection —>选择网络接口(如eth0)—>按Edit

  • IPv4 CONFIGURATION 中选择 Manual

  • 点击 Show,添加 IP 地址、子网掩码、网关和 DNS

  • 按OK—>Quit

步骤3:重启网络连接

sudo nmcli connection down eth0 && sudo nmcli connection up eth0

注意事项

  1. 权限要求:所有修改命令都需要 sudo 权限。

  2. DNS 配置:如果 DNS 未正确设置,可能无法通过域名访问网络。

  3. 静态 vs DHCP:若要恢复 DHCP,将BOOTPROTO改为dhcp或执行:

    sudo nmcli connection modify eth0 ipv4.method auto

  4. 防火墙:修改后若无法访问网络,检查防火墙是否放行:

    sudo systemctl status firewalld  # 检查防火墙状态
    sudo firewall-cmd --permanent --add-service=http  # 放行 HTTP 服务
    sudo firewall-cmd --reload  # 重新加载配置

验证配置是否生效

# 查看 IP 地址
ip addr show eth0
​
# 查看路由表
ip route
​
# 测试网络连通性
ping -c 3 8.8.8.8       # 测试外网
ping -c 3 192.168.1.1   # 测试网关

二、路由配置

1、查看路由表

(1)查看当前活跃路由表

ip route show
# 或简写
ip r

输出示例:

default via 192.168.1.1 dev eth0 proto static metric 100 
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100 metric 100 

(2)查看IPv6路由表

ip -6 route show

2、临时添加路由

(1)添加默认网关

sudo ip route add default via 192.168.1.1 dev eth0

(2)添加特定网段路由

# 语法:ip route add [目标网络/掩码] via [下一跳地址] dev [接口名]
sudo ip route add 10.0.0.0/8 via 192.168.1.200 dev eth0

(3)添加主机路由

sudo ip route add 10.1.1.1 via 192.168.1.200 dev eth0

3、删除路由

(1)删除默认网关

sudo ip route delete default via 192.168.1.1 dev eth0

(2)删除特定网段路由

sudo ip route delete 10.0.0.0/8 via 192.168.1.200 dev eth0

4、永久配置路由

方法一:通过NetworkManager

1、编辑网络连接配置
sudo nmcli connection modify eth0 \
  +ipv4.routes "10.0.0.0/8 192.168.1.200" \
  +ipv4.routes "192.168.2.0/24 192.168.1.201"
2、应用配置
sudo nmcli connection down eth0 && sudo nmcli connection up eth0

方法二:编辑路由配置文件

1、创建路由配置文件
sudo vi /etc/sysconfig/network-scripts/route-eth0
2、添加路由规则
10.0.0.0/8 via 192.168.1.200 dev eth0
192.168.2.0/24 via 192.168.1.201 dev eth0
default via 192.168.1.1 dev eth0
2.1 示例解析:
  1. 10.0.0.0/8 via 192.168.1.200 dev eth0

  • 目标网络10.0.0.0/8(即 IP 地址范围从10.0.0.010.255.255.255,共 16777216 个地址)

  • 下一跳网关192.168.1.200(数据包将被转发到这个地址)

  • 出口接口eth0(数据包通过该网卡发送出去)

作用:当系统需要访问10.0.0.0/8网段的 IP 时,会将数据包发送给192.168.1.200这个网关,由它继续转发。

2、192.168.2.0/24 via 192.168.1.201 dev eth0

  • 目标网络192.168.2.0/24(即192.168.2.0192.168.2.255,共 256 个地址)

  • 下一跳网关192.168.1.201

  • 出口接口eth0

作用:访问192.168.2.0/24网段的数据包,将通过eth0发送给192.168.1.201网关处理。

3、default via 192.168.1.1 dev eth0

  • 目标网络default(即默认路由,所有未在路由表中明确指定的目标 IP)

  • 下一跳网关192.168.1.1(通常是局域网的默认网关,如路由器)

  • 出口接口eth0

作用:当系统需要访问其他网段(如互联网)时,会将数据包发送给192.168.1.1网关,由它进行转发。

3、重启NetworkManager服务
sudo systemctl restart NetworkManager

5、修改默认路由优先级

(1)临时修改(添加路由时指定metric)

sudo ip route add default via 192.168.1.1 dev eth0 metric 100

(2) 永久修改(通过NetworkManager)

sudo nmcli connection modify eth0 \
  ipv4.route-metric 100

6、策略路由(基于条件的路由)

(1)添加路由表

sudo vi /etc/iproute2/rt_tables
# 添加一行(格式:ID 表名)
100 custom

(2)配置路由规则

# 添加路由到自定义表
sudo ip route add 10.0.0.0/8 via 192.168.1.200 dev eth0 table custom
​
# 添加规则:匹配特定源 IP 使用自定义表
sudo ip rule add from 192.168.1.150 table custom

(3)持久化策略路由(通过脚本)

创建启动脚本:/etc/rc.d/rc.local

#!/bin/bash
ip route add 10.0.0.0/8 via 192.168.1.200 dev eth0 table custom
ip rule add from 192.168.1.150 table custom
添加执行权限:

sudo chmod +x /etc/rc.d/rc.local

7、常用路由命令参数

命令描述
ip route show显示路由表
ip route add添加路由
ip route delete删除路由
ip route replace替换现有路由
-6操作IPv6路由
ip rule管理策略路由

8、验证配置

# 查看路由表
ip route show
​
# 跟踪路由
traceroute 10.1.1.1
​
# 检查数据包匹配的路由规则
ip route get 10.1.1.1

9、注意事项

  1. 权限要求:修改路由表需要 root 权限。

  2. 持久化:直接使用 ip route 命令添加的路由是临时的,重启后失效。

  3. 网关冲突:避免配置多个默认网关,否则可能导致网络异常。

  4. 调试工具:使用 ip route get 诊断路由匹配问题,使用 tcpdump 抓包分析。

通过以上方法,你可以灵活配置 OpenEuler 系统的路由表,实现复杂的网络拓扑和流量控制。

### 配置路由openEuler 系统中配置路由可以通过多种方式实现,具体取决于需求以及希望路由配置的持久性。 #### 使用 `route` 命令临时添加路由 对于不需要重启后仍然存在的临时路由配置,可以直接利用 `route` 命令来完成。例如: ```bash route add -net 192.168.101.0 netmask 255.255.255.0 dev enp3s0 ``` 这条命令会向系统中增加一条通往 `192.168.101.0/24` 网络的数据包转发路径,并指定这些数据包应该通过网络接口 `enp3s0` 发送出去[^3]。 如果要添加单个主机的路由,则可执行如下指令: ```bash route add -host 192.168.101.100 dev enp3s0 ``` 这表示前往 IP 地址为 `192.168.101.100` 的流量应经由 `enp3s0` 接口传输。 需要注意的是,上述操作仅适用于当前会话,在机器重新启动之后将会丢失所作更改。 #### 设置永久性的静态路由 为了使路由设置能够在系统重启后依然有效,建议编辑 `/etc/sysconfig/network-scripts/ifcfg-<interface>` 文件(其中 `<interface>` 是具体的网卡名称),并加入相应的参数如 `GATEWAY=` 或者创建自定义脚本放置于 `/etc/rc.d/init.d/` 下以确保每次开机都能自动加载所需的路由规则[^2]。 另一种方法是在文件 `/etc/rc.local` 中追加必要的 `ip route add ...` 指令;然而,曾经遇到过在此处配置路由策略未能按预期工作的情况,因此这种方法可能不是最可靠的选项[^1]。 更推荐的做法是修改特定网卡对应的配置文件,比如对于名为 `eth0` 的设备来说就是 `/etc/sysconfig/network-scripts/ifcfg-eth0`,在里面添加类似下面的内容: ```plaintext POSTUP="ip route add 172.16.0.0/16 via 192.168.1.1" PREDOWN="ip route del 172.16.0.0/16 via 192.168.1.1" ``` 这样做的好处是可以随着该接口的状态变化而动态调整路由表项,从而提高系统的稳定性和灵活性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值