Ubuntu网络配置文件怎么改?,自定义VLAN怎么配置?

在Ubuntu Server上配置自定义VLAN网络,核心答案是:通过netplan的YAML配置文件声明VLAN虚拟子接口,指定物理网卡和VLAN ID,执行netplan apply后即可生效,全程无需重启系统。这套方法适用于Ubuntu 18.04到24.04全系列服务器版本,也是目前绝大多数生产环境采用的标准做法。

ubuntu server配置网络配置文件,先搞懂netplan的脾气

自Ubuntu 17.10起,netplan正式取代了老旧的/etc/network/interfaces,成为系统默认的网络配置管理工具,它的工作方式很简单:你只需要写好一份YAML格式的“愿望清单”,netplan负责把清单翻译成systemd-networkd或NetworkManager能理解的后端指令

Ubuntu网络配置
加载中
Ubuntu网络配置

netplan配置文件到底存放在哪里

所有netplan配置都集中在/etc/netplan/目录下,常见文件名包括01-netcfg.yaml50-cloud-init.yaml99-config.yaml,执行ls /etc/netplan/查看你机器上实际存在的文件,注意,Ubuntu云镜像默认由cloud-init管理网络,如果你手动改过配置后又执行了cloud-init clean,配置会被覆盖回来。

下面是一份最基础的静态IP配置,后续所有VLAN操作都建立在这个框架之上:

network:
  version: 2
  renderer: networkd
  ethernets:
    eno1:
      dhcp4: no
      addresses:
        - 192.168.1.10/24
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses: [223.5.5.5, 8.8.8.8]

renderer选networkd还是NetworkManager

服务器场景选networkd,桌面或需要图形化网络管理的场景选NetworkManagerrenderer参数直接决定netplan调用哪套后端,混用容易出奇怪问题,行业共识认为,生产服务器统一使用networkd更稳妥,资源占用也更小。

ubuntu配置自定义vlan网络的完整实操步骤

假设现有物理网卡eno1承载服务器管理流量,业务网段需要跑VLAN 100和VLAN 200,网关分别是0.100.10.200.1,下面每一步都直接抄作业即可。

确认物理网卡名称和VLAN信息

先查看当前网卡状态,确保物理链路正常:

ip -br link show

输出中能看到eno1ens3eth0之类的名称,记下来,同时向网络管理员确认:

Ubuntu网络配置文件怎么改?,自定义VLAN怎么配置?

交换机对接端口是否已配置为Trunk模式,并允许VLAN 100和VLAN 200通过,这一步漏掉,后面服务器侧配置再对也连不通。

基于独立VLAN块编写配置

写VLAN配置前,先说清楚一个重要技术背景:Linux自2.6.9内核起就支持VLAN子接口,而netplan提供两种声明VLAN的方式,一种是Ubuntu 22.04起推荐的独立VLAN块写法,另一种是沿用多年的子接口写法,两者效果等价,但独立VLAN块更规范。

对Ubuntu 22.04及以上版本,推荐这种写法:

network:
  version: 2
  renderer: networkd
  ethernets:
    eno1:
      dhcp4: no
  vlans:
    vlan100:
      id: 100
      link: eno1
      addresses:
        - 10.0.100.10/24
      routes:
        - to: default
          via: 10.0.100.1
    vlan200:
      id: 200
      link: eno1
      addresses:
        - 10.0.200.10/24

对ubuntu 20.04 vlan配置,采用传统子接口写法同样兼容:

network:
  version: 2
  renderer: networkd
  ethernets:
    eno1:
      dhcp4: no
    eno1.100:
      dhcp4: no
      addresses: [10.0.100.10/24]
    eno1.200:
      dhcp4: no
      addresses: [10.0.200.10/24]

注意两种写法不要混用,否则netplan会报重复配置错误,如果VLAN走DHCP,把addresses整行删掉,dhcp4改成yes即可,比如内网自动分配IP的场景。

应用配置并验证结果

执行配置前先用sudo netplan try做个预检,这条命令会先验证语法,有问题会自动回滚,有效避免配置文件写错导致SSH断连的尴尬,如果60秒内没按回车确认,配置也会自动还原。

确认无误后正式应用:

sudo netplan try
sudo netplan apply

验证VLAN接口是否成功创建:

ip -br addr show | grep vlan

看到vlan100vlan200都带上了对应的IP地址,说明配置生效,再ping一下各VLAN的网关,能通就大功告成,整个过程中eno1本身不用配IP,它只负责做物理通道。

ubuntu vlan配置命令排查思路:为什么配置对了却不通

这是后台运维群里出现频率最高的一类问题,配置看着没毛病,VLAN接口也起来了,但业务就是不通,排查顺序比技巧本身更重要。

