在现代网络环境中,VLAN(Virtual Local Area Network,虚拟局域网)是一种非常实用的技术。它允许你在物理网络基础上创建多个逻辑隔离的网络,从而提升安全性、简化管理并优化带宽使用。本文将从零开始,手把手教你如何在 Linux 系统中配置 VLAN。
什么是 VLAN?
VLAN 是一种将一个物理局域网划分为多个逻辑子网的技术。每个 VLAN 就像一个独立的局域网,即使设备连接在同一个交换机上,不同 VLAN 之间的通信也必须通过路由器或三层交换机。
准备工作
在开始配置之前,请确保你具备以下条件:
- 一台运行 Linux 的计算机(推荐 Ubuntu/CentOS)
- 具有 root 或 sudo 权限
- 网络接口支持 802.1Q VLAN 标准(几乎所有现代网卡都支持)
- 已安装
vlan工具包
安装 VLAN 支持工具
在大多数 Linux 发行版中,你需要先安装 vconfig 工具(旧方法)或使用 iproute2 中的 ip link 命令(推荐新方法)。我们以 Ubuntu/Debian 为例:
sudo apt updatesudo apt install vlan 对于 CentOS/RHEL 系统,使用以下命令:
sudo yum install -y vlan 加载 8021q 内核模块
VLAN 功能依赖于 Linux 内核的 8021q 模块。你可以通过以下命令加载它:
sudo modprobe 8021q 为了确保系统重启后自动加载该模块,可以将其添加到 /etc/modules-load.d/vlan.conf 文件中:
echo "8021q" | sudo tee /etc/modules-load.d/vlan.conf 创建 VLAN 接口
假设你的物理网卡是 eth0,你想创建一个 VLAN ID 为 10 的虚拟接口。使用 ip 命令(推荐方式):
sudo ip link add link eth0 name eth0.10 type vlan id 10 这条命令会在 eth0 上创建一个名为 eth0.10 的 VLAN 接口,VLAN ID 为 10。
配置 IP 地址并启用接口
接下来,为 VLAN 接口分配 IP 地址并激活它:
sudo ip addr add 192.168.10.100/24 dev eth0.10sudo ip link set dev eth0.10 up 现在,你可以使用 ip addr show 查看新创建的 VLAN 接口是否已激活。
验证 VLAN 配置
使用以下命令查看所有 VLAN 接口:
ip -d link show type vlan 你也可以使用 vlan 工具包中的 vconfig 命令(虽然已过时,但某些老系统仍在用):
sudo vconfig add eth0 10 持久化 VLAN 配置
上述配置在系统重启后会丢失。为了让配置永久生效,需要编辑网络配置文件。
Ubuntu/Debian(使用 Netplan):
编辑 /etc/netplan/01-netcfg.yaml(文件名可能不同):
network: version: 2 ethernets: eth0: dhcp4: no vlans: eth0.10: id: 10 link: eth0 addresses: [192.168.10.100/24] 然后应用配置:
sudo netplan apply CentOS/RHEL(使用传统 network-scripts):
创建 VLAN 配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0.10:
DEVICE=eth0.10BOOTPROTO=staticIPADDR=192.168.10.100NETMASK=255.255.255.0ONBOOT=yesVLAN=yes 然后重启网络服务:
sudo systemctl restart network 常见问题与排查
- 无法 ping 通 VLAN 网络? 检查交换机端口是否配置为 trunk 模式,并允许对应 VLAN ID。
- 接口未激活? 确保物理接口(如 eth0)处于 up 状态。
- 内核不支持 VLAN? 使用
lsmod | grep 8021q检查模块是否加载。
总结
通过本教程,你应该已经掌握了在 Linux 系统中配置 VLAN 的基本方法。无论是临时测试还是生产环境部署,VLAN 都能有效提升网络的灵活性与安全性。记住,Linux VLAN配置、VLAN网络设置、虚拟局域网Linux 和 Linux网络隔离 是实现高效网络管理的关键技术。
希望这篇教程对你有帮助!如有疑问,欢迎在评论区留言交流。
