当前位置: 首页 > news >正文

Linux系统的网络管理(一)

一、网络参数配置:搭建稳定网络基础

网络参数配置是 Linux 网络管理的起点,根据操作方式可分为图形化配置、命令行配置和配置文件配置,不同方式适用于不同场景(临时调试 / 永久生效)。

1. 图形化配置:依赖 NetworkManager 服务

NetworkManager 是 Linux 系统中主流的图形化网络管理工具,但不同系统版本对其依赖不同:

  • Linux 7 系统:建议停止该服务,避免与其他配置方式冲突;
  • Linux 8 及以上系统:统一由 NetworkManager 管理网络,无需手动关闭。

2. 命令行配置:灵活调试临时生效

命令行配置适用于临时调整网络参数(重启网络 / 主机后失效),核心工具包括ifconfigifup/ifdownip address

2.1 ifconfig:经典网卡配置工具

  • 功能:查看 / 修改网卡参数(如 IP 地址),但无法查看未启用网卡及配置文件中的多 IP。
  • 权限:root 用户可修改参数,普通用户仅能查看。
选项作用案例
-a查看所有网卡(含未启用)ifconfig -a
up启用网卡(不读配置文件)ifconfig ens33 up
down停用网卡ifconfig ens33 down
直接配置 IP临时设置网卡 IPifconfig ens33 192.168.115.136/24

2.2 ifup/ifdown:基于配置文件的启停

ifconfig up/down的核心区别是:会读取网卡配置文件,适用于基于配置文件的参数加载。

# 启用网卡并加载配置
ifup ens33
# 停用网卡
ifdown ens33# 子接口配置(单网卡多IP临时方案)
ifconfig ens33:0 192.168.115.214/24
# 子接口永久配置(复制配置文件修改)
cd /etc/sysconfig/network-scripts
cp ifcfg-ens33 ifcfg-ens33:0
# 编辑子接口文件:修改NAME、DEVICE、IPADDR等参数
vim ifcfg-ens33:0
# 重启子接口生效
ifdown ens33:0 && ifup ens33:0

2.3 ip address:现代网络参数查看工具

ip a(缩写)是ifconfig的替代工具,功能更全面:

  • 可查看未启用网卡;
  • 支持查看配置文件中的多 IP 配置;
  • 语法简洁:ip a(直接查看所有网卡参数)。

3. 配置文件配置:永久生效的核心方式

通过修改网卡配置文件(路径:/etc/sysconfig/network-scripts/ifcfg-网卡名),可实现网络参数的永久生效,需重启网卡或网络服务加载配置。

3.1 单一 IP 地址配置

分为 DHCP 自动获取和静态手动配置两种模式:

配置项含义DHCP 模式静态模式
TYPE网卡类型EthernetEthernet
BOOTPROTOIP 获取方式dhcpstatic
NAME网卡描述(可选)ens33ens33
DEVICE网卡设备名(必对)ens33ens33
ONBOOT是否启用配置yesyes
IPADDRIP 地址(静态需填)-192.168.115.150
PREFIX/NETMASK子网掩码-PREFIX=24 或 NETMASK=255.255.255.0
GATEWAY默认网关(建议单网关)-192.168.115.2
DNS1DNS 服务器(多网卡慎填)-192.168.115.2

3.2 多 IP 地址配置

在单一配置文件中通过IPADDR1/PREFIX1IPADDR2/PREFIX2实现多 IP:

vim /etc/sysconfig/network-scripts/ifcfg-ens33
# 核心配置(新增部分)
IPADDR1=192.168.115.150
PREFIX1=24
IPADDR2=192.168.115.151
PREFIX2=24
DNS2=192.168.115.3
# 加载配置生效
systemctl restart network 或 ifdown ens33 && ifup ens33

3.3 配置验证命令

# 验证IP地址
ifconfig 或 ip a
# 验证网关
route -n
# 验证DNS
cat /etc/resolv.conf

二、nmcli 命令详解

1. 概述

nmcli 是 NetworkManager 的命令行工具,用于配置和管理网络连接。使用前需确保 NetworkManager 服务正常运行,且避免与 ip addr 等命令冲突。

2. 基本格式

