Для перемещения по дереву справки используйте строки заголовка.

Справка по NSG Linux 2.1.6
Дерево команд: ethernet.switch.…далее…

Что это такое?

Это встроенный аппаратный коммутатор Ethernet, имеющийся в данной модели.

Зачем это нужно?

Как это настроить?

ВНИМАНИЕ!!! Нельзя изменять настройки коммутатора, если управление производится через один из его портов. Это приведёт к потере связи с устройством немедленно после применения новых настроек!

Коммутатор имеет несколько физических портов. Порт cpuport соединён внутри устройства с портом процессора (eth0 или eth1 в зависимости от конкретной модели). Остальные порты находятся на задней панели устройства и обозначаются e1, e2 и т.д.

Встроенный аппаратный коммутатор

Коммутатор может транслировать пакеты Ethernet либо прозрачно (т.е. без учёта их тегов VLAN и без модификации), либо избирательно на основе тегов VLAN. Каждая из VLAN, определённых на внутреннем порту коммутатора, должна быть также определена и настроена на порту процессора (назначен IP-адрес для маршрутизации, или она включена в программную bridge group, bond group и т.п.)

Если коммутатор, как целое, работает в режиме VLAN, то каждый его порт далее настраивается индивидуально. В настройках порта указывается одна или несколько (см. ниже) VLAN, которые он обрабатывает. Для каждой VLAN, указанной хотя бы в одном порту, создаётся так называемая VLAN-группа. Группу можно рассматривать как отдельный коммутатор с собственным набором физических интерфейсов phyN, работающий независимо от остальных. Максимальное число VLAN-групп — 15, т.е. число VLAN, обрабатываемых индивидуально, для всех портов вместе не может превышать 15.

Каждый порт может работать в тегированном (т.е. с учётом тегов IEEE 802.1q) или нетегированном режиме.

Обработка пакетов производится следующим образом:

  1. Каждый входящий пакет приписывается к одной из групп по следующим правилам:
     
    • входящий пакет, имеющий тег VLAN, приписывается к группе с номером, равным номеру тега. При этом сам пакет не изменяется.
    • входящий пакет, не имеющий тега VLAN и пришедший на нетегированный порт, приписывается к группе с номером, равным значению vlan-group для этого порта.
    • входящий пакет, не имеющий тега VLAN и пришедший на тегированный порт, уничтожается.
  2. Если группа, к которой приписан входящий пакет, не содержит в своём списке номер порта, с которого пришел этот пакет, то пакет уничтожается. В частности, это относится:
     
    • ко всем пакетам, поступившим через нетегированный порт, если для него не указана корректная vlan-group (от 2 до 4094).
    • к пакетам без тегов VLAN, поступившим через тегированный порт.
    • к пакетам c тегами VLAN, поступившим через тегированный порт, если идентификатор VLAN, указанный в теге пакета, не относится ни к одной из явно определённых VLAN-групп на данном порту.
    Остальные пакеты передаются во все порты, включённые в данную группу.
  3. На выходе из коммутатора каждый исходящий пакет может быть изменен по следующим правилам:
     
    • если пакет отправляется в нетегированный порт и имеет тег VLAN, то тег будет удален.
    • если пакет отправляется в тегированный порт и не имеет тега VLAN, то в этот пакет будет добавлен тег с номером группы, которой принадлежит пакет.
    • во всех остальных случаях пакет не изменяется.

Таким образом, в нетегированные порты будут уходить только пакеты без тегов VLAN, а в тегированные порты будут уходить только пакеты с тегами.

ПРИМЕЧАНИЕ: Как можно видеть, конфигурация интерфейсов коммутатора может, в общем случае, не соответствовать природе физических сегментов сети, подключенных к ним. На практике, однако, рекомендуется следить за наличием такого соответствия, чтобы исключить вероятность ошибочной настройки. Рекомендуется также указывать списки используемых VLAN явным образом на каждом интерфейсе.

Что делать, если это не работает?

Проверить фактическую таблицу коммутации при помощи команды show.


Примеры конфигурации

Курсивом указаны значения, установленные по умолчанию.

а) Коммутатор и внутренний порт в нормальном режиме Ethernet

ethernet
: switch
: : vlan-mode = false
port
: eth1
: : ifAddress
: : : prefix = "192.168.0.1/24"

Это обычный режим работы единой физической сети Ethernet без VLAN.

б) Коммутатор в нормальном режиме Ethernet, внутренний порт в режиме VLAN

