CentOS 9 配置静态IP

文章目录

    • 1_问题原因
    • 2_nmcli 配置静态IP
    • 3_使用配置文件固定IP
    • 4_重启后存在的问题
    • 5_nmcli 补充

1_问题原因

CentOS 7 于 2014年6月发布,基于 RHEL 7,并在 2024年6月30日 结束维护。

CentOS 9 作为目前的最新版本,今天闲来闲来无事下载下来后研究研究。

为了方便日后学习使用,第一步就是配置静态IP,方便ssh服务远程连接。

所以我按照以往配置静态ip的经验进行了如下操作:

vim /etc/sysconfig/network-scripts/ifcfg-ens33

但是发现,并没有 NAT 网络的这个配置文件:

在这里插入图片描述

进入该配置文件所在目录下,查看详细信息:

cd /etc/sysconfig/network-scripts
ls

发现如下文件:

在这里插入图片描述

文件内容如下:

[shenyang@localhost network-scripts]$ cat readme-ifcfg-rh.txt
NetworkManager stores new network profiles in keyfile format in the
/etc/NetworkManager/system-connections/ directory.Previously, NetworkManager stored network profiles in ifcfg format
in this directory (/etc/sysconfig/network-scripts/). However, the ifcfg
format is deprecated. By default, NetworkManager no longer creates
new profiles in this format.Connection profiles in keyfile format have many benefits. For example,
this format is INI file-based and can easily be parsed and generated.Each section in NetworkManager keyfiles corresponds to a NetworkManager
setting name as described in the nm-settings(5) and nm-settings-keyfile(5)
man pages. Each key-value-pair in a section is one of the properties
listed in the settings specification of the man page.If you still use network profiles in ifcfg format, consider migrating
them to keyfile format. To migrate all profiles at once, enter:# nmcli connection migrateThis command migrates all profiles from ifcfg format to keyfile
format and stores them in /etc/NetworkManager/system-connections/.Alternatively, to migrate only a specific profile, enter:# nmcli connection migrate <profile_name|UUID|D-Bus_path>For further details, see:
* nm-settings-keyfile(5)
* nmcli(1)

大致意思就是老版本的配置文件已被弃用,迁移到了/etc/NetworkManager/system-connections/目录中。
要一次迁移所有配置文件可以使用 nmcli connection migrate命令,详细信息参考nmcli


2_nmcli 配置静态IP

那么这个nmcli又是什么呢?经过查阅资料得知:

CentOS 9 默认使用 NetworkManager 管理网络,而nmcliNetworkManager 命令行接口的缩写,是一个用来进行网络配置、管理网络连接的命令工具,可以简化网络设置,尤其是在无头(没有图形界面)环境下。

所以,我们可以尝试用它来设置一个静态 IP:

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"		# 使配置生效

查看是否配置成功:

[shenyang@localhost network-scripts]$ ifconfig
ens33: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500inet 192.168.150.145  netmask 255.255.255.0  broadcast 192.168.150.255inet6 fe80::20c:29ff:fea4:42bd  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:a4:42:bd  txqueuelen 1000  (Ethernet)RX packets 0  bytes 0 (0.0 B)RX errors 0  dropped 0  overruns 0  frame 0TX packets 0  bytes 0 (0.0 B)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
[shenyang@localhost network-scripts]$ ping www.baidu.com
PING www.baidu.com.localdomain (198.18.1.175) 56(84) 比特的数据。
64 比特,来自 198.18.1.175 (198.18.1.175): icmp_seq=1 ttl=128 时间=0.582 毫秒
64 比特,来自 198.18.1.175 (198.18.1.175): icmp_seq=2 ttl=128 时间=0.683 毫秒
64 比特,来自 198.18.1.175 (198.18.1.175): icmp_seq=3 ttl=128 时间=0.591 毫秒
64 比特,来自 198.18.1.175 (198.18.1.175): icmp_seq=4 ttl=128 时间=0.386 毫秒

nmcli 配置到此完成!

另外在配置前一定要注意自己的网络接口名称是否是ens33,可以使用ifconfignmcli d命令查看,如果不一致别忘了进行替换。


3_使用配置文件固定IP

还记得我们上面提到过的/etc/NetworkManager/system-connections/目录吗 ?

编辑该目录下的配置文件也可以达到相同的效果:

cd /etc/NetworkManager/system-connections/
ls

可以看到对应的ens33.nmconnection文件,修改内容如下:

