Skip to the content.

CentOS 9 实战(8):网络配置与管理

欢迎来到《CentOS 9 实战速查手册》专栏的第 8 篇文章。在这里,我们将深入探讨 CentOS 9 中的网络配置与管理。网络配置是系统管理员必须掌握的基本技能之一,通过学习网络配置,你将能够设置和管理网络连接,确保系统的网络通信正常运行。

1. 网络配置工具

CentOS 9 中,主要使用 nmclinmtui 工具来管理网络连接。

1.1 nmcli

nmcli 是 NetworkManager 的命令行接口,用于从终端管理网络连接。

查看网络连接

你想查看当前的网络连接状态:

# 查看网络设备状态
nmcli device status

查看指定网络接口的当前配置

你想查看网络接口 ens33 的当前配置:

# 查看指定网络接口的当前配置
nmcli device show ens33

要查看更详细的信息,包括是否使用 DHCP 以及 DNS 设置,可以使用以下命令:

# 查看详细的连接信息
nmcli connection show ens33

配置静态 IP 地址

你希望为网络接口 ens33 配置静态 IP 地址:

# 列出当前的连接
nmcli connection show

# 修改现有连接的名称(假设名称是 ens33)
nmcli connection modify ens33 ipv4.addresses 192.168.1.100/24  # 设置静态 IP 地址
nmcli connection modify ens33 ipv4.gateway 192.168.1.1  # 设置网关
nmcli connection modify ens33 ipv4.dns "8.8.8.8 8.8.4.4"  # 设置 DNS 服务器
nmcli connection modify ens33 ipv4.method manual  # 设置为手动 IP 配置模式
nmcli connection up ens33  # 启动网络连接

配置 DHCP

你希望将网络接口 ens33 配置为通过 DHCP 获取 IP 地址:

# 配置 DHCP
nmcli connection modify ens33 ipv4.method auto
nmcli connection up ens33

1.2 nmtui

nmtui 是 NetworkManager 的图形化终端用户界面,适用于在终端环境下进行网络配置。

启动 nmtui

# 启动 nmtui
sudo nmtui

nmtui 界面中,你可以轻松地配置网络连接、设置主机名以及激活或禁用网络连接。

2. 网络工具

CentOS 9 中,有许多网络工具可以帮助你管理和诊断网络连接。

2.1 ip 命令

ip 命令是一个强大的网络配置工具,用于管理网络接口、路由和策略路由。

查看网络接口信息

你想查看所有网络接口的信息:

# 查看所有网络接口的信息
ip addr show

添加 IP 地址

你希望为网络接口 ens33 添加一个新的 IP 地址:

# 添加新的 IP 地址
sudo ip addr add 192.168.1.101/24 dev ens33

删除 IP 地址

你需要删除网络接口 ens33 上的 IP 地址:

# 删除 IP 地址
sudo ip addr del 192.168.1.101/24 dev ens33

查看路由表

你想查看当前的路由表信息:

# 查看路由表信息
ip route show

添加默认路由

你希望添加一个默认路由:

# 添加默认路由
sudo ip route add default via 192.168.1.1

2.2 ping 命令

ping 命令用于测试网络连通性。

测试网络连通性

你想测试与 google.com 的连通性:

# 测试网络连通性
ping google.com

2.3 netstat 命令

netstat 命令用于显示网络连接、路由表、接口统计信息等。

查看网络连接信息

你希望查看当前的网络连接信息:

# 查看网络连接信息
netstat -tuln

参数解释

查看接口统计信息

你想查看网络接口的统计信息:

# 查看接口统计信息
netstat -i

查看路由表信息

你想查看路由表信息:

# 查看路由表信息
netstat -r

2.4 traceroute 命令

traceroute 命令用于跟踪数据包到目标主机的路由路径。CentOS 9 最小化安装没有提供此命令,你需要先安装:

# 安装 traceroute
sudo dnf install -y traceroute

跟踪路由路径

你想跟踪到 google.com 的路由路径:

# 跟踪路由路径
traceroute google.com

参数解释

设置最大跳数

你希望将最大跳数设置为 10:

# 设置最大跳数为 10
traceroute -m 10 google.com

设置等待时间

你希望设置等待每个响应的超时时间为 5 秒:

# 设置等待时间为 5 秒
traceroute -w 5 google.com

2.5 curl 和 wget

curlwget 命令用于从命令行下载文件和进行 HTTP 请求。

使用 curl 下载文件

你希望使用 curl 下载一个文件:

# 使用 curl 下载文件
curl -O http://example.com/file

使用 wget 下载文件

你希望使用 wget 下载一个文件:

# 使用 wget 下载文件
wget http://example.com/file

2.6 lsof 命令

lsof 命令用于列出打开的文件,包括正在使用的网络端口。lsof 需要单独安装:

# 安装 lsof
sudo dnf install -y lsof

# 查看当前被占用的端口
sudo lsof -i -P -n

# 检查端口是否被占用
sudo lsof -i:8080

3. 防火墙配置

CentOS 9 中,默认的防火墙管理工具是 firewalld

3.1 启动和停止 firewalld

# 启动 firewalld
sudo systemctl start firewalld

# 停止 firewalld
sudo systemctl stop firewalld

3.2 查看防火墙状态

# 查看防火墙状态
sudo firewall-cmd --state

3.3 配置防火墙规则

添加服务

你希望允许 HTTP 服务通过防火墙:

# 添加 HTTP 服务
sudo firewall-cmd --permanent --add-service=http
# 重新加载防火墙规则
sudo firewall-cmd --reload

添加端口

你希望允许 TCP 端口 8080 通过防火墙:

# 添加 TCP 端口 8080
sudo firewall-cmd --permanent --add-port=8080/tcp
# 重新加载防火墙规则
sudo firewall-cmd --reload

3.4 删除防火墙规则

删除服务

你希望删除 HTTP 服务的防火墙规则:

# 删除 HTTP 服务
sudo firewall-cmd --permanent --remove-service=http
# 重新加载防火墙规则
sudo firewall-cmd --reload

删除端口

你希望删除 TCP 端口 8080 的防火墙规则:

# 删除 TCP 端口 8080
sudo firewall-cmd --permanent --remove-port=8080/tcp
# 重新加载防火墙规则
sudo firewall-cmd --reload

3.5 查看当前防火墙配置

你希望查看当前配置了哪些规则和服务:

# 查看当前配置了哪些规则和服务
sudo firewall-cmd --list-all

4. 总结

在这篇文章中,我们介绍了 CentOS 9网络配置与管理,包括使用 nmclinmtui 进行网络配置,常用网络工具如 ippingnetstattraceroutecurlwget 的使用,以及 firewalld 的基本配置。通过掌握这些知识,你可以更高效地管理和维护 CentOS 系统的网络配置。在接下来的文章中,我们将深入探讨 系统监控与性能优化,敬请期待。