2.5. 使用带有 PCI 地址的 nmstatectl 配置带有静态 IP 地址的以太网连接
使用 nmstatectl
工具通过 Nmstate API 配置以太网连接。Nmstate API 确保设置配置后结果与配置文件匹配。如果有任何失败,nmstatectl
会自动回滚更改以避免系统处于不正确的状态。
您可以使用 Nmstate 配置带有静态 IP 地址、网关和 DNS 设置的以太网连接,并根据其 PCI 地址而不是接口名称将它们分配给设备。
先决条件
- 服务器配置中存在物理以太网网络接口控制器(NIC)。
-
您知道设备的 PCI 地址。您可以使用
ethtool -i < interface_name> | grep bus-info
命令显示 PCI 地址。 -
nmstate
软件包已安装。
步骤
创建包含以下内容的 YAML 文件,如
~/create-ethernet-profile.yml
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 这些设置通过以下设置为 ID 为
0000:00:14.3
的设备定义以太网连接配置文件:-
静态 IPv4 地址 -
192.0.2.1
,子网掩码为/24
-
静态 IPv6 地址 -
2001:db8:1::1
,子网掩码为/64
-
IPv4 默认网关 -
192.0.2.254
-
IPv6 默认网关 -
2001:db8:1::fffe
-
IPv4 DNS 服务器 -
192.0.2.200
-
IPv6 DNS 服务器 -
2001:db8:1::ffbb
-
DNS 搜索域 -
example.com
-
静态 IPv4 地址 -
将设置应用到系统:
nmstatectl apply ~/create-ethernet-profile.yml
# nmstatectl apply ~/create-ethernet-profile.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
以 YAML 格式显示当前状态:
nmstatectl show <interface_name>
# nmstatectl show <interface_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示 NIC 的 IP 设置:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示 IPv4 默认网关:
ip route show default
# ip route show default default via 192.0.2.254 dev <interface_name> proto static metric 102
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示 IPv6 默认网关:
ip -6 route show default
# ip -6 route show default default via 2001:db8:1::fffe dev <interface_name> proto static metric 102 pref medium
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示 DNS 设置:
cat /etc/resolv.conf search example.com nameserver 192.0.2.200 nameserver 2001:db8:1::ffbb
# cat /etc/resolv.conf search example.com nameserver 192.0.2.200 nameserver 2001:db8:1::ffbb
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
ping
工具验证这个主机是否可以向其他主机发送数据包:ping <host-name-or-IP-address>
# ping <host-name-or-IP-address>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow