LINUX.ORG.RU
решено ФорумAdmin

dhcp не проходит через псевдотегированный интерфейс

 , ,


0

2

Делаю гостевую сеть со внешним шлюзом.

Шлюз подключен как нетегированный интерфейс к 2-му порту, так и тегированный с VLAN2. Через вафлю arp работает, с макаками все в порядке, nat`а нет. Но dhcp со шлюза просто не хочет пролазить через openwrt девайс с тегированным процессором.

Дополнение: DHCP discover прорывается через AP.

0t - CPU.

swconfig dev switch0 show
Global attributes:
	enable_vlan: 1
Port 0:
	pvid: 0
	link: port:0 link:up speed:1000baseT full-duplex txflow rxflow 
Port 1:
	pvid: 0
	link: port:1 link:down
Port 2:
	pvid: 0
	link: port:2 link:up speed:100baseT full-duplex auto
Port 3:
	pvid: 0
	link: port:3 link:up speed:100baseT full-duplex auto
Port 4:
	pvid: 0
	link: port:4 link:down
VLAN 0:
	vid: 0
	ports: 0t 1 2t 3 4 
VLAN 2:
	vid: 2
	ports: 0t 2t 
config interface 'loopback'                                                                                                                                   
        option ifname 'lo'                                                                                                                                    
        option proto 'static'                                                                                                                                 
        option ipaddr '127.0.0.1'                                                                                                                             
        option netmask '255.0.0.0'                                                                                                                            
                                                                                                                                                              
config globals 'globals'                                                                                                                                      
        option ula_prefix 'fd20:b82d:9ba7::/48'                                                                                                               
                                                                                                                                                              
config interface 'lan'                                                                                                                                        
        option ifname 'eth1'                                                                                                                                  
        option force_link '1'                                                                                                                                 
        option type 'bridge'                                                                                                                                  
        option proto 'static'                                                                                                                                 
        option ipaddr '192.168.0.60'                                                                                                                          
        option netmask '255.255.255.0'                                                                                                                        
        option ip6assign '60'                                                                                                                                 
        option gateway '192.168.0.1'                                                                                                                          
        option dns '8.8.8.8 8.8.4.4'                                                                                                                          
                                                                                                                                                              
config interface 'wan'                                                                                                                                        
        option ifname 'eth0'                                                                                                                                  
        option proto 'dhcp'                                                                                                                                   
                                                                                                                                                              
config interface 'wan6'                                                                                                                                       
        option ifname 'eth0'                                                                                                                                  
        option proto 'dhcpv6'                                                                                                                                 
                                                                                                                                                              
config switch                                                                                                                                                 
        option name 'switch0'                                                                                                                                 
        option reset '1'                                                                                                                                      
        option enable_vlan '1'                                                                                                                                
                                                                                                                                                              
config switch_vlan                                                                                                                                            
        option vlan '0'                                                                                                                                       
        option device 'switch0'                                                                                                                               
        option ports '0t 1 2t 3 4'                                                                                                                            
                                                                                                                                                              
config switch_vlan                                                                                                                                            
        option vlan '2'                                                                                                                                       
        option device 'switch0'                                                                                                                               
        option ports '0t 2t'             

Перемещено Klymedy из development

★★★★★

Последнее исправление: steemandlinux (всего исправлений: 3)

Сложнааа
Давай дамп трафика смотреть

zolden ★★★★★
()
Ответ на: комментарий от vel

Ну да, а как я заберу с роутера вторую подсеть? Тем более остальной трафик проходит нормально, даже ARP.

steemandlinux ★★★★★
() автор топика
Ответ на: комментарий от vel

В pfsense напрямую этот порт воткнут.

На pfsense есть дефолтный lan который на vlan0 идет. И тегированный vlan2, который идет на vlan2 openwrt. В обоих случаях порт №2.

3-й порт для failsafe mode воткнут.

steemandlinux ★★★★★
() автор топика
Ответ на: комментарий от steemandlinux

Я знаю, что есть проблема у dhcp с интерфейсами без REORDER_HDR

Как посмотреть это в openwrt я не знаю.

vconfig set_flag eth0.0 1 1 может помочь.

vel ★★★★★
()
Ответ на: комментарий от steemandlinux

Запросы приходят на eth0.0 с тегами. А кто их слушает ? dhcpd или dhcrelay или eth0.0 в мост включен ?

vel ★★★★★
()
Ответ на: комментарий от steemandlinux

Интересно как выглядит «brctl show» и «cat /sys/class/net/XXXXX/brforward | hexdump», где XXXXX - имя моста

а в eth1 броадкасты уже не попадают ?

vel ★★★★★
()
Ответ на: комментарий от vel
bridge name	bridge id		STP enabled	interfaces
br-lan		7fff.14cc2094ccf2	no		eth1
							eth1.0
							wlan0
cat /sys/class/net/br-lan/brforward | hexdump
0000000 6239 3031 3264 0200 0000 0699 0000 0000
0000010 bc5f f40b 43e7 0200 0000 0000 0000 0000
0000020 001e 0bc3 f11e 0200 0000 0016 0000 0000
0000030 50e5 49af 9170 0200 0000 05ae 0000 0000
0000040 4a34 b76c 1c74 0200 0000 0047 0000 0000
0000050 6238 6437 6435 0200 0000 048f 0000 0000
0000060 a205 6e50 e4f3 0200 0000 044a 0000 0000
0000070 f63e 7173 d452 0200 0000 0016 0000 0000
0000080 6639 3139 3862 0200 0000 041a 0000 0000
0000090 1c6f 6532 0f3e 0200 0000 00a3 0000 0000
00000a0 0860 6e87 f15c 0200 0000 03c8 0000 0000
00000b0 14cc 2094 ccf2 0101 0000 0000 0000 0000
00000c0
steemandlinux ★★★★★
() автор топика
Ответ на: комментарий от steemandlinux

гм, а где vlan2 (eth0.2) в br-lan ? Или между vlan0 и vlan2 роутинг ? Если роутинг, то dhcrelay должен быть запущен.

т.е. коммутатор знает только про маки на порту 2 (7-й байт), на первом порту только кего собственный мак.

А на шлюзе как сконфигурированы интерфейсы ?

vel ★★★★★
()
Ответ на: комментарий от vel

Между vlan0 vlan2 нет ничего, кроме единого провода, это разные интерфейсы. Они оба заведены на другой шлюз.

На другом шлюзе один нетегированный основной интерфейс и один тегированный vlan2. Провод один во втором порту. В первом порту провода нет.

Я вот что не могу понять:

тегированного vlan0 не должно быть в принципе. Однако openwrt не понимает конфигурацию:

нетегированные порты - 0 1 2 3 4 + тегированный vlan 2 - 0t 2t.

Хотя тоже самое я делал со связкой pfsense + ubiquity.

Одминятся AP`шки через нетегированный дефолтный LAN, а раздают 3 SSID`а через VLAN10/20/30.

C openwrt в такой конфигурации не работает именно DHCP, хотя все остальное пролазит.

steemandlinux ★★★★★
() автор топика
Последнее исправление: steemandlinux (всего исправлений: 2)
Ответ на: комментарий от steemandlinux

А, ну теперь чуть более понятно.

Когда создаются ssid, они тегированный трафик в wlan0 передают? или отдельные интерфейсы создаются?

На сколько я помню, в новых ядрах есть отдельная настройка: пропускать тегированные пакеты через мост или нет.

Note: by default, the bridge does not filter on VLAN and only bridges untagged
traffic.  To enable VLAN support, turn on VLAN filtering:
        
        echo 1 >/sys/class/net/<bridge>/bridge/vlan_filtering

vel ★★★★★
()
Последнее исправление: vel (всего исправлений: 1)
Ответ на: комментарий от steemandlinux

тогда нужно делать отдельный бридж для каждого отдельного ssid

Почему не воспользоваться всякими howto на тему «openwrt multiple ssid vlan» типа

vel ★★★★★
()
Ответ на: комментарий от vel

В общем разобрался. vlan0 надо удалить вообще и для моста wlan <-> нетегированный lan создать еще один тегированный vlan.

Т.е. сделать конструкцию wlan - vlan100 - lan. И тогда пакеты DHCP начинают нормально проходить.

А vlan0t почему-то неправильно интерпретируется. Он должен быть псевдотегированным, а он его реально тегирует.

steemandlinux ★★★★★
() автор топика
Последнее исправление: steemandlinux (всего исправлений: 2)
Ответ на: комментарий от vel

Новая проблема вылезла, mac флуд. Неуправляемый коммутатор путает порты из-за того что AP начала представляться клиентскими станциями под подключенными к коммутатору и весь трафик уходит в неё.

steemandlinux ★★★★★
() автор топика
Последнее исправление: steemandlinux (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.