sudo vim ens33.nmconnection
[connection]
id=ens33
uuid=2c1fb13d-391d-4add-9919-7cebb1f76782
type=ethernet
autoconnect=false
interface-name=ens33[ethernet][ipv4]
address1=192.168.150.145/24,192.168.150.2
dns=192.168.150.2;
method=manual[ipv6]
addr-gen-mode=eui64
method=auto[proxy]

修改配置文件后,需要重启网络服务以使更改生效。

sudo systemctl restart NetworkManager

或者重启网卡:

sudo nmcli connection reload # 重新加载配置文件, 并使网络连接生效
sudo nmcli con up ens33 # 重新启用网络接口并应用新的配置

验证配置:

ip a show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000link/ether 00:0c:29:a4:42:bd brd ff:ff:ff:ff:ff:ffaltname enp2s1inet 192.168.150.145/24 brd 192.168.150.255 scope global noprefixroute ens33valid_lft forever preferred_lft foreverinet6 fe80::20c:29ff:fea4:42bd/64 scope link noprefixroute valid_lft forever preferred_lft forever

可以看到看到 ens33 接口已经使用了配置的静态 IP 地址 192.168.150.145


4_重启后存在的问题

部分版本可能出现重启后发现配置没有生效,使用ifconfig命令也没有查看到对应的IP地址,但是/etc/NetworkManager/system-connections/配置文件中的内容确实是我们配置之后的。

这是由于配置的网卡(比如ens33)没有设置自动连接造成的,如果使用nmcli connection up ens33后再查看会发现配置生效了。

使用如下命令解决:

sudo nmcli connection modify "ens33" connection.autoconnect yes
sudo systemctl restart NetworkManager

还可以通过修改配置文件的方式确保网卡开机后自动连接:

sudo vim /etc/NetworkManager/system-connections/ens33.nmconnection

在文件中找到 [connection] 部分,确保 autoconnect 设置为 true

[connection]
id=ens33
uuid=2c1fb13d-391d-4add-9919-7cebb1f76782
type=ethernet
autoconnect=true  # 确保这一行设置为 true
interface-name=ens33

使更改生效,重新启动 NetworkManager

sudo systemctl restart NetworkManager

确保 NetworkManager 服务在系统启动时自动启动:

sudo systemctl enable NetworkManager

配置完毕后, ens33 在系统启动时就能自动连接了。


5_nmcli 补充


nmcli 的功能和作用

nmcli 允许用户执行以下常见的网络管理任务:

  • 配置有线和无线网络
  • 查看网络接口和连接的状态
  • 启动、停止、重新连接网络
  • 设置静态或动态 IP 地址
  • 管理 VPN 连接
  • 配置网络的代理设置等

nmcli 通常在需要通过命令行进行网络管理时非常有用,尤其是在没有图形界面的服务器环境中。

基本语法:nmcli [选项] <命令> [参数]


常用命令和用法


1.查看当前网络连接的状态,包括接口、IP 地址等信息

nmcli device status

示例输出:

DEVICE  TYPE      STATE         CONNECTION 
ens33   ethernet  已连接        	ens33      
lo      loopback  连接(外部)	    lo 

2.查看所有连接

列出所有网络连接(包括有线、无线、VPN 等):

nmcli connection show

示例输出:

NAME   UUID                                  TYPE      DEVICE 
ens33  2c1fb13d-391d-4add-9919-7cebb1f76782  ethernet  ens33  
lo     4b7c1923-16d8-4f53-90f0-e17b9a6519e0  loopback  lo 

3.激活网络连接

激活特定的网络连接(例如连接到一个 Wi-Fi 网络):

nmcli connection up <连接名称>

例如,连接到 ens33

nmcli connection up ens33

4.停用网络连接

停止一个网络连接(断开 Wi-Fi、以太网等):

nmcli connection down <连接名称>

例如,断开 ens33

nmcli connection down ens33

5.配置无线网络

连接到一个无线网络:

nmcli device wifi connect <SSID> password <密码>

示例:

nmcli device wifi connect MyNetwork password MyPassword

6.配置静态 IP 地址

设置静态 IP 地址:

nmcli connection modify <连接名称> ipv4.addresses <IP地址>/<子网掩码> ipv4.method manual
nmcli connection up <连接名称>

示例:

nmcli connection modify Wired connection 1 ipv4.addresses 192.168.1.100/24 ipv4.method manual
nmcli connection up Wired connection 1

7.配置 DNS 服务器

设置 DNS 服务器:

nmcli connection modify <连接名称> ipv4.dns "8.8.8.8 8.8.4.4"
nmcli connection up <连接名称>