ethernet
: switch
: : vlan-mode = false
port
: eth0
: : vlan
: : : eth0.2
: : : : ifAddress
: : : : : prefix = "192.168.2.1/24"
: : : eth0.3
: : : : ifAddress
: : : : : prefix = "192.168.3.1/24"
....................................

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

в) Коммутация на основе VLAN — подключение 3 изолированных физических сегментов

4 порта коммутатора разделены на 3 изолированные группы: phy1 отдельно, phy2 отдельно, phy3 и phy4 отдельно от остальных. Обмен пакетами напрямую между этими группами запрещён, каждая из них соединёна с определённой VLAN на внутреннем порту eth0 процессора.

ethernet
: switch
: : cpuport
: : : vlan-groups
: : : : 1 = 101
: : : : 2 = 102
: : : : 3 = 103
: : : vlan-tagged = true
: : e1
: : : vlan-group = 101
: : e2
: : : vlan-group = 102
: : e3
: : : vlan-group = 103
: : e4
: : : vlan-group = 103
: : vlan-mode = true
port
: eth0
: : vlan
: : : eth0.101
: : : : ifAddress
: : : : : prefix = "10.0.0.1/8"
: : : eth0.102
: : : : ifAddress
: : : : : prefix = "20.0.0.1/8"
: : : eth0.103
: : : : ifAddress
: : : : : prefix = "30.0.0.1/8"

Здесь на порту eth0 определены три IP-интерфейса eth0.101, eth0.102, eth0.103, каждый из которых соединён с соответствующим физическим сегментом сети. Результат:

nsg:ethernet.switch>show

Ethernet switch is in VLAN mode
VLAN memberships:
          cpuport   e1      e2      e3      e4
--------  ------- ------  ------  ------  ------
VLAN 101     X       X       .       .       .
VLAN 102     X       .       X       .       .
VLAN 103     X       .       .       X       X

г) Объединение двух сегментов без доступа к процессору

ethernet
: switch
: : cpuport
: : : vlan-group = 777
: : e1
: : : vlan-group = 666
: : e2
: : : vlan-group = 666
: : e3
: : : vlan-groups
: : : : 1 = 777
: : : vlan-tagged = true
: : e4
: : : vlan-group = 666
: : vlan-mode = true
port
: eth0
: : ifAddress
: : : prefix = "10.0.0.7/8"

Результат:

nsg:ethernet.switch>show

Ethernet switch is in VLAN mode
VLAN memberships:
          cpuport   e1      e2      e3      e4
--------  ------- ------  ------  ------  ------
VLAN 666     .       X       X       .       X
VLAN 777     X       .       .       X       .

Здесь первый, второй и четвёртый физические сегменты соединены друг с другом, но не имеют доступа ни в третий сегмент, ни к порту eth0 процессора. Физический интерфейс phy0 нетегированный, поэтому и порт процессора настраивается без использования VLAN. Порт eth0 будет принадлежать VLAN 777 в третьем сегменте, причём присвоение и удаление тегов VLAN в данном случае производится на интерфейсе коммутатора. Никакие другие пакеты через коммутатор пропущены не будут.

д) Подключение физических сегментов к сегменту VLAN

ethernet
: switch
: : cpuport
: : : vlan-groups
: : : : 1 = 55
: : : : 2 = 77
: : : vlan-tagged = true
: : e1
: : : vlan-group = 55
: : e2
: : : vlan-group = 55
: : e3
: : : vlan-group = 77
: : e4
: : : vlan-groups
: : : : 1 = 55
: : : : 2 = 77
: : : vlan-tagged = true
: : vlan-mode = true
port
: eth0
: : vlan
: : : eth0.55
: : : : ifAddress
: : : : : prefix = "55.0.0.1/8"
: : : eth0.77
: : : : ifAddress
: : : : : prefix = "77.0.0.1/8"

Результат:

nsg:ethernet.switch>show

Ethernet switch is in VLAN mode
VLAN memberships:
          cpuport   e1      e2      e3      e4
--------  ------- ------  ------  ------  ------
VLAN  55     X       X       X       .       X
VLAN  77     X       .       .       X       X

Здесь все узлы первого и второго сегментов будут частью VLAN 55 из четвёртого сегмента; также к ней относится субинтерфейс eth0.55 процессора. Аналогично, VLAN 77 включает в себя VLAN 77 из четвёртого сегмента, нетегированный третий сегмент и субинтерфейс eth0.77 процессора.


© Network Systems Group 2015–2024 Отдел документации