nmcli [OPTIONS] OBJECT { COMMAND | help }

  • OPTIONS:控制输出格式(如 -t 简洁模式、-f 指定字段)
  • OBJECT:操作对象(如 generaldeviceconnection
  • COMMAND:具体操作(如 statusupdown

3. 常用系统指令

NetworkManager 服务管理命令:

# 查看状态
systemctl status NetworkManager# 启动/重启/停止
systemctl start/restart/stop NetworkManager# 开机启动配置
systemctl enable/disable NetworkManager

4. 核心操作对象

(1)networking(网络状态)

查看和控制整体网络连接状态:

nmcli networking         # 查看是否接管网络
nmcli n connectivity     # 检查连接状态(full/limited/portal/none/unknown)
nmcli n on/off           # 开启/关闭网络
(2)general(系统状态)

查看系统网络概览和主机名设置:

nmcli general status     # 显示系统网络状态
nmcli g hostname         # 查看主机名
nmcli g h newHostName    # 修改主机名(需重启服务)
(3)connection(连接配置)

管理网络连接配置(可简写为 c):

# 查看连接
nmcli c show             # 所有连接
nmcli c s -a             # 仅活动连接# 控制连接
nmcli c up ens33         # 启动连接
nmcli c down ens33       # 关闭连接
nmcli c delete ens33     # 删除连接# 修改连接(静态IP配置示例)
nmcli c m ens33 ipv4.address 192.168.80.10/24
nmcli c m ens33 ipv4.gateway 192.168.80.2
nmcli c m ens33 ipv4.dns 8.8.8.8
nmcli c m ens33 ipv4.method manual  # 设为静态模式# 新增连接
nmcli c a type ethernet con-name ens36 ifname ens36 \ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 \ipv4.dns "8.8.8.8 8.8.4.4" ipv4.method manual
(4)device(网络设备)

管理物理网络设备(可简写为 d):

nmcli d status           # 查看设备状态
nmcli d connect ens33    # 连接设备
nmcli d disconnect ens33 # 断开设备
nmcli d wifi list        # 查看附近WiFi
nmcli d wifi connect "SSID" password "密码"  # 连接WiFi

三、网络配置方法

方法一:修改 keyfile 配置文件

Rocky9 配置文件位于 /etc/NetworkManager/system-connections/,格式为 keyfile:

  1. 编辑对应接口文件(如 ens33.nmconnection
  2. 配置核心字段:
    (connection)
    id=ens33
    uuid=1c0d8661-d96c-3ecd-8578-eba771cadac4
    type=ethernet
    autoconnect-priority=-999
    interface-name=ens33(ipv4)
    method=manual
    address=192.168.1.3/24,192.168.1.1
    netmask=255.255.255.0
    gateway=192.168.1.1
    dns=8.8.8.8;114.114.114.114
    route1=10.1.0.0/16,192.168.1.1
    route2=10.2.0.0/16,192.168.1.1

  3. 加载并激活:
    nmcli c load /etc/NetworkManager/system-connections/ens33.nmconnection
    nmcli c up ens33

配置字段解析:

  • id:用于标识该网络连接的名称,可自定义,方便用户识别和管理不同的网络连接,通常与网络接口名称相关.

  • uuid:通用唯一识别码,由系统自动生成,用于在NetworkManager中唯一标识该网络连接配置,一般无需手动修改.

  • type:指定网络连接的类型,常见的值有“ethernet”表示以太网连接,“wifi”表示无线网络连接等,根据实际网络设备和连接方式进行选择.

  • autoconnect-priority:设置网络连接的自动连接优先级,数值越小优先级越高,-999表示较低的优先级。可根据需要调整该值来确定多个网络连接的顺序,以便在系统启动时优先连接重要的网络.

  • interface-name:必须与实际的网络接口设备名称一致,用于将网络连接配置与对应的物理网络接口关联起来,如“ens33”等.

  • method:获取IP地址的方式,常见的值有“auto”表示自动获取IP地址,通常通过DHCP等方式从网络中的DHCP服务器获取IP地址、子网掩码、网关等网络配置信息;“manual”表示手动配置静态IP地址,需要手动指定IP地址、子网掩码、网关和DNS等信息.

  • address:当method为manual时,用于指定静态IP地址和子网掩码,格式为“IP地址/子网掩码长度”,还可以在后面添加网关地址,用逗号分隔,如“192.168.1.10/24,192.168.1.1”.

  • netmask:子网掩码,也可以在address参数中统一配置,若单独配置则需按照子网掩码的格式填写,如“255.255.255.0”.

  • gateway:网关地址,用于指定网络数据包的转发地址,需与所在网络环境的网关配置一致.

  • dns:指定DNS服务器地址,多个DNS服务器之间用分号分隔,如“8.8.8.8;114.114.114.114”.

  • route:可用于添加静态路由,格式为“网段,网关”,可以添加多条route来配置多个静态路由,例如“route1=10.1.0.0/16,192.168.1.2 route2=10.2.0.0/16,192.168.1.2”.

http://www.dtcms.com/a/349521.html

相关文章:

  • 血缘元数据采集开放标准:OpenLineage Integrations Apache Spark Main Concepts Installation
  • 05 开发环境和远程仓库Gitlab准备
  • 【spring进阶】spring应用内方法调用时长统计
  • 【数据结构】串——(一)
  • 36 NoSQL 注入
  • Docker 部署 GitLab 并开启 SSH 使用详解
  • 【Java后端】Java 多线程:从原理到实战,再到高频面试题
  • Claude Code 使用及配置智能体
  • 【科研绘图系列】R语言绘制代谢物与临床表型相关性的森林图
  • 从零到一:现代化充电桩App的React前端参考
  • 将FGUI的Shader全部预热后,WebGL平台没有加载成功
  • 基于MalConv的恶意软件检测系统设计与实现
  • 大模型 transformer 步骤
  • 《拉康精神分析学中的欲望辩证法:能指的拓扑学与主体的解构性重构》
  • 计算机大数据技术不会?医院体检数据可视化分析系统Django+Vue全栈方案
  • 不止效率工具:AI 在文化创作中如何重构 “灵感逻辑”?
  • 【DFS 或 BFS 或拓扑排序 - LeetCode】329. 矩阵中的最长递增路径
  • 【图像算法 - 23】工业应用:基于深度学习YOLO12与OpenCV的仪器仪表智能识别系统
  • 基于视觉的果园无人机导航:一种基于干预模仿学习与VAE控制器的真实世界验证
  • 机器人中的李代数是什么
  • 抖音多账号运营新范式:巨推AI如何解锁流量矩阵的商业密码
  • 量子计算驱动的Python医疗诊断编程前沿展望(下)
  • 数据结构:单向链表的逆置;双向循环链表;栈,输出栈,销毁栈;顺序表和链表的区别和优缺点;0825
  • 平安产险青海分公司启动2025年“乡风文明100行动” 首站落地海东市乐都区土官沟村
  • 【C++详解】哈希表概念与实现 开放定址法和链地址法、处理哈希冲突、哈希函数介绍
  • Redis缓存雪崩缓存击穿缓存穿透的处理方式
  • [React]Antd Upload组件上传多个文件
  • 阿里云安装postgre数据库
  • Vim 的 :term命令:终端集成的终极指南
  • 中介者模式及优化