8.查看当前活动的 IP 地址

nmcli device show

这将显示设备的详细信息,包括当前的 IP 地址。


9.查看设备的详细信息

显示特定设备的详细信息(如网络接口 eth0wlan0):

nmcli device show <设备名称>

示例:

nmcli device show ens33

10.断开 Wi-Fi 连接

nmcli device disconnect wlan0

nmcli 选项和常见子命令说明
device管理网络设备(如启用/禁用设备、查看设备状态等)。
connection管理网络连接(如激活、停用、修改连接等)。
general显示系统网络管理的基本信息(如版本、状态等)。
wifi用于管理无线网络连接,扫描、连接等。
monitor实时监控网络状态、连接和设备事件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/484511.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++趣味编程玩转物联网:基于树莓派Pico控制无源蜂鸣器-实现音符与旋律的结合

无源蜂鸣器是一种多功能的声音输出设备,与有源蜂鸣器相比,它能够通过不同频率的方波生成丰富多样的音调。本项目使用树莓派Pico开发板,通过编程控制无源蜂鸣器播放经典旋律《归来有风》。本文将详细介绍项目实现中的硬件连接、C++代码解析,以及无源蜂鸣器的工作原理。 一、…

【AI模型对比】Kimi与ChatGPT的差距:真实对比它们在六大题型中的全面表现!

文章目录 Moss前沿AI语义理解文学知识数学计算天文学知识物理学知识英语阅读理解详细对比列表总结与建议 Moss前沿AI 【OpenAI】获取OpenAI API Key的多种方式全攻略&#xff1a;从入门到精通&#xff0c;再到详解教程&#xff01;&#xff01; 【VScode】VSCode中的智能AI-G…

Runway 技术浅析(六):文本到视频(Text-to-Video)

1. 核心组件与工作原理 1.1 自然语言处理&#xff08;NLP&#xff09; 1.1.1 文本解析与语义理解 文本到视频的第一步是将用户输入的自然语言文本解析为机器可理解的语义信息。Runway 使用预训练的 NLP 模型&#xff0c;如 GPT-3 和 BERT&#xff0c;这些模型通过大规模文本数…

【C++】双温度转换与并联电阻计算的编程题分析与优化

博客主页&#xff1a; [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 &#x1f4af;前言&#x1f4af;从华氏温度到摄氏温度的转换题目背景与华氏温度与摄氏温度的转换初始代码与验证通过的解法代码分析特点与优缺点 老师的代码&#xff1a;结合 C 与 C 的风格代码分析与对比…

【采样率、采样定理、同步和异步采样】

内容来源&#xff1a;【数据采集卡的【采样率】【采样定理】【同步采样】【异步采样】的相关说明】 此篇文章仅作笔记分享。 前言 模拟信号需要通过采样、储存、量化、编码这几个步骤转换成数字信号&#xff0c;本篇文章将会对采样进行一个更详细的说明。 采样 采样就是将一…

笔记本电脑usb接口没反应怎么办?原因及解决方法

笔记本电脑的USB接口是我们日常使用中非常频繁的一个功能&#xff0c;无论是数据传输、充电还是外接设备&#xff0c;都离不开它。然而&#xff0c;当USB接口突然没有反应时&#xff0c;这无疑会给我们的工作和学习带来不小的困扰。下面&#xff0c;我们就来探讨一下笔记本USB接…

linux运维之shell编程

Shell 编程在系统运维中及其重要 1. Shell 编程概述 Shell 是一种命令行解释器&#xff0c;能够执行操作系统的命令。Shell 脚本是一个包含一系列 Shell 命令的文件&#xff0c;它可以被执行&#xff0c;以自动化和批量处理任务。常用的 Shell 类型包括 bash、sh、zsh 等。Shel…

怎么自己创建一个网站? 开发语言首选 java,使用CMS网站内容管理系统是不错的选择

怎么自己创建一个网站 推荐使用 Java CMS 网站内容管理系统&#xff0c;根据网站规划的功能模块&#xff0c;创建不同的页面风格&#xff1b; 文章目录 怎么自己创建一个网站一、规划网站1.1确定网站主题和目的1.2规划网站结构和内容 二、注册域名2.1选择域名注册商2.2 查找并…

小米澎湃OS2跟蜂窝网络相关的设置和调试【功能设计】

