我正在使用以下配置设置网络:
- 48 端口千兆 L2 交换机(Cisco Catalyst 2948G)
- 棒上的 Linux 或 OpenBSD 路由器(1 千兆位 NIC)
- 电缆调制解调器
- 我的网络很小,我只需要一个vlan(据我所知),10.0.0.0/24
我只需要知道如何配置调制解调器所连接的交换机端口。(我将其插入 48 端口 L2 交换机)我是否为调制解调器设置了单独的 VLAN?或者我只是把所有东西都放在一个 vlan 上?
谢谢您的帮助!
我正在使用以下配置设置网络:
我只需要知道如何配置调制解调器所连接的交换机端口。(我将其插入 48 端口 L2 交换机)我是否为调制解调器设置了单独的 VLAN?或者我只是把所有东西都放在一个 vlan 上?
谢谢您的帮助!
是的,您会使用两个 VLAN:
Linux 路由器的 TRUNK 端口将携带两个 VLAN(标记一个或两个。)然后 linux 路由器将有一个物理接口 (eth0) 和一个或两个 vlan 接口(eth0.X 和 eth0.Y——取决于数字您为您的 vlan 选择)我建议使用两个标记的 VLAN 以避免 eth0(未标记)和 eth0.# 之间的任何混淆。从那里,网络与具有多个物理接口相同。
(注意:如果你使用wireshark/tcdump,有很多错误的网卡驱动程序会继续在promisc模式下吃vlan标签。因此,捕获eth0可能不包含任何dot1q标签,使流量看起来都在同一个网络上。此外,即使系统管理板不存在,一些管理适配器也会删除标签。Broadcom 以这一点而闻名。)
要直接回答您的问题,调制解调器插入的端口将是访问端口。所以一个简单的配置可能是:
interface gigabit 0/1
switchport mode access
switchport access vlan 1
请注意,这些是默认值。为了清楚起见,我正在展示它们。
您的 BSD 路由器的端口应该是中继端口,因为大概您将在网络之间进行路由,但是您的问题并没有说清楚。如果您提供更多信息,我们可以提供更多帮助。
由于您的电缆调制解调器的内部接口和您的 Linux/OpenBSD 路由器的外部接口需要进行通信(例如,您的路由器需要通过调制解调器从供应商处获取 DHCP 地址),因此这两个接口都应该连接到不同的 VLAN。
综上所述,由于您只需要使用一个 VLAN,所有用户和路由器的内部接口都可以在 VLAN 1 上,而路由器的外部接口和 Cable Modem 的内部接口可以在 VLAN 2 上。
您将需要两个 VLAN,一个位于调制解调器和路由器之间的外部 VLAN,一个位于路由器和 10.0.0.0/24 网络之间的内部 VLAN。自从我使用 2948G 已经好几年了,但我相信它枚举 GBIC 端口就好像它们在 Cat4000 机箱的插槽 1 中一样(例如 1/1、1/2,...),而 48 个铜端口就好像它们在它们在插槽 2(例如 2/1、2/2、...)中。
如果我们假设您的内部网络使用 VLAN 1,调制解调器使用 VLAN 2,您的交换机配置将如下所示(忽略以 开头的行#):
# create VLAN 2 and give it a name
set vlan 2 name Cable_Modem
# set descriptive names for the ports to use
set port name 2/1 Cable Modem
set port name 2/2 Router on a stick
# assign the cable modem to VLAN 2, untagged
set vlan 2 2/1
# make the router port a trunk port;
# by default, VLAN 1 is untagged, and all other VLANs are tagged
set trunk 2/2 on dot1q
在您的路由器上,您需要配置单独的接口以进行 802.1q VLAN 中继。我不知道这是如何在 OpenBSD 上完成的,但是在 Linux 上,您可以像这样在 CLI 上执行此操作(以 root 身份或使用sudo):
# load the 802.1q kernel module
modprobe 8021q
# enable trunking and add VLAN 2 to eth0
vconfig add eth0 2
您最终会得到两个要配置的接口: