OpenWrt Настройка маркированной и немаркированной VLAN на одном и том же порту


9

Я установил OpenWrt на MikroTik Routerboard RB750UP (процессор AR7240 со встроенным коммутатором AR9330). Я включил дополнительные детали ниже, но мой вопрос:

Как настроить VLAN без тегов и тегов на одном и том же порту?

Я успешно настроил VLAN без тегов и VLAN с тегами независимо, но не для одного и того же порта. Причина, по которой я хочу это сделать, заключается в том, что я подключил Ubiquiti NanoStation loco M2 к порту, обеспечивающему беспроводную локальную сеть (для которого требуются нетегированные кадры), но я также хочу настроить vlan с тегами для управления локомотивом (т. Е. Получить доступ к его управлению). IP через помеченный фургон).

Вот некоторые дополнительные детали:

аппаратные средства

  • MikroTik RouterBoard RB750UP
  • Ubiquiti NanoStation loco M2

swconfig вывод:

swconfig dev eth0 help
switch0: eth0(AR7240/AR9330 built-in switch), ports: 5 (cpu @ 0), vlans: 16
<snip>

Вот ссылка на диаграмму (как мне кажется,) схемы коммутатора AR7240 / AR9330 в RB750 .

Операционная система

OpenWrt BARRIER BREAKER (Bleeding Edge, r36085), построенный с пользовательской конфигурацией

# uname -a
Linux OpenWrt 3.8.3 #3 Wed Mar 27 04:09:04 PDT 2013 mips GNU/Linux

Диаграмма сети

Вот ссылка на схему моей настройки сети .

Как показано на рисунке, NanoStation loco подключен к порту 3 и имеет IP-адрес управления 192.168.20.10/24, настроенный для vlan с vid = 3. Он также действует как беспроводной мост / точка доступа для сети 192.168.100.0/24.

Соответственно, порт 3 на маршрутизаторе имеет VLAN без тегов, настроенный для сети 192.168.100.0/24, и VLAN с тегами для сети управления 192.168.20.0/24 (с vid = 3).

конфигурация сети

Вот что я пытаюсь достичь с помощью приведенного ниже конфига:

  • Помеченная VLAN 3 (vid = 3) на порту 3 (виртуальный интерфейс eth0.3)
  • Нетегированная VLAN 4 на порту 3 (виртуальный интерфейс eth0.4)
  • Vlan pvid = 4 по умолчанию для порта 3 (для обработки входящих нетегированных кадров)

И фактическое содержание /etc/config/network:

<snip>

config interface 'loco'
        option proto 'static'
        option ifname 'eth0.3'
        option ipaddr '192.168.20.1'
        option netmask '255.255.255.0'

config interface 'locolan'
       option proto 'static'
       option ifname 'eth0.4'
       option ipaddr '192.168.100.1'
       option netmask '255.255.255.0'

<snip>

config switch
        option name 'switch0'
        option reset '1'
        option enable_vlan '1'

config switch_vlan
        option device 'switch0'
        option vlan '1'
        option vid '1'
        option ports '0t 2 4'

config switch_vlan
        option device 'switch0'
        option vlan '2'
        option vid '2'
        option ports '0t 1'

config switch_vlan
        option device 'switch0'
        option vlan '3'
        option vid '3'
        option ports '0t 3t'

config switch_vlan
       option device 'switch0'
       option vlan '4'
       option vid '4'
       option ports '0t 3'

config switch_port
    option port '3'
    option pvid '4'

После перезагрузки роутера swconfigпоказывает следующую конфигурацию коммутатора. Обратите внимание на отсутствие «3t» из VLAN 3.

# 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: 2
    link: port:1 link:up speed:100baseT full-duplex auto
Port 2:
    pvid: 1
    link: port:2 link:down
Port 3:
    pvid: 4
    link: port:3 link:up speed:100baseT full-duplex auto
Port 4:
    pvid: 1
    link: port:4 link:up speed:100baseT full-duplex auto
VLAN 0:
    vid: 0
    ports: 0t 
VLAN 1:
    vid: 1
    ports: 0t 2 4 
VLAN 2:
    vid: 2
    ports: 0t 1 
VLAN 3:
    vid: 3
    ports: 0t    <----- no tagged port 3!
VLAN 4:
    vid: 4
    ports: 0t 3

В результате я не могу пропинговать IP управления loco.

Я также пытался вручную настроить назначение vlan / port и теги swconfig, но в каждой перестановке он либо оставляет порт 3 из одного из vlans, либо заставляет порт 3 быть отмеченным в обоих vlans.

Вопросов

  1. Как настроить VLAN без тегов и тегов на одном и том же порту? Я специально пытаюсь настроить это для OpenWrt, но даже понимание того, как сделать это для Linux в целом, было бы полезно.
  2. Есть ли какие-либо известные ошибки / проблемы с swconfig или драйвером коммутатора AR7240 / AR9330 OpenWrt, которые могут быть причиной этого? (Ни один не подошел в моих поисках.)

