如何测试 OS X Mavericks 下设置的 VLAN

如何测试 OS X Mavericks 下设置的 VLAN

我尝试设置一个“内部”VLAN,用我的 Mac(运行 Mavericks)将隔离的流量路由到其中一个硬件接口。我认为无论人们如何连接到交换机/路由器上设置的 VLAN(即 Mac 外部),这都应该有效。

sudo ifconfig vlan1 create
sudo ifconfig vlan1 vlan 1 vlandev en1
sudo ifconfig vlan1 inet 10.0.0.1 netmask 255.255.255.224

如果知道如何测试 VLAN 是否正确路由就太好了。该怎么办? Ping 其分配的 IP 地址?(没有响应。)

当我尝试将虚拟机桥接到其 IP 地址时,客户操作系统无法建立连接(尽管它确实看到了虚拟接口)。

谢谢!

答案1

您的设置应该将带有 VLAN 标记的帧(标记有 VLAN ID 1)发送出 en1。

好吧,这是假设 en1 是一个支持 VLAN 的以太网类接口。如果您机器上的 en1 是 Wi-Fi 接口,那么它可能实际上不支持 VLAN。我见过很多 Wi-Fi NIC 和 Wi-Fi AP 不能很好地处理 VLAN 标签,所以 YMMV。

不管 Wi-Fi 警告如何,您都需要在以太网链路的另一端配置一些东西,以关注带有 VLAN ID 1 的 VLAN 标记帧。如果在以太网电缆 out en1 的另一端有一个哑(不可管理、不支持 VLAN)以太网交换机,它可能会盲目地将您的 VLAN 标记帧桥接到交换机上的其他端口。但您仍然需要在某个地方配置一个设备,也将其配置为关注带有 VLAN ID 1 标记的帧。因为默认情况下,大多数以太网主机只会丢弃(忽略)主机未预先配置为关注的带有 VLAN ID 标记的帧。

对于支持 VLAN 的交换机来说也是如此。虽然哑交换机可能默认转发未知 VLAN 帧,但支持 VLAN 的交换机可能默认丢弃带有 VLAN 标记的帧。您需要配置支持 VLAN 的交换机,以期望 VLAN ID 1 帧从该端口进入。并且您需要告诉它应该将 VLAN ID 1 帧转发到哪些其他端口,以及它是否应该在该端口上发送时剥离 VLAN 标记(即“未编号”或“访问”端口,预计它只属于没有 VLAN 标记的单个 VLAN),或者它是否应该保留标记(“中继”端口预计参与多个 VLAN,要么标记所有 VLAN ID,要么标记除一个 VLAN ID 之外的所有 VLAN ID)。

同样的事情也适用于具有无线 VLAN 功能的 Wi-Fi AP;您需要配置 AP 以告诉它哪个 Wi-Fi 接口应该接收带有 VLAN 标记的帧。

您提问的方式让我感觉您并不是真的想要 VLAN,您只是想要同一接口上的第二个 IP 地址。如果您只是想要同一接口上的第二个 IP 地址(请注意,它不必与接口上的第一个 IP 地址位于同一 IP 子网中),则只需使用sudo ifconfig ... alias

相关内容