Ubuntu网络配置文件怎么改?,自定义VLAN怎么配置?

先查交换机侧,别急着改服务器

约八成VLAN不通的案例,问题出在交换机而非服务器,确认交换机端口模式是Trunk而不是Access,确认Allowed VLAN列表里放行了对应ID,确认设备之间的MTU一致性,有条件的用tcpdump -i vlan100抓包看看有没有流量到达服务器网卡,没有抓到包就基本可以断定是物理侧链路问题。

检查netplan配置文件里的隐藏坑

  • 缩进必须用两个空格,YAML对Tab和缩进零容忍,而且netplan的报错信息对新手并不友好。
  • id字段是整数,不要加引号,id: "100"在某些版本会直接报类型错误。
  • 独立VLAN块名称不能叫vlan0id范围必须是1到4094,0和4095为保留值不可用。
  • 子接口写法eno1.100和独立VLAN块写法不能出现在同一份配置文件中。
  • 如果rendererNetworkManager,有些版本需要额外安装vlan插件包才能识别VLAN配置,服务器版默认networkd反而没这个问题。

多网卡服务器上的特殊场景

双网卡甚至四网卡服务器做VLAN聚合时,建议在每个VLAN块中显式声明link参数指向具体物理网卡,比如link: eno2,不要依赖netplan的自动匹配,否则系统重启后网卡名称顺序发生变化,VLAN会绑到错误的物理口上,这种故障极其隐蔽。

netplan和NetworkManager与传统ifupdown对比,VLAN配置方式怎么选

老运维可能习惯改/etc/network/interfaces,但Ubuntu各版本对它的支持已经基本停止,只在兼容模式下存在,对比如下:

配置工具 配置位置 VLAN支持方式 热加载 适合场景
netplan /etc/netplan/.yaml 独立VLAN块或子接口 netplan apply即时生效 所有Ubuntu Server
NetworkManager

Ubuntu网络配置文件怎么改?,自定义VLAN怎么配置?

/etc/NetworkManager

通过nmtui或nmcli即时生效桌面版或动态网络
ifupdown/etc/network/interfaces子接口需重启networking服务老版本迁移

对于追求稳定性和可脚本化的服务器环境,netplan毫无疑问是最优选,它用一份YAML描述整机网络拓扑,配合Git做版本管理,比手工敲命令改配置更透明可回溯,如果只是临时测试VLAN连通性,不走netplan也可以,用ip link add link eno1 name vlan100 type vlan id 100 && ip addr add 10.0.100.10/24 dev vlan100快速建立,测试完用ip link del vlan100删掉,对系统零残留。

Q&A:ubuntu配置vlan的常见疑问解答

netplan配置了VLAN并执行apply,重启服务器后配置丢了是什么原因?

配置文件本身没有被持久化,检查/etc/netplan/下是否存在同名冲突文件,多份YAML文件同时存在时,netplan按文件名顺序合并,后加载的配置如果层级相同会覆盖前面的,另外确认文件权限,netplan要求配置文件权限不能高于600,执行sudo chmod 600 /etc/netplan/.yaml可修复。

在同一张物理网卡上配置多个VLAN,如何平衡多个子网的流量?

多个VLAN共用同一物理网卡,在Linux内部通过802.1Q标签天然隔离,互不干扰,你需要做的只是确保每个VLAN块都有独立的IP地址、独立路由表条目,如果不同VLAN需要访问彼此,添加对应路由规则即可,但默认网关只能有一个,多VLAN环境下通常只在核心业务VLAN中声明默认网关。对这类场景,建议在VLAN配置中显式为每个子接口指定独立路由表,并配合策略路由实现精细转发。

临时创建的VLAN接口,重启后会自动消失吗?

会,通过ip link add命令手动创建的VLAN接口属于内核级临时对象,重启后Linux内核重新加载,未写入任何配置文件的接口全部清空,系统回到只有物理网卡的状态,这正是临时测试用ip link add、正式使用则写入netplan的意义所在。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/584564.html

(0)
服务器SR550如何配置RAID5?,安装环境步骤是什么?
上一篇 2026年8月20日 02:05
QQ电脑文件连接到服务器失败怎么解决,原因是什么
下一篇 2026年8月20日 02:07

