如何在 Ubuntu 16.04 上标记 VLAN?

如何在 Ubuntu 16.04 上标记 VLAN?

如何通过 16.04 上的 LAN 接口标记 VLAN?我已经在 Mikrotik 路由器上创建了一个 VLAN 作为测试。为该 VLAN 分配了一个 IP,将该 VLAN 添加到一个端口,在地址列表中为该 VLAN 添加了一个 IP 地址。现在尝试从运行 Ubuntu 16.04 的笔记本电脑 ping 该 VLAN,但不太确定如何执行此操作?

有人能帮忙吗?非常感谢。谢谢

答案1

这就是我在机器上使用 VLAN 的方式。在我的情形下,我只需要在管理特定机器时访问 VLAN,因此默认情况下,网络接口以未标记的方式运行(即没有 VLAN 配置)。

我编写了一个小脚本,它可以创建在指定 VLAN 上运行的辅助接口:

#!/bin/bash
# This script will configure and start a virtual network interface which is a member of VLAN 2.
# TODO
# 0. Check if package 'vlan' has been installed and if not, prompt the user to do so.
# [code goes here]
# 1. Load the VLAN kernel module
sudo modprobe 8021q
# 2. Add enp1s0 to VLAN 2
sudo vconfig add enp1s0 2
# 2.1 Wait 3 seconds before bringing up enp1s0.2, otherwise enp1s0.2 will not get an IP
sleep 3
# 3. Bring up enp1s0.2 with IP address 10.0.0.2
sudo ifconfig enp1s0.2 10.0.0.2 netmask 255.255.255.0 up

注意:您需要替换“enp1s0”和 IP 信息以符合您的情况。

注 2:如代码所示,该脚本需要安装“vlan”包。您可以通过运行以下命令来执行此操作:

apt install vlan

如果有人知道如何在脚本中检查这种依赖关系,请告诉我。

注 3:此脚本不会永久添加具有 VLAN 访问权限的网络接口到您的计算机 - 当您重新启动时,它将消失。当然,您可以随时再次运行脚本,或编辑

 /etc/network/interfaces

并将其添加到那里。但是,当我尝试在我的其中一台服务器上执行此操作时遇到了问题(实际上,我希望在这里找到该问题的答案,但我只找到了未解答的与 VLAN 相关的问题),因此可能不行。

相关内容