Это продолжение предыдущего вопроса (Переключить отправку пакетов DHCP в неправильную VLAN), но проблема заключается не в коммутаторе, а, скорее, в аппаратном обеспечении NIC.
По сути, я наблюдаю утечку широковещательного трафика через VLAN на HP N40L с сетевой картой Intel 82574L.
Первый, DHCPDISCOVER
появляется в обеих VLAN (без тегов 1 и с тегами 10)
Jul 23 06:51:50 gateway dhcpd: DHCPDISCOVER from 90:84:0d:9c:13:df via eth0.10
Jul 23 06:51:50 gateway dhcpd: DHCPDISCOVER from 90:84:0d:9c:13:df via eth0: network 192.168.100.0/25: no free leases
DHCPOFFER
отправляется обратно в VLAN10 только потому, что у VLAN1 нет свободных аренд
Jul 23 06:51:51 gateway dhcpd: DHCPOFFER on 192.168.100.207 to 90:84:0d:9c:13:df (iPhone) via eth0.10
DHCPREQUEST
для того же адреса снова появляется в обеих VLAN:
Jul 23 06:51:52 gateway dhcpd: DHCPREQUEST for 192.168.100.207 (192.168.100.200) from 90:84:0d:9c:13:df (iPhone) via eth0.10
Jul 23 06:51:52 gateway dhcpd: DHCPACK on 192.168.100.207 to 90:84:0d:9c:13:df (iPhone) via eth0.10
Jul 23 06:51:52 gateway dhcpd: DHCPREQUEST for 192.168.100.207 (192.168.100.200) from 90:84:0d:9c:13:df (iPhone) via eth0: wrong network.
Jul 23 06:51:52 gateway dhcpd: DHCPNAK on 192.168.100.207 to 90:84:0d:9c:13:df via eth0
Переключатель был заменен после моего первоначального вопроса, когда я думал, что это переключатель. Это был коммутатор Cisco, я заменил его на HP. У меня есть десятки коммутаторов HP, которые я настраиваю и управляю, я трижды проверил конфигурацию и на 100% уверен, что она верна. Соответствующий конфиг (где 25 - N40L, 26 - WAP):
vlan 1
name "LAN"
untagged 1-25
ip address 192.168.100.99 255.255.255.128
no untagged 26
exit
vlan 10
name "WLS"
untagged 26
no ip address
tagged 25
exit
И конфиг на сервере (CentOS 6)
gateway ~ # ip a s eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
link/ether a0:b3:cc:e7:58:2e brd ff:ff:ff:ff:ff:ff
inet 192.168.100.100/25 brd 192.168.100.127 scope global eth0
gateway ~ # ip a s eth0.10
4: eth0.10@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether a0:b3:cc:e7:58:2e brd ff:ff:ff:ff:ff:ff
inet 192.168.100.200/25 brd 192.168.100.255 scope global eth0.10
Мои вопросы: 1) Кто-нибудь еще видел подобное поведение от этого оборудования? Google не возвращает никакой информации. 2) Что еще я могу сделать, чтобы подтвердить, что это проблема сетевого адаптера? 3) Какое-нибудь волшебное решение? ;)
РЕДАКТИРОВАТЬ: VLAN 10 помечен на порту N40L и немаркирован только на 1 другом порту, который определенно переходит в WAP (иначе мы бы не увидели запросы аренды iPhone), поэтому для VLAN не может быть случайно перекрестно исправлено:
hp-switch# sho vlan 10
Status and Counters - VLAN Information - Ports - VLAN 10
802.1Q VLAN ID : 10
Name : WLS
Status : Port-based
Port Information Mode Unknown VLAN Status
---------------- -------- ------------ ----------
25 Tagged Learn Up
26 Untagged Learn Up
Вот полная работающая конфигурация коммутатора; это довольно простая конфигурация: http://pastebin.com/5Zt76nAF
Обратите внимание, что в то время как DHCP DISCOVER заключен в широковещательный пакет UDP, ЗАПРОС DHCP является одноадресным - так что у вас не просто "утечка" широковещательного трафика.
Основываясь на вашем описании, я бы провел дополнительное расследование, если вы случайно не подключили VLAN-сети (например, неправильно настроив программный мост на N40L или запустив патч-корд от нетегированного порта VLAN 10 к немаркированному порту VLAN 1). Запустите tcpdump на другом хосте, чтобы увидеть, передает ли VLAN «чужой» трафик, чтобы сначала исключить это.
Хотя это также может быть ошибкой, вопреки широко распространенному мнению, функциональность VLAN не является функцией сетевой карты, а реализована на программном уровне в ядре Linux. Так что если это мы ошибка, она повлияет не только на один тип сетевой карты / хоста и наверняка уже где-то уже была документирована.