Я запутался в ваших целях: (2) нетегированная VLAN 4 на порту 3 (виртуальный интерфейс eth0.4) и (3) vlan pvid = 4 по умолчанию на порту 3 (для обработки входящих нетегированных кадров). Если у вас есть нетегированный VLAN 4 на порту 3, он уже будет обрабатывать входящие нетегированные кадры, не так ли? Зачем тогда вам нужен дополнительный vlan pvid = 4 по умолчанию для порта 3?
Андрей Сапегин

Ответы:


1

Вообще говоря, даже непомеченным портам необходимо назначать идентификатор NATIVE VLAN И только в том случае, если он отличается от идентификатора по умолчанию, равного 1. Это помогает коммутатору понять, как пересылать пакеты. Если вы не предоставляете vlan, и он является мостовым, он считается маршрутизируемым интерфейсом. Как правило, не следует указывать подынтерфейсы (т. Е. Теги) на интерфейсах, если только вы не ожидаете, что они будут связаны в этой системе с IP-адресом для этого интерфейса.

  1. Настройте маршрутизируемые интерфейсы VLAN (не физические / мостовые)
  2. Укажите протокол тегирования, используемый на физических мостовых интерфейсах (например, dot1q).
  3. Выберите И укажите собственный идентификатор VLAN на всех интерфейсах (если не vlan 1)

Еще один момент. Вообще говоря, тегирование происходит только тогда, когда пакет L2 перемещается из одного vlan в ядро ​​коммутатора ядра, и только в том случае, если его необходимо перенести через другую магистраль. Когда пакет выходит из механизма коммутации, он удаляется из тега и пересылается через стандартные кадры Ethernet.


«Если вы не предоставляете vlan и он соединен мостом» - что-то не так с этим утверждением. Я думаю, что вы имеете в виду, что если он не соединен мостом, то он маршрутизируется.
Мэтт

Мостовое соединение не подразумевает тегирование (vlan) и может быть маршрутизировано (или нет). L2 и L3 не одно и то же. Один из них связан с физической коммутацией пакетов (L2), а другой - с маршрутизацией протокола (L3). Проблема в том, что термин «мост» используется довольно свободно. Технически мост описывает физическое соединение (L1) и происходит перед любым кадрированием. Это можно рассматривать как связь между двумя интерфейсами. Сети VLAN (в данном случае обозначаемые точками dot1q) - это особое состояние L2, в котором все пакеты L2 помечены идентификатором, который должен обрабатываться как отдельная логическая сеть L2 обеими конечными точками.
Кит Эндрю Хилл

0

Я не думаю, что возможно иметь порт с включенной маркировкой И без ..

Либо вы находитесь в режиме доступа с настроенным идентификатором (без тегов),

Либо вы настраиваете несколько идентификаторов на порт в режиме доступа.

Либо вы помечаете на этом порту один идентификатор

Либо вы помечаете несколько идентификаторов, чтобы изолировать трафик, это называется транком

Я думаю, что вам здесь нужен транк на вашем интерфейсе с настроенным администратором и данными vlan. Имейте в виду, что порт, настроенный на другом оборудовании, должен принимать помеченный кадр на конкретном идентификаторе, передаваемом по магистрали.


0

user173470,

Для этого ... Рекомендуется назначить собственный VLAN или идентификатор PortVlan для этого конкретного порта VLAN для NanoStation. Чем TAG все ваши другие VLAN, если вы хотите, чтобы они передавались на этот порт. Не все устройства могут передавать помеченные кадры. Также вам не нужно назначать всех участников этим портам. Назначайте членов vlan только тем портам, по которым вы хотите передавать трафик. (Экономит пропускную способность).

Ваши другие порты могут видеть соответствующие PVID / Physical Vlan и быть помечены. Если вам нужно передать только один VLAN, установите его как нетегированный для устройства, которому нужен только этот VLAN.

Сохраняет ваши настройки простыми.

Надеюсь, что это помогает .. Ура ...


0

Я думаю, что общая путаница (в этой ситуации и для пользователей, которые являются немного новыми для VLAN), состоит в том, что точки доступа по умолчанию не привязывают интерфейс управления на самой точке доступа к любому идентификатору VLAN, поэтому вы можете потерять возможность настройте точку доступа из веб-интерфейса, если порт управляемого коммутатора, к которому подключена точка доступа, заменен на помеченный несколькими VLAN (транк).

Решение состоит в том, чтобы сначала настроить идентификаторы VLAN на точке доступа, а затем протестировать их, временно изменив порт управляемого коммутатора на магистральный порт с помеченными VLAN, чтобы проверить, действительно ли VLAN работают и правильно настроены в маршрутизаторе.

Если виртуальные локальные сети работают нормально (подключайтесь к SSID по одному), временно измените магистральный порт на немаркированный (обычный порт) и найдите параметр в веб-интерфейсе точки доступа, который связывает интерфейс управления на точке доступа. сам к любой VLAN вы хотите. Если вы уверены, что VLAN действительно работает нормально (вы должны были только что протестировать ее), вы можете настроить интерфейс управления AP на эту VLAN. Наконец, измените порт коммутатора обратно на магистральный порт, помечая каждую VLAN, которую вы хотите, одну для каждого SSID и / или VLAN управления, если это не на Wifi. Теперь у вас должны быть рабочие сети VLAN и доступ к веб-интерфейсу точки доступа одновременно.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.