在 CentOS Stream 9 中,网络配置文件的位置与之前的 CentOS 版本有所不同。
在 CentOS Stream 9 中,如果你使用的是 NetworkManager 来管理网络,那么网卡的配置文件通常位于以下目录:
/etc/NetworkManager/system-connections/
在这个目录下,你会找到以网卡名称命名的 .nmconnection 文件,例如 ens33.nmconnection。这些文件包含了 NetworkManager 使用的网络配置信息。
例如,如果你想要查看或编辑名为 ens33 的网卡的配置,你可以使用以下命令:
sudo vi /etc/NetworkManager/system-connections/ens33.nmconnection
在 .nmconnection 文件中,你可以编辑 [connection]、[ethernet]、[ipv4] 等部分来配置网络参数,如 IP 地址、网关、DNS 等。如下图
[connection]
id=ens33
uuid=f9e8039d-8bc1-3f68-8462-8ab1ceb256b3
type=ethernet
autoconnect-priority=-999
interface-name=ens33
timestamp=1709257256
[ethernet]
[ipv4]
address1=192.168.126.112/24,192.168.126.2
dns=223.5.5.5;
method=manual
[ipv6]
addr-gen-mode=eui64
method=auto
[proxy]
以下是该文件中可能出现的一些常见配置项及其详细解释:
- [connection] 部分:
id:连接的唯一标识符。
uuid:连接的通用唯一标识符(UUID),通常由系统自动生成。
type:连接的类型,对于有线网络通常是 ethernet。
autoconnect-priority:自动连接的优先级,数值越低,优先级越高。
interface-name:网络接口的名称,例如 ens33。 - [ethernet] 部分:
mac-address-blacklist:MAC地址黑名单,用于防止特定的MAC地址使用此网络接口。 - [ipv4] 或 [ipv6] 部分:
method:IP地址分配方法,可以是 auto(自动获取,如DHCP)、manual(手动设置静态IP)等。
addresses:一个或多个IP地址,格式为 IP/PREFIX,例如 192.168.1.100/24。
gateway:默认网关地址,用于路由到其他网络。
dns:DNS服务器地址,可以是单个地址或逗号分隔的多个地址。
dns-search:DNS搜索域,用于域名解析。
dns-options:DNS解析选项,例如 use-dnssec(使用DNSSEC)。 - [proxy] 部分(如果配置了代理):
method:代理服务器的类型,如 none(无代理)、auto(自动检测代理)、manual(手动配置代理)。
host:代理服务器的地址。
port:代理服务器的端口号。
username 和 password:如果代理需要认证,这里填写用户名和密码。 - [ipv4] 或 [ipv6] 的其他选项:
route-metric:路由度量值,用于多路由情况下的路由选择。
route-table:指定特定的路由表。
ignore-auto-routes:忽略自动生成的路由。
never-default:即使没有其他默认路由,也不将此路由设置为默认路由。
如果你不使用 NetworkManager,而是使用传统的 initscripts 来管理网络,那么配置文件可能位于 /etc/sysconfig/network-scripts/ 目录下,文件名通常以 ifcfg- 开头,后面跟上网卡的名称,例如 ifcfg-ens33。
请注意,直接编辑这些文件可能需要重启网络服务或整个系统才能使更改生效。在 CentOS Stream 9 中,你可以使用 nmcli 命令行工具来管理 NetworkManager 的配置,这通常是一个更简单且更安全的方法。
nmcli 是 NetworkManager 的命令行界面,它提供了一种快速、灵活的方式来管理网络设置。以下是一些常用的 nmcli 命令和它们的用法:
1. 查看所有网络连接:
nmcli con show
2. 查看特定网络连接的详细信息:
nmcli con show <connection-name>
替换 <connection-name> 为你想要查看的网络连接的名称。
3. 创建新的网络连接:
nmcli con add con-name "<connection-name>" ifname <interface-name> type <connection-type> autoconnect yes
替换 <connection-name> 为你想要的连接名称,<interface-name> 为网络接口名称(如 ens33),<connection-type> 为连接类型(如 ethernet、wifi)。
4. 设置静态 IP 地址:
nmcli con mod <connection-name> ipv4.addresses <ip-address>/<subnet-mask> ipv4.gateway <gateway> ipv4.dns <dns1>,<dns2> ipv4.method manual
替换 <connection-name> 为连接名称,<ip-address> 和 <subnet-mask> 为静态 IP 地址和子网掩码(如 192.168.1.100/24),<gateway> 为网关地址,<dns1> 和 <dns2> 为 DNS 服务器地址。
5. 激活或停用网络连接:
nmcli con up <connection-name>
nmcli con down <connection-name>
up 命令激活连接,down 命令停用连接。
6. 修改网络连接的属性:
nmcli con mod <connection-name> <property> <value>
例如,要修改 DNS 服务器,可以使用:
nmcli con mod <connection-name> ipv4.dns "8.8.8.8,8.8.4.4"
7. 删除网络连接:
nmcli con delete <connection-name>
8. 查看网络接口的状态:
nmcli device status
9. 搜索可用的 Wi-Fi 网络:
nmcli device wifi list
10. 连接到 Wi-Fi 网络:
nmcli dev wifi connect <ssid> password <password>
替换 <ssid> 为 Wi-Fi 网络的名称,<password> 为密码。
11. 查看当前激活的网络连接:
nmcli con show --active
12. 重置网络管理器:
nmcli networking off
nmcli networking on
这将关闭并重新启动网络管理器,有时用于解决网络问题。
请注意,nmcli 命令的输出可能会因 NetworkManager 的版本和系统配置而略有不同。在使用 nmcli 时,如果不确定某个命令的用法,可以使用 nmcli –help 或 nmcli <command> –help 来获取帮助信息。