linux与思科关系,思科,Linux和Vlan

对于VLAN在Linux上的工作方式,我似乎有一些基本的误解,我希望这里的好人可以教育我。

演员:一台Cisco 3560,一个VLAN和一个Linux机器[1]。

Cisco --------------- Linux

ge0/1 eth0

思科具有Vlan 37接口,其IP地址为10.40.37.252/24。我想将10.40.37.1/24放在Linux机器上。

当思科解封装vlan 37时,一切正常[2]:

# Cisco

interface Vlan37

ip address 10.40.37.252/24

interface GigabitEthernet 0/1

switchport mode access

switchport access vlan 37

# Linux

ip link set eth0 up

ip addr add 10.40.37.1/24 dev eth0

$ ping 10.40.37.252 && echo It works

但是,当我将端口设置为中继并在Linux端分配vlan 37时,它将停止工作:

# Cisco

interface GigabitEthernet 0/1

switchport trunk encapsulation dot1q

switchport mode trunk

! [3] [4] [7]

# Linux

vconfig add eth0 37

ip link set eth0.37 up

ifconfig eth0 0.0.0.0 up # ensure no address

ip addr add 10.40.37.1/24 dev eth0.37

$ ping 10.40.37.252 || echo Why does this not work

我在这里想念什么?

编辑:解决方案:

Shane关于mac地址表的问题使我想到了一个解决方案:使用“ ip addr”在每个VLAN子接口上设置不同的唯一L2(MAC)地址,然后突然起作用。

我没有尝试过的另一个可能的解决方案(因为我的硬件太旧了)是使用“ ethtool”来禁用NIC本身的VLAN卸载,并强制内核处理标签。

谢谢谢恩!

编辑:更多信息,根据评论:

总体目标是使三个VLAN(公共,私有,OAM&P)终止于Linux机器上的三个单独IP地址,并将不同的应用程序绑定到本地地址。如有必要,我可以进一步扩展,但是我试图使问题描述和讨论保持简单,因为在我可以使用三个VLAN之前,我需要一个正在工作。:)

Antoine- > ifup与ifconfig没什么区别。

Pepoluan- >我假设这就是您想要的。请注意,phy驱动程序缺少引用显然是正常的。[5]

$ lsmod | grep 802

8021q 25545 1 cxgb3

杂工 ->

$ ifconfig eth0

eth0 Link encap: Ethernet HWaddr 00:17:08:92:87:22

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:0 [...]

TX packets:31932 errors:0 dropped:0 overruns:0 carrier:0

$ ifconfig eth0.37

eth0.37 Link encap: Ethernet HWaddr 00:17:08:92:87:22

UP BROADCAST RUNNING MULTICAST MUT:1500 Metric:1

RX packets: 0 [...]

TX packets:32024 errors:90 dropped:0 overruns:0 carrier:0

$ cat /proc/net/vlan/config

VLAN Dev Name | VLAN ID

Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD

eth0.37 | 37 | eth0

Chuck- > wirehark和/或tcpdump没有显示标签,但是由于内核中vlan处理和pcap的处理顺序,这显然是Linux上的正常限制[6]。同样,未标记的VLAN设置为1 [7]。

[1]我在CentOS 5.5和Ubuntu 11.04上都尝试过,并且都存在相同的问题。

[2]请注意,这些配置不是剪切粘贴,因此此处的任何拼写错误都只是我的记性不好。

[3]启用或禁用“非协商”对问题没有影响。

[4]链路上的VLAN 37显示为活动且未修剪,因此“允许”不是问题。

[5] serverfault:在网卡上启用8021q

[7]本机(未标记)VLAN为1。使用“ switchport trunk native vlan 1”手动设置它无效。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值