CentOS Stream10 设置固定ip
centos7和CentOS Stream9和CentOS Stream10的区别很大。管理方式也变了
1、打开网卡配置文件
CentOS Stream 10 的网卡配置文件移动在 /etc/NetworkManager/system-connections/ 目录下,打开对应的网卡配置文件:
vim /etc/NetworkManager/system-connections/ens33.nmconnection
CentOS 10 默认使用 NetworkManager 管理网络,而nmcli是 NetworkManager 命令行接口的缩写,是一个用来进行网络配置、管理网络连接的命令工具,可以简化网络设置,尤其是在无头(没有图形界面)环境下。
查看centos10的默认配置
[root@centos10model system-connections]# ls
ens33.nmconnection ens33.nmconnection.bak
[root@centos10model system-connections]# pwd
/etc/NetworkManager/system-connections
[root@centos10model system-connections]#
查看配置 ens33.nmconnection.bak
[root@centos10model system-connections]# cat ens33.nmconnection.bak
[connection]
id=ens33
uuid=bc666755-b111-30f0-88e6-199803e48aa6
type=ethernet
autoconnect-priority=-999
interface-name=ens33
timestamp=1742935328
[ethernet]
[ipv4]
method=auto
[ipv6]
addr-gen-mode=eui64
method=auto
[proxy]
这书写风格和格式跟centos7简直天差地别啊。
看一下我修改后的配置
[root@centos10model system-connections]# cat ens33.nmconnection
[connection]
id=ens33 #网卡id
uuid=bc666755-b111-30f0-88e6-199803e48aa6 ##uuid
type=ethernet #网卡
autoconnect-priority=-999 #不知道这个干什么的,应该是开机启动
interface-name=ens33 #网卡名字
timestamp=1742915250 #linux的时间戳
[ethernet]
[ipv4]
address1=192.168.230.130/24 #ip/掩码
gateway=192.168.230.2 #网关
method=manual ## 改成manual(意思是设置手动模式),auto自动获取
[ipv6]
addr-gen-mode=eui64 #ipv6,看情况,需要还是关闭
method=ignore #auto自动获取,ignore关闭ipv6
[proxy] #设置代理,这个我没设置
重启服务
sudo systemctl restart NetworkManager
[root@localhost ~]# sudo nmcli c reload # 重新加载配置文件
[root@localhost ~]# sudo nmcli c up ens33 # 重启ens33网卡
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection
修改后
[root@centos10model system-connections]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.230.130 netmask 255.255.255.0 broadcast 192.168.230.255
ether 00:0c:29:12:ef:50 txqueuelen 1000 (Ethernet)
RX packets 1753 bytes 178069 (173.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1528 bytes 407885 (398.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1000 (Local Loopback)
RX packets 2088 bytes 96048 (93.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2088 bytes 96048 (93.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@centos10model system-connections]#
网卡控制
查看运行状态:systemctl status NetworkManager
启动:systemctl start NetworkManager
重启:systemctl restart NetworkManager
关闭:systemctl stop NetworkManager
查看是否开机启动:systemctl is-enabled NetworkManager
开机启动:systemctl enable NetworkManager
禁止开机启动:systemctl disable NetworkManager
网上找的一些相关命令,还是的好好学习的
那么这个nmcli又是什么呢?经过查阅资料得知:
CentOS 10 默认使用 NetworkManager 管理网络,而nmcli是 NetworkManager 命令行接口的缩写,是一个用来进行网络配置、管理网络连接的命令工具,可以简化网络设置,尤其是在无头(没有图形界面)环境下。
sudo nmcli con mod "ens33" ipv4.addresses 192.168.150.145/24 # IP地址,自己设置,要匹配网络范围
sudo nmcli con mod "ens33" ipv4.gateway 192.168.150.2 # 网关,要和VMware中配置的虚拟网卡一致
sudo nmcli con mod "ens33" ipv4.dns "192.168.150.2" # DNS服务器,和网关一致即可 8.8.8.8 也可以
sudo nmcli con mod "ens33" ipv4.method manual # IPv4配置方法设置为手动,也就是启用静态IP配置
sudo nmcli con up "ens33" # 使配置生效
添加第二个IP地址 nmcli con mod CON-NAME +ipv4.addresses 10.10.10.10/16
删除第二个IP地址 nmcli con mod CON-NAME -ipv4.addresses 10.10.10.10/16
添加dns1 nmcli con mod CON-NAME ipv4.dns 114.114.114.114
添加dns2 nmcli con mod CON-NAME +ipv4.dns 8.8.8.8
nmcli c m ens33 ipv4.address 192.168.80.10/24 # 修改 IP 地址和子网掩码
nmcli c m ens33 ipv4.method manual # 修改为静态配置,默认是 auto
nmcli c m ens33 ipv4.gateway 192.168.80.2 # 修改默认网关
nmcli c m ens33 ipv4.dns 192.168.80.2 # 修改 DNS
nmcli c m ens33 +ipv4.dns 114.114.114.114 # 添加一个 DNS
nmcli c m ens33 ipv6.method disabled # 将 IPv6 禁用
nmcli c m ens33 connection.autoconnect yes # 开机启动
nmcli 命令
# 查看所有网络连接
# 长格式 nmcli connection show
# 短格式,缩写 nmcli con show
# 查看活动的网络连接 nmcli con show -active
# 查看指定网卡的详细信息 nmcli con show eth0
# 显示设备的连接状态 nmcli status
# 显示所有设备网络设备详情信息 nmcli device show
# 显示指定网络设备的详细信息 nmcli device show eth0
# 启用网络连接 nmcli con up eth0
# 停用网络连接(可以被自动激活) nmcli con down eth0
# 禁用网卡,防止自动被激活 nmcli device disconnect eth0
# 删除网络连接的配置文件 nmcli con delete eth0
# 重新加载网络配置文件 nmcli con reload
centos7配置静态ip
cents7的配置,还是的需要了解下的。
/etc/sysconfig/network-scripts/ifcfg-enp0s3
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
IPADDR="192.168.208.50"
NETMASK="255.255.255.0"
GATEWAY="192.168.208.2"
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
DHCPV6C=yes
IPV6_AUTOCONF=no
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens32
DEVICE=ens32
ONBOOT=yes
IPV6_PRIVACY=no
DNS1="223.5.5.5"
DNS2="1.0.0.1"
配置文件参数详解
TYPE: 网络接口的类型,通常为Ethernet,表示有线网络接口。
PROXY_METHOD: 代理方法配置。设置为none表示不使用代理。
BROWSER_ONLY: 设置为no表示该网络接口不仅用于浏览器访问,还可以用于其他网络通信。
BOOTPROTO: 定义接口的启动协议,设置为static表示使用静态IP地址。其他可能的值包括dhcp(动态获取IP)和none(不自动获取IP)。
IPADDR: 要为该接口分配的静态IP地址。确保该IP地址在你的网络中是唯一的。
NETMASK: 子网掩码,用于确定网络的大小。通常是255.255.255.0,表示标准的C类网络。
GATEWAY: 网络的默认网关IP地址。它是流量发送到其他网络时的出口。
DEFROUTE: 设置为yes表示使用此接口作为默认路由。
IPV4_FAILURE_FATAL: 设置为no表示即使IPv4配置失败,网络服务也不会停止。
IPV6INIT: 设置为yes表示启用IPv6协议。
DHCPV6C: 设置为yes表示使用DHCPv6来自动获取IPv6地址,设置为no表示不自动配置IPv6地址。
IPV6_AUTOCONF: 设置为yes表示自动配置IPv6地址。
IPV6_DEFROUTE: 设置为yes表示使用此接口的IPv6地址作为默认路由。
IPV6_FAILURE_FATAL: 设置为no表示即使IPv6配置失败,网络服务也不会停止。
IPV6_ADDR_GEN_MODE: 设置为stable-privacy表示生成稳定的隐私IPv6地址。
NAME: 网络接口的逻辑名称。可以与DEVICE相同。
DEVICE: 网络设备的名称。通常与ifconfig或ip a命令中看到的名称一致,如ens32。
ONBOOT: 设置为yes表示系统启动时自动启用该网络接口。
IPV6_PRIVACY: 设置为no表示不使用IPv6隐私扩展,使用固定的IPv6地址。
DNS1: 系统使用的第一个DNS服务器地址,用于域名解析。
DNS2: 可选的第二个DNS服务器地址,作为备用。
这些参数确保网络接口正确配置并在系统启动时自动激活。保存并退出编辑器后,重启网络服务应用配置
服务启动方式
修改后重启一下网络服务即可 systemctl restart network
sudo systemctl stop NetworkManager
sudo systemctl stop network
sudo ip addr flush <你的接口名称> # 例如:sudo ip addr flush ens33
sudo systemctl start network
sudo systemctl start NetworkManager
本文地址:https://www.vps345.com/4153.html