界面功能 开发者模式下&#xff0c;支持数据和WLAN网络相关的设置&#xff0c;跟数据有关的主要如下&#xff1a; 蜂窝网络调试 > 5G-A 特性中心始终开启移动数据网络&#xff08;便于WiFi和数据快速切换&#xff0c;在国外北美运营商有些需求中明确定义要开着&#xff09…

八、Python —— 类、异常处理、模块、包的管理、虚拟环境

文章目录 一、类1.1、类的定义1.2、类变量和实例变量1.3、类的继承 二、异常处理三、模块 和 包3.1、模块和包的概念&#xff0c;以及项目的树形结构3.2、模块和包的使用 (from import)方法一&#xff1a;from 模块 import 变量/函数/类方式二&#xff1a;from 模块 import 变量…

【text2sql】低资源场景下Text2SQL方法

SFT使模型能够遵循输入指令并根据预定义模板进行思考和响应。如上图&#xff0c;、 和 是用于通知模型在推理过程中响应角色的角色标签。 后面的内容表示模型需要遵循的指令&#xff0c;而 后面的内容传达了当前用户对模型的需求。 后面的内容代表模型的预期输出&#xff0c;也…

自适应神经网络架构:原理解析与代码示例

个人主页&#xff1a;chian-ocean 文章专栏 自适应神经网络结构&#xff1a;深入探讨与代码实现 1. 引言 随着深度学习的不断发展&#xff0c;传统神经网络模型在处理复杂任务时的局限性逐渐显现。固定的网络结构和参数对于动态变化的环境和多样化的数据往往难以适应&#…

挑战用React封装100个组件【004】

项目地址 https://github.com/hismeyy/react-component-100 组件描述 组件适用于展示图片的地方&#xff0c;提供了small&#xff0c;medium&#xff0c;large三种大小。可以删除图片&#xff0c;也可以全屏预览图片。 样式展示 前置依赖 今天我们的这个挑战需要用用到了…

基于MobileNet深度学习网络的MQAM调制类型识别matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) 2.算法运行软件版本 matlab2022a 3.部分核心程序 &#xff08;完整版代码包含详细中文注释和操作步骤视频&#xff09…

如何使用apache部署若依前后端分离项目

本章教程介绍,如何在apache上部署若依前后端分离项目 一、教程说明 本章教程,不介绍如何启动后端以及安装数据库等步骤,着重介绍apache的反向代理如何配置。 参考此教程,默认你已经完成了若依后端服务的启动步骤。 前端打包命令使用以下命令进行打包之后会生成一个dist目录…

标贝科技受邀出席2024东湖国际人工智能高峰论坛并入选数据要素合作伙伴名单

近日&#xff0c;备受瞩目的2024东湖国际人工智能高峰论坛在中国光谷科技会展中心隆重召开。会议以“智联世界&#xff0c;共创未来”为主题&#xff0c;省市相关单位、专家学者、产学研各界百余家联合体单位齐聚一堂&#xff0c;共话人工智能领域的最新技术及产业发展趋势。会…

QGIS Python插件开发环境搭建--QGIS3.34.11+PyCharm

QGIS Python插件开发环境搭建--QGIS3.34.11PyCharm 安装QGIS启动QGIS并设置为中文启动QGIS Python插件开发中用到的插件安装PyCharm社区版使用Plugin Builder 3生成插件模板加载插件打开QGIS插件路径将自己的插件拷贝到QGIS的python插件路径 使用PyCharm打开插件代码配置Python…

On-Chip-Network之router微架构的物理实现

Low-Power Microarchitecture 自20世纪90年代以来&#xff0c;功耗一直是嵌入式芯片和高性能芯片面临的一个挑战。自2000年代中期以来&#xff0c;它已经成为大多数设计的主要约束。多核解决了功耗问题&#xff0c;由此产生的communication substrate&#xff0c;namely the on…

java 21 多线程

1.相关概念 进程: 进程是指运行中的程序&#xff0c;比如我们使用QQ&#xff0c;就启动了一个进程&#xff0c;操作系统就会为该进程分配内存空间。当我们使用迅雷&#xff0c;又启动了一个进程&#xff0c;操作系统将为迅雷配新的内存空间。 进程是程序的一次执行过程&#…

Envoy-istio

最近研究envoy-istio&#xff0c;发现这个博客&#xff0c;觉得很不错&#xff0c;这里记录一下 envoy-istio介绍 envoy-istio - 随笔分类 - yaowx - 博客园 envoy部分七&#xff1a;envoy的http流量管理基础 envoy部分六&#xff1a;envoy的集群管理 envoy部分五&#xff…