Linux 网络配置 (深入理解)

前言

前期我比较迷惑Ubuntu 的网络配置。

我接触比较多的 Linux 发行版都是 Ubuntu ,我按照网上的一些教程配置网络发现,没有相关网络配置文件夹。然后我发现不是我的问题而是不同版本的配置方式和工具是不一样的。然后有些配置已经弃用了。

常见的网络配置工具和变化

  • Netplan:

    从 Ubuntu 17.10 开始,Ubuntu 引入了 Netplan 来简化网络配置。它使用 YAML 格式的配置文件,位于

    /etc/netplan/ 目录。如果你的系统是较旧的版本,可能没有 Netplan,而是使用了其他工具。

  • ifupdown:

    在 Ubuntu 16.04 及之前的版本中,传统的网络配置通常使用 /etc/network/interfaces

    文件来管理。该方法已经逐渐被 Netplan 替代,但在某些情况下仍然可以使用。

  • NetworkManager:

    这个工具在桌面版 Ubuntu 中被广泛使用,允许图形界面和命令行管理网络连接。在 Ubuntu Server 版本中,通常会使用systemd-networkd 或 Netplan。

  • systemd-networkd:

    这是一个轻量级的系统服务,用于管理网络配置,通常在服务器或不需要图形界面的系统中使用。

    所以一般版本不是太老都是用的

Netplan

Netplan 如下图所示

Netplan 启动时处理:在系统启动的早期阶段,Netplan 会读取这些 YAML配置文件,并生成后端特定的配置文件,这些文件通常位于 /run/ 目录下。

后端选择:Netplan 支持两种主要的后端渲染器:

  • NetworkManager:适用于桌面环境,支持动态网络管理。
  • systemd-networkd:更轻量,适合服务器环境,提供高效的网络管理

所以一般来说只要你的Ubuntu 版本不是太老,都是用的Netplan 。选的NetworkManager作为后端实际执行的配置。

查看现在正在运行的网络管理工具

多个网络管理工具会影响我们配置网络,拿到机器肯定先要确认现在有哪些网络管理工具在运行。这里使用 sys­tem­ctl 查看网络管理工具的运行状况。

bash 复制代码
systemctl list-unit-files | grep -i network

根据输出,NetworkManager 是你系统中启用的网络管理服务。以下是确认的依据:

  • NetworkManager.service 显示为 enabled,这表明 NetworkManager 正在运行并负责管理网络连接。
  • systemd-networkd.service 显示为 disabled,这意味着 systemd-networkd 没有被启用。
相关推荐
折哥的程序人生 · 物流技术专研19 小时前
Java面试85题图解版 · 特别篇:2026后端高频面试题复盘(算法底层逻辑+高并发架构设计全解析,附Java实战代码)
java·网络·数据库·算法·面试
c2385619 小时前
Linux C++ 进度条进阶美化与工程化封装
linux·运维·服务器
专注VB编程开发20年19 小时前
c#Modbus上位机开发-一次读10个地址和100个地址速度一样
网络·网络协议·tcp/ip
2401_8346369920 小时前
Nginx 从入门到实战:静态 / 动态站点、PHP 部署与反向代理全解析
运维·nginx·php
凡人叶枫1 天前
Effective C++ 条款17:以独立语句将 newed 对象置入智能指针
java·linux·开发语言·c++·算法
RisunJan1 天前
Linux命令-pgrep (通过进程名查找进程 ID)
linux·运维
2601_961963381 天前
技术解剖:哈希值、区块链与CA认证如何守护电子合同安全?
网络·人工智能·安全·区块链·智能合约·政务
2601_961963381 天前
从“电子化”到“自动化”:2026年智能合约与电子合同融合的技术逻辑与法律适配
网络·人工智能·区块链·智能合约·政务
信创工程师-小杨1 天前
Linux内网环境如何解决依赖的问题
linux·运维·服务器
设计师小聂!1 天前
宝塔 Linux 面板保姆级教程
linux·mysql·开源·运维开发