相关推荐

  • 公司安装服务器怎么配置?服务器配置参数详解

    公司安装服务器配置在数字化转型的浪潮中,服务器作为企业数据资产的核心载体,其稳定性、安全性与扩展性直接决定了业务的连续性,对于中小企业及初创团队而言,如何在预算可控的前提下,构建一套高性能、高可用的服务器架构,是IT决策者面临的首要难题,本文将从硬件选型、系统优化、安全加固及成本效益四个维度,对2026年主流的……

    2026年6月29日
    1510
  • K8s流量镜像Mirror怎么用?k8s镜像流量镜像配置方法

    K8s流量镜像Mirror:企业级高可用架构下的流量无损复制与测试实战测评在现代微服务架构中,Kubernetes(K8s)已成为容器编排的事实标准,随着业务复杂度的指数级上升,如何在生产环境中安全地进行新功能验证、性能压测以及故障演练,成为了DevOps团队面临的巨大挑战,传统的测试环境往往因数据隔离和流量差……

    2026年7月10日
    8300
  • 图像增强补丁为何失效?图像增强补丁怎么解决

    关于图像增强补丁问题在AI视觉处理、云计算渲染以及大规模数据中心的日常运维中,图像增强技术已成为提升业务效率的关键环节,随着模型复杂度的提升,许多服务器在部署图像增强补丁或相关算法库时,频繁遭遇性能瓶颈、兼容性冲突甚至系统崩溃,本文将基于真实的服务器硬件环境测试,深入剖析图像增强补丁在实际应用中的痛点,并提供专……

    2026年5月30日
    4700
  • usb开发工具哪个好用?推荐几款主流USB调试软件

    高效的USB开发工具组合是确保项目从协议分析到底层驱动调试顺利推进的核心驱动力,选择经过市场验证的专业工具,能将开发周期缩短30%以上,并显著降低硬件兼容性风险,在嵌入式开发与驱动调试领域,工具的选择直接决定了产品的稳定性与上市速度,开发者应构建包含协议分析仪、集成开发环境、专用测试仪器的完整工具链,以应对复杂……

    2026年3月24日
    10000
  • asp外文文献有哪些?asp外文文献翻译

    关于asp的外文文献在探讨基于ASP(Active Server Pages)技术构建的动态网站时,服务器环境的稳定性、安全性以及执行效率是决定应用成败的核心要素,尽管现代Web开发已逐渐向.NET Core或Node.js等跨平台技术迁移,但在大量遗留系统维护及特定企业级应用中,经典的ASP技术栈依然占据重要……

    2026年6月16日
    2010
  • spinserversVPS测评,美国89美元/月性能如何?美国高配VPS哪家好

    在服务器租用领域,高性价比与大带宽始终是开发者与企业用户的核心诉求,Spinservers作为美国MC机房旗下的高端品牌,凭借直连网络与硬件优势,在独立服务器及VPS市场占据重要地位,本次测评针对Spinservers美国机房一款月付89美元的VPS方案,通过底层硬件、计算性能、网络质量及磁盘IO等多维度的实测……

    2026年4月29日
    7700
  • UG外挂开发合法吗?新手如何快速上手?,UG外挂怎么开发

    UG外挂开发实战指南:解锁高效设计自动化核心结论:UG外挂开发通过NXOpen API实现设计流程自动化,显著提升建模效率与标准化程度,核心技术包含环境搭建、API交互、功能逻辑实现及调试部署,开发环境与工具链配置基础环境安装匹配版本的Siemens NX(推荐NX 1847+)Visual Studio(C……

    程序开发 2026年2月16日
    24100
  • 服务器托管与租用哪个更适合企业,怎么选

    对于大多数中小型企业和个人站长,服务器租用更容易上手且成本可控;而服务器托管适合有技术团队、需要完全掌控硬件的用户,服务器托管与租用:核心区别与适用场景什么是服务器托管你买好硬件设备,放到专业机房,借助机房的带宽、电力、恒温环境和安防体系来运行,机房提供IP、机柜空间、电力接入和基础运维,日常系统维护、硬件故障……

    2026年7月21日
    700
  • Java转RGBA如何设置高级页面路由与视图组件?,怎么设置

    在Java Web开发中,将后端的颜色对象转换为RGBA字符串并动态传递给前端路由视图组件,是实现个性化主题和高效页面导航的关键,通过合理配置路由导航和视图组件属性,可以大幅提升应用的可维护性和用户体验,Java颜色转换RGBA的完整指南在前后端分离项目中,后端Java生成的颜色数据需要转换为前端能识别的RGB……

    2026年8月4日
    400
  • OSGI框架如何开发Web应用,模块化Web应用开发

    OSGi开发Web应用:模块化架构的实战指南OSGi的核心价值在于其强大的模块化与动态部署能力,彻底改变了传统Java Web应用开发模式,它允许开发者构建高度解耦、可独立更新、运行时动态管理的Web应用系统, OSGi基石:理解核心要素Bundle:OSGi应用的基本模块单元,包含代码、资源和元数据(MANI……

    2026年2月15日
    19140

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注