Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Содержание

Описание

Команда "switch "предназначена для управления коммутатором (MAC Switch).

Синтаксис:

 ________ LIST commands __________________________________

  switch list LISTNAME [{iface | mac | numrange | match}]
         {add | del} [VALUE ...]
         dump [name] [WILDCARD]
         rename  NEWNAME
         file   FILENAME
         [flush|remove]

________ GROUP commands _________________________________ы

  switch group ID {add | del} IFNAME[:{TAG|0}] ...
  switch group ID {repeater|trunk|uncoupled} {on|off}
  switch group ID {(up|down)stream} {SCID|0}
  switch group ID [x]vlan {TAG|LIST|0} [[no]bidir]
  switch group ID nvlan {[on]|off}
  switch group ID info INFO_STRING
  switch group ID setid NEWID
  switch group ID stp { off | on | dump }
  switch group ID stp [vlan TAG]
  switch group ID stp priority [PRIO]             #(default: 57344, step: 4096)
  switch group ID stp forwarddelay [DELAY]        #(default: 15 sec)
  switch group ID stp maxage [TIME]               #(default: 20 sec)
  switch group ID stp port IFNAME priority [PRIO] #(default: 128, step 16)
  switch group ID stp port IFNAME cost [COST]     #(default: 200000(RSTP),
                                                             65535(STP))
  switch group ID igmp { off | on }
  switch group ID igmp static-add MCAST IF_NAME [MAC]
  switch group ID igmp static-del MCAST IF_NAME [MAC]
  switch group ID igmp dump [detail] [name]
  switch group ID igmp lmqt Value
  switch group ID igmp gmi Value
  switch group ID igmp router-port { off | on }
  switch group ID igmp flood-reports { off | on }
  switch group ID igmp zero-query-permit { off | on }
  switch group ID igmp srcip IP
  switch group ID igmp join-limit [IF_NAME] N [include $ACL] [except $ACL]
  switch group ID igmp querier [vlan N] {start|stop|clear}
  switch group ID igmp querier [[no]election] [source IP] [mcast X[,Y,...]]
  switch group ID igmp querier interval Value

  switch group ID flood-unicast { off | on }
  switch group ID inband { off | on }
  switch group ID order N
  switch group ID
         [ setpri|addpri PRIO ]
         [ qmch CHAN ]
         {deny | permit | showrules | showblack}
  switch group ID
         dump [interface] [WILDCARD]
         [dbdelete   MACADDRESS]
         {start [discard]| stop | remove | statistics}
  switch group ID {in-trunk} [{ID|0}]

________ INTERFACE commands _____________________________

  switch interface IFNAME mac-limit N

________ RULES commands _________________________________

  switch {group ID | interface IFNAME} rule NUMBER
         [set NEWNUMBER] [not]
         [src   LIST] [dst   LIST] [vlan  LIST]
         [iface LIST] [proto LIST] [match LIST]
         [ setpri|addpri PRIO ] [qmch CHAN]
         [ deny | permit ] [ remove ]

_______  CONTROL commands _______________________________

  switch resynchronize
  switch trace { off | on | verbose | filter "pcap expr"}
  switch stptrace { off | on }
  switch stpblock { off | on }
  switch {dump [WILDCARD]|MACADDRESS}

  switch igmp[-snooping] dump [name] [detail]
  switch {start|stop|restart|destroy|dead-interval DEAD_INTERVAL}
  switch statistics [(clear|help|ID)]
  switch maxsources (MAXSOURCES|0) # default 5000

ПРЕДОСТЕРЕЖЕНИЕ

Начиная с версии "MINT1.22.0" режим работы коммутатора частично несовместим с предыдущими версиями. Если в сети есть устройства, работающие в режиме коммутатора, то необходимо обновление программного обеспечения на всех узлах сети. Совместимость на уровне протоколов MINT и маршрутизации сохраняется. Также сохраняется возможность обновления прошивки "Over The Air".

Шаблоны поиска

Шаблоны поиска "WILDCARD" используются в качестве аргументов в различных командах для формирования поисковых запросов, позволяющих описывать определенные группы сущностей. В качестве шаблонов могут быть использованы следующие символы:

  • * - звездочка обозначает наличие в данном месте любого символа или набора символов. Набор может быть и пустым;
  • ~ - знак тильды обозначает наличие на данном месте любого одного символа.

Примеры

Данный шаблон поиска включает в себя имена rf5.0, rf5.1, и т.д.

rf~.~

Следующий пример показывает способ применения шаблона для вывода информации о сетевых интерфейсах eth0 и eth1. Применение шаблона eth~ сообщает команде switch, что данные должны быть выведены только для интерфейсов, у которых имя начинается с eth и в конце содержит один любой символ.

#1> switch group 1 dump eth~
Bridge group 1(normal), READY STARTED Interfaces : eth0(F) eth1(F) rf5.0(F)
Total records 5
  DST MAC        L   Int.   GateWay MAC   GT Cost   UsCNT    Dead    HashC
========= = ====  ========= == === ===== ===== ==== =======
001111144693      eth0   000000000000        0      3987        300       1
000435018822    * eth0  000000000000         0       0            0       1
000435118822    * eth1  000000000000         0       0            0       1

Управление списками значений

Синтаксис:

switch list LISTNAME [{iface | mac | numrange | match}]
      {add | del} [VALUE ...]
      dump [name] [WILDCARD]
      rename  NEWNAME
      file FILENAME
      [flush|remove]

Списки значений используются в качестве набора допустимых значений для условий (rule). 

Параметры

ПараметрОписание
LISTNAMEИмя списка значений. Каждый список должен иметь уникальное имя, которое может состоять из произвольного сочетания букв и цифр, но не должно начинаться с цифры. Имя списка нечувствительно к регистру.

[{iface | mac | numrange | match}]

Каждый список должен быть отнесен к одному из типов:

  • "iface" – список содержит сетевые интерфейсы.
  • "mac" – список содержит набор значений MAC-адресов.
  • "numrange" – список содержит набор диапазонов целочисленных положительных значений. Диапазон значений указывается в виде "<min>[-<max>]". Диапазон может содержать единственное значение в случае, если "<min>=<max>". При добавлении в список диапазона, пересекающегося с уже существующим, происходит их объединение. При удалении диапазона, пересекающегося с существующим(и) в списке, происходит удаление полностью вложенных диапазонов и/или дробление пересекающихся с удаляемым.
  • "match" – по контексту применения, "match" выражения идентичны спискам значений, но состоят из единственного элемента – выражения. Выражение задается в формате PCAP. Если выражение содержит пробелы, то оно должно быть заключено в кавычки.
{add | del} [VALUE ...]

Аргументы "add" и "del" предназначены для добавления и удаления значения VALUE в указанный список.

dump [name] [WILDCARD]

Вывод содержимого списка LISTNAME. Если указан аргумент WILDCARD, то команда распечатает только те значения, которые удовлетворяют шаблону поиска.

rename NEWNAME

Переименование списка в NEWNAME.

file FILENAME

Для списков допускается указание источника значений, который представляет собой текстовый файл, построчно хранящий набор значений.

Файл может быть расположен на FTP-сервере, к которому у настраиваемого устройства есть сетевой доступ. Загрузка значений в список из источника происходит автоматически при старте коммутатора, при изменении имени источника или при выполнении команды:

switch synchronize

В указанном примере файл "macgroup1.txt" может содержать следующие строки:

  • #Список компьютеров отдела Легкой Промышленности
  • 00:01:02:03:04:05  # Иванова
  • 00:11:12:13:14:15  # Сидоров
  • <EOF>

[flush|remove]

  • flush - удалить все значения из списка.
  • remove - удалить список значений.

Примеры

Создание списка типа "iface" с именем "my_iface", в который добавлены имена сетевых интерфейсов eth0 и rf5.0.

switch list my_iface iface add eth0 rf5.0

Создание списка диапазонов значений с именем "vlans", в который добавлены: значение 10, диапазон значений от 20 до 30 и значение 40.

switch list vlans numrange add 10 20-30 40

Создание списка типа "match", в который добавлен фильтр, под действие которого будут попадать сетевые пакеты любых протоколов, источником или получателем которых являются IP-адреса из сети 195.38.45.64/26.

switch list ip_mynet match add ‘net 195.38.45.64/26’

В данном примере также создается список-выражение типа "match", но в этом случае действие фильтра распространяется только на IP-пакеты, принадлежащие сети 195.38.45.64/26.

switch list ip_mynet match add ‘ip net 195.38.45.64/26’

Для списков допускается указание источника значений, который представляет собой текстовый файл, построчно хранящий набор значений. Файл может быть расположен на FTP-сервере, к которому у настраиваемого устройства есть сетевой доступ. Загрузка значений в список из источника происходит автоматически при старте коммутатора, при изменении имени источника или при выполнении команды "switch synchronize".

В указанном примере файл "macgroup1.txt" может содержать следующие строки:

  • #Список компьютеров отдела Легкой Промышленности
  • 00:01:02:03:04:05  # Иванова
  • 00:11:12:13:14:15  # Сидоров
  • <EOF>
switch list MACGROUP1 file ftp://1.2.3.4/switches/list/macgroup1.txt

Управление группами

Синтаксис:

switch group ID {add | del} IFNAME[:{TAG|0}] ...
switch group ID {repeater|trunk|uncoupled} {on|off}
switch group ID {(up|down)stream} {SCID|0}
switch group ID [x]vlan {TAG|LIST|0} [[no]bidir]
switch group ID nvlan {[on]|off}
switch group ID info INFO_STRING
switch group ID setid NEWID
switch group ID stp { off | on | dump }
switch group ID stp [vlan TAG]
switch group ID stp priority [PRIO] #(default: 57344, step: 4096)
switch group ID stp forwarddelay [DELAY] #(default: 15 sec)
switch group ID stp maxage [TIME] #(default: 20 sec)
switch group ID stp port IFNAME priority [PRIO] #(default: 128, step 16)
switch group ID stp port IFNAME cost [COST] #(default: 200000(RSTP), 65535(STP))

switch group ID igmp { off | on }
switch group ID igmp static-add MCAST IF_NAME [MAC]
switch group ID igmp static-del MCAST IF_NAME [MAC]
switch group ID igmp dump [detail] [name]
switch group ID igmp lmqt Value
switch group ID igmp gmi Value
switch group ID igmp router-port { off | on }
switch group ID igmp flood-reports { off | on }
switch group ID igmp zero-query-permit { off | on }
switch group ID igmp srcip IP
switch group ID igmp join-limit [IF_NAME] N [include $ACL] [except $ACL]
switch group ID igmp querier [vlan N] {start|stop|clear}
switch group ID igmp querier [[no]election] [source IP] [mcast X[,Y,...]]
switch group ID igmp querier interval Value

switch group ID flood-unicast { off | on }
switch group ID inband { off | on }
switch group ID order N
switch group ID
       [ setpri|addpri PRIO ]
       [ qmch CHAN ]
       {deny | permit | showrules | showblack}
switch group ID
       dump [interface] [WILDCARD]
       [dbdelete MACADDRESS]
       {start [discard]| stop | remove | statistics}
switch group ID {in-trunk} [{ID|0}]

Параметры

ПараметрОписание
IDЧисловой идентификатор группы (1-4095).

{add | del} IFNAME[:{TAG|0}] ...

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

  • "add|del" – добавить/удалить указанные сетевые интерфейсы в группу. Если указан параметр "add", а группы с идентификатором ID не существовало, то она будет создана автоматически.
  • "IFNAME" – имя сетевого интерфейса, который должен быть добавлен или удален из группы коммутации.
  • "TAG" - аргумент позволяет управлять маркировкой пакета, если он направляется в данный интерфейс. При этом возможны следующие варианты:
    • "TAG" задан для интерфейса, и его значение >0. Это означает, что любому пакету, направляемому коммутатором в данный интерфейс, будет присвоен номер "vlan", равный TAG. Если пакет уже имел метку VLAN, то она будет заменена на TAG.
    • "TAG" не задан. Это означает, что значение метки VLAN пакета не будет изменено или добавлено.
    • "TAG" задан, и его значение равно 0. Это означает, что у пакета, направляемого в сетевой интерфейс, будет удалена метка VLAN, или он будет передан без изменений в случае ее отсутствия.
{repeater|trunk|uncoupled} {on|off}

Включение/выключение режима повторителя (repeater), транка (trunk) или режима «uncoupled».

  • В режиме "repeater" группа коммутирует пакеты простой ретрансляцией их из интерфейса, через который был принят пакет, во все остальные интерфейсы, включенные в данную группу.
  • В режиме "trunk", группа коммутирует все пакеты, принятые через сетевые интерфейсы "eth*" таким образом, что, при передаче их в интерфейсы "rf*", она отправляет их с номером группы, равным "vlan" этих пакетов. При этом, по умолчанию, сами пакеты не изменяются. При приеме пакетов с интерфейсов "rf*", группа в режиме "trunk" отправляет эти пакеты в интерфейсы "eth*" , устанавливая метку "vlan" в значение, равное номеру группы коммутации, с которой они были приняты через интерфейс "rf*".
  • Если сеть с кольцевой структурой подключена к вышестоящей сети в нескольких точках, то возникает опасность образования коммутационных петель через внешнюю сеть. В этом случае протокол STP не позволяет одновременно использовать все подключения для равномерной и эффективной загрузки сети. Группы, имеющие признак "uncoupled", не участвуют в передаче коммутируемого трафика между собой, даже если имеют одинаковый номер группы, что исключает возможность возникновения петель, но не мешает инжектировать трафик в сеть. Для исходящего трафика промежуточные узлы будут использовать только ближайший к себе “uncoupled” узел (определяемому по времени доступа), что способствует более равномерной загрузке сети.
{(up|down)stream} {SCID|0}

Для решения часто возникающей задачи передачи восходящих потоков "multicast" в системах видеонаблюдения введены два дополнительных параметра – "downstream" и "upstream":

  • "downstream" - если устройство используется для передачи нисходящего трафика;
  • "upstream" - для передачи восходящего трафика.

Предположим, к узлам 1,2,3,4,5 и 6 подключены цифровые видеокамеры, которые транслируют изображение с помощью пакетов "multicast", и все эти потоки нужно передать на сервер оптимальным способом, не подвергая сеть дополнительной нагрузке, создаваемой широковещательным трафиком.

Рисунок - Пример

Весь нисходящий трафик(от сервера к камерам), если таковой имеется, передаётся в группе 1000, в которой находятся все узлы сети. Однако восходящие потоки от каждой камеры передаются непосредственно к ближайшему коммутатору своей группы.

Особенностью такого решения является возможность установки нескольких коммутаторов с одинаковым номером группы. Для устранения проблемы широковещательного шторма, который мог бы возникнуть из-за того, что коммутаторы включены в разные порты одного проводного коммутатора, в MINT введено ограничение – транковые (передающие оба типа трафика) и "downstream" коммутаторы никогда не используют друг друга для передачи трафика. Кроме того, наличие параметра “upstream” гарантирует, что оконечные узлы будут выбирать для отправки пакетов только один коммутатор, а именно- кратчайший путь к ближайшему коммутатору.

  • "SCID|0" - Идентификатор канала коммутации 0,1,2. Должен совпадать на upstream и downstream устройстве.

in-trunk [{ID|0}]

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

Например, если группа 100 на клиентском устройстве входит в состав транковой группы 5 (группа 100 образовалась в результате конвертации VLAN ID 100 в номер группы 100), то в конфигурации коммутатора клиентского устройства следует дать команду:

switch group 100 in-trunk 5

[x]vlan {TAG|LIST|0} [[no]bidir]

Параметр определяет, что группа ID будет коммутировать только пакеты, метка "vlan" которых равна либо значению TAG, либо значению, принадлежащему указанному списку LIST типа «numrange». Для того чтобы отменить фильтрацию по "vlan" у данной группы, необходимо указать значение TAG равным нулю.

Опция "bidir" позволяет производить двунаправленную проверку пакетов на соответствие указанным меткам (из проводного сегмента и обратно). Данный параметр будет полезен при передаче набора VLAN через сеть с кольцевой структурой, с отбором некоторых из них в промежуточных узлах кольца. Примечание: при включенном таким образом фильтре по "vlan", остальные правила коммутации (см. ниже) не действуют.

xvlan {TAG|LIST|0} [[no]bidir]

В отличие от предыдущего правила, данный параметр позволяет группе обрабатывать пакеты без метки VLAN.

nvlan {[on]|off}

Параметр определяет, что группа будет коммутировать только немаркированные пакеты.

info INFO_STRING

Параметр позволяет добавить памятку/комментарий к описанию группы.

setid NEWID

Параметр изменяет идентификатор коммутационной группы GROUPIID на NEWID.

[dump [interface] [WILDCARD]]
[dbdelete MACADDRESS]
{start [discard] |stop | remove | statistics}

  • "dump" – выводит базу данных известных MAC-адресов.
  • "interface" - выводит базу данных известных MAC-адресов с группировкой по интерфейсам.
  • "WILDCARD" – шаблон поиска, позволяющий выводить информацию, отвечающую заданному критерию.
  • "dbdelete MACADDRESS" – удаляет все записи из базы данных MAC-адресов, связанные с указанным MAC-адресом.
  • "start|stop" – активирует/деактивирует указанную коммутационную группу.
  • "remove" – удаляет указанную группу из конфигурации коммутатора.
  • "statistics" - выводит статистику по указанной группе.

stp { off | on | dump }

Коммутатор поддерживает протокол STP, а именно две его версии: STP и RSTP. Данный параметр включает или выключает поддержку протокола STP для данной группы. Параметр "dump" позволяет посмотреть текущее состояние STP для данной группы. Пример вывода этой команды "switch group ID stp dump":

Рисунок - Вывод команды "switch group ID stp dump"

stp priority [PRIO]

Параметр устанавливает приоритет "stp" коммутатора, где "[PRIO]" – значение приоритета. Если значение приоритета не указано, то устанавливается значение по умолчанию, равное 57344. При указании значения приоритета следует учитывать, что оно будет автоматически округлено в меньшую сторону до значения кратного 4096 (step 4096).

stp forwarddelay [DELAY]

Параметр устанавливает значение параметра "stp" «forward delay», определяющий время нахождения коммутатора в состояниях “listening” и “learning”, где "[DELAY]" – значение данного параметра в секундах. Если значение не указано, то устанавливается значение по умолчанию, равное 15 секундам.

stp maxage [TIME]

Параметр определяет значение параметра "stp" «MAX age», определяющего время ожидания коммутатором пакета BPDU, где "[TIME]" – значение данного параметра в секундах. Если значение не указано, то устанавливается значение по умолчанию, равное 20 секундам.

stp port IFNAME priority [PRIO]

Параметр устанавливает приоритет "stp" порта коммутатора, где "IFNAME" – имя интерфейса порта, "[PRIO]" – значение приоритета порта. Если значение приоритета не указано, то устанавливается значение по умолчанию, равное 128. При указании значения приоритета следует учитывать, что указанное значение будет автоматически округлено в меньшую сторону до значения кратного 16 (step 16).

stp port IFNAME cost [COST]

Параметр устанавливает значение параметра "stp" «cost» порта коммутатора, определяющего стоимость порта коммутатора, где "[COST]" – значение данного параметра. Если значение не указано, то устанавливается значение по умолчанию, равное 200000 для RSTP, 65535 для STP.

stp [vlan TAG]

Параметр определяет метку VLAN для протокола STP, активированного для группы коммутации.

igmp { off | on }

Команда позволяет отключить/включить функцию “IGMP-snooping” для определенной группы коммутации.

[ setpri|addpri PRIO ]

Данная команда даёт возможность устанавливать/повышать приоритет пакетов, проходящих через группу. Параметр "setpri" явно устанавливает приоритет для пакета. При использовании значения - 1, у пакета сбрасывается его приоритет. Параметр "addpri" изменит приоритет только в том случае, если вновь устанавливаемый приоритет выше, чем уже имеющийся у пакета (чем меньше число, тем выше приоритет). То есть с помощью параметра "addpri" приоритет можно только повысить.

{deny | permit | showrules | showblack}

Данная команда:

  • "deny/permit" - запрещает/разрешает обрабатывать и отправлять пакеты, принадлежащие данной группе
  • "showrules" - отображает/скрывает детальную информацию по правилам классификации группы, включая счётчик срабатывания каждого правила
  • "showblack" - показывает список MAC-адресов, заблокированных по причине неопределённости места нахождения адресата.

igmp dump [detail]

Данная команда выводит список IGMP-узлов (клиентов), подписанных на группу multicast.

Пример вывода команды:

 
Рисунок - Вывод команды «switch igmp dump»

Параметр "detail" позволяет вывести детальную информацию о подписчиках.

igmp lmqt Value

Данная команда позволяет задать значение «Last Member Query Time», т.е. максимальное время, в течение которого коммутатор будет ждать ответа от активных подписчиков, перед тем как закрыть доставку Multicast-пакетов на данный шлюз после приема пакета «IGMP leave». В качестве шлюза может  выступать  либо Ethernet интерфейс, либо радио интерфейс и  MAC-адрес клиента, находящегося на другой стороне радио соединения.

igmp gmi Value

Данная команда позволяет задать значение «Group Membership Interval», т.е. максимально возможное время, за которое коммутатор решит, что на данном шлюзе не осталось активных подписчиков (нет пакетов “IGMP report” на данную группу).

igmp static-add MCAST IF_NAME [MAC]

Данная команда создает статическую подписку клиента на multicast-адрес.

igmp static-del MCAST IF_NAME [MAC]

Данная команда удаляет статическую подписку клиента на multicast-адрес.

igmp router-port { off | on }

Данная команда включает режим трансляции multicast-пакетов не только в порты подписчикам, но и во все порты, к которым подключены маршрутизаторы (Querier).

igmp flood-reports { off | on }

Данная команда включает/выключает трансляцию "IGMP report" пакетов во все порты коммутатора, а не только в те, к которым подключены маршрутизаторы (Querier). Настройка по умолчанию – "off".

igmp srcip IP

Данная команда позволяет заменить IP-адрес источника в пакетах "IGMP Report" на IP-адрес, указанный в параметре “IP” данной команды.

igmp zero-query-permit { off | on }

Данная команда позволяет разрешить обработку и трансляцию пакетов с исходным IP-адресом 0.0.0.0. Значение по умолчанию – "off".

igmp querier [vlan N] {start|stop|clear}

Данная команда включает/выключает (start/stop) функцию «Querier»,  заменяющую функции multicast-маршрутизатора при организации систем видеонаблюдения с использованием «IGMP Snooping».

  • "vlan N" – включает передачу multicast-пакетов с использованием Vlan.
  • "clear" - очищает конфигурацию IGMP Querier.

igmp querier [[no]election] [source IP] [mcast X[,Y,...]]

  • "[no]election" - при активной функции "IGMP Querier", данная опция запрещает/разрешает участвовать в выборах "IGMP Querier" в данном сегменте сети. Согласно принятым стандартам в каждом сегменте должен быть только один активный "Querier", имеющий наименьший IP-адрес. Значение по умолчанию – включено.
  • "source X" – задает source адрес для multicast-пакетов
  •  "mcast X[,Y,...]" – задает номер группы (или групп), на которую разрешена подписка.

igmp querier interval Value

Задаёт интервал отправки пакетов "IGMP Querier" в секундах.

igmp join-limit [IF_NAME] N [include $ACL] [except $ACL]

Команда используется для ограничения количества адресов активных уникальных multicast групп в режиме "IGMP Snooping". При превышении указанного лимита, новые IGMP подписки будут блокироваться.

  • "include" - список, содержащий перечень адресов/сетей, на которые действует ограничение
  • "except" - список, содержащий перечень исключений.

flood-unicast { off | on }

Включает/выключает режим «flood-unicast», позволяющий пересылать unicast-пакеты как широковещательные, отправляя их через все интерфейсы, включенные в группу коммутации.

inband { off | on }

Если трафик передаваемый группой коммутации не содержит (не должен содержать) информации предназначенной данному устройству (только транзитный поток), то можно отключить (off) анализ широковещательных (broadcast) пакетов, что позволяет снизить нагрузку на процессор. По умолчанию анализ включен.

[qmch CHAN]

Данная команда при попадании Ethernet-фрейма в группу коммутации ID позволяет назначить ему класс обслуживания CHAN. Классы обслуживания создаются командой “qm chan”. 

Примеры

В указанном примере все пакеты, коммутируемые группой 3 будут маркироваться vlan 10 при отправке через интерфейс rf5.0 и будут растэгироваться при отправке через интерфейс eth0.

ВНИМАНИЕ

у всех пакетов, предназначенных самому коммутатору, метка VLAN всегда удаляется.

switch group 3 add rf5.0:10 eth0:0
switch group 12 trunk on
Если на устройстве включается транковая группа, которая будет обеспечивать передачу нескольких VLAN потоков по разным направлениям, то на клиентских устройствах следует использовать опцию "in-trunk" для явного указания, в состав какой транковой группы входит данная группа.
switch group ID in-trunk [{ID|0}]

Например, если группа 100 на клиентском устройстве входит в состав транковой группы 5 (группа 100 образовалась в результате конвертации VLAN ID 100 в номер группы 100), то в конфигурации коммутатора клиентского устройства следует указать команду: "switch group 100 in-trunk 5"

Группа 10 будет обрабатывать пакеты с метками VLAN 100, 200, 300, а также немаркированные пакеты, такие пакеты будут отправляться в сеть MINT с собственным номером группы, (в данном случае - 10), маркированные - с номерами групп, совпадающими с меткой VLAN.


switch list MYNET numrange add 100 200 300
switch group 10 xvlan MYNET
switch group 10 trunk on
Группа 20 обрабатывает только маркированные пакеты из списка MYNET и передаёт их, преобразовывая значение метки VLAN в соответствующий номер группы (и наоборот).


switch list MYNET numrange add 100 200 300
switch group 20 vlan MYNET
switch group 20 trunk on
Группа 30 обрабатывает только маркированные пакеты из списка MYNET и передаёт их без изменения с номером группы 30.


switch list MYNET numrange add 100 200 300
switch group 30 vlan MYNET
switch group 30 trunk off
switch group 3 setid 7
switch group 3 dump eth0
switch group 5 start

В данном примере создается группа коммутации «group 1». На ней включается поддержка стандартного "stp" протокола и устанавливается "stp" приоритет коммутатора равный 36864.


switch group 1 add eth0 rf5.0
switch group 1 stp priority 36864
switch group 1 stp on
switch group 1 start
В процессе распределения пакетов данных по группам коммутации группы просматриваются в порядке появления их в конфигурации. Выбирается первая группа, правилам которой удовлетворяет пакет, на этом просмотр заканчивается. Данная команда позволяет изменить порядок следования групп. Она указывает, в каком порядке определенная группа будет просматриваться при распределении. 


switch group ID order N
switch group 1 addpri 15

Команды управления интерфейсом

Команда используется для ограничения количества MAC-адресов, доступных через указанный сетевой интерфейс. При превышении указанного лимита, новые MAC-адреса не будут вноситься в таблицу обучения коммутатора, и весь трафик с этих адресов будет блокирован.

Синтаксис:

switch interface IFNAME mac-limit N

Команды управления правилами коммутации

Правила коммутации применяются для:

  • Определение подходящей коммутационной группы при приеме пакета через интерфейсы eth*. Пакет, принятый через такой интерфейс, будет коммутироваться только такой группой, коммутационным правилам которой удовлетворяет данный пакет.
  • Когда пакет прошел отбор коммутационной группой и группа принимает решение о необходимости отправки данного пакета через выбранный интерфейс. Через этот интерфейс пакет будет отправлен только если он удовлетворяет коммутационным правилам данного интерфейса.

Правила коммутации представляют собой перечень правил (rules) и решение по умолчанию (deny/permit). Каждое правило состоит из порядкового номера, условия и решения (deny/permit). При просмотре списка определяется, удовлетворяет ли пакет условию текущего правила. Если удовлетворяет, то в отношении данного пакета принимается решение этого правила. Иначе продолжается просмотр списка правил далее. Порядок просмотра правил производится в соответствии с их порядковыми номерами, по возрастанию. Если пакет не удовлетворяет условию ни одного из правил, то принимается решение по умолчанию данной группы или интерфейса. Решение по умолчанию "deny" означает, что такой пакет не удовлетворяет данным правилам коммутации.

Условие правил состоит из одного или более элементов, сопоставляемым со следующими параметрами пакета:

  1. интерфейс через который осуществляется отправка пакета (iface);
  2. MAC-адрес источника пакета (src);
  3. MAC-адрес получателя (dst);
  4. метка VLAN (vlan);
  5. номер протокола уровня Ethernet (proto).

В каждом элементе условия указывается имя списка допустимых значений соответствующего параметра пакета. Кроме того, в условии может присутствовать выражение, записанное на языке фильтров PCAP (tcpdump). Это выражение рассматривается как псевдо-параметр пакета и называется "match". Таким образом, пакет признается удовлетворяющим условию, если все его параметры принадлежат соответствующим спискам допустимых значений параметра, а весь пакет в целом удовлетворяет выражению "match". Если в условии отсутствует элемент для какого-либо параметра пакета, то данный параметр пакета,  вне зависимости от своего значения, считается удовлетворяющим такому условию. Если же список допустимых значений, указанный в элементе условия оказался пустым, то никакое значение соответствующего параметра не может удовлетворить условию, даже если данный параметр отсутствует в пакете (например, vlan tag).

Синтаксис:

switch {group ID | interface IFNAME} rule NUMBER
       [set NEWNUMBER] [not]
       [src   LIST] [dst   LIST] [vlan  LIST]
       [iface LIST] [proto LIST] [match LIST]
       [ setpri|addpri PRIO ] [qmch CHAN]
       [ deny | permit ] [ remove ]

Параметры

ПараметрОписание
ID и IFNAMEНомер группы или интерфейса.
NUMBERПорядковый номер правила
set NEWNUMBERКоманда изменения номера правила на NEWNUMBER

remove

Команда удаления правила данного правила.

src, dst, vlan, iface, proto, match

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

deny | permit

Команда установки соответствующего решения данного правила

setpri|addpri PRIO

Данная команда возможностью устанавливать/повышать приоритет пакетов принятых конкретным правилом классификации. Параметр "setpri" явно изменяет приоритет на указанный в команде. При использовании значения -1, у пакета сбрасывается его приоритет. Параметр "addpri" изменит приоритет только в том случае, если вновь устанавливаемый приоритет выше, чем уже имеющийся у пакета (чем меньше число, тем выше приоритет). То есть с помощью параметра addpri приоритет можно только повысить.

{deny | permit }

Для установки решения по умолчанию для коммутационных правил применяется команда:

Примеры

switch list MACGROUP1 mac add 00:01:02:03:04:05 00:11:12:13:14:15
switch list VGROUP numrange add 10 20-30 40
switch list IP_NET3845 match add ‘arp net 195.38.45.64/26 || ip net 195.38.45.64/26’
switch group 5 rule 10  src MACGROUP1 vlan VGROUP match IP_NET3845 deny
switch group 5 rule 20   dst MACGROUP1 vlan VGROUP match IP_NET3845 deny
switch group 1 rule 1 setpri 10

В указанном примере можно наблюдать следующее:

создаются три группы коммутации.

  1. В группе коммутации 5 создается правило 10, в котором запрещены пакеты с mac адресами источника пакета (указанные в группе MACGROUP1), находящиеся в определенных VLAN (список VLAN ID находится в группе VGROUP и состоит из 10, 40 и диапазона от 20 до 30 включительно), в том случае, если это IP и ARP-пакеты, принадлежащие сети, указанной в списке IP_NET3845.
  2. В группе коммутации 5 создается правило 20, в котором запрещены пакеты с mac адресами получателя пакета (указанные в группе MACGROUP1), находящиеся в определенных VLAN (список VLAN ID находится в группе VGROUP и состоит из 10, 40 и диапазона от 20 до 30 включительно), в том случае, если это IP и ARP-пакеты, принадлежащие сети, указанной в списке IP_NET3845.
  3. В группе коммутации 1 пакетам устанавливается приоритет 10.

Команды управления

Синтаксис:

switch resynchronize
switch trace { off | on | verbose | filter "pcap expr"}
switch stptrace { off | on }
switch stpblock { off | on }
switch {dump [WILDCARD]|MACADDRESS}
switch igmp[-snooping] dump [name] [detail]
switch {start|stop|restart|destroy|dead-interval DEAD_INTERVAL}
switch statistics [(clear|help|ID)]
switch maxsources (MAXSOURCES|0) # default 5000

Описание команд

ПараметрОписание

switch resynchronize

Производит принудительную перезагрузку содержимого списка допустимых значений, источником данных которых был указан file.

switch trace { off | on | verbose | filter "pcap expr"}

Включает/выключает запись в системный log диагностической информации.

  • verbose” - позволяет записать более детальную информацию
  • filter “pcap expr” - позволяет проследить процесс обработки коммутатором пакетов заданного типа.

switch stptrace { off | on }

 
Данная команда с помощью параметров "off / on" выключает или включает вывод служебной информации STP, такой как изменение состояния портов, изменение связей, в системный журнал (sys log). По умолчанию выключено.

switch stpblock { off | on }

«Stpblock on» предотвращает сквозную коммутацию STP фреймов, если поддержка STP на устройстве отключена. Чтобы разрешит сквозную коммутацию STP фреймов используется команда «stpblock off».

База данных МАС адресов коммутатора (БДК) – это таблица маршрутизации MAC уровня, содержащая информацию о способе доставки пакета до адресата назначения (dst). Каждая коммутационная группа имеет независимую БДК. Записи в таблице образуются автоматически на основании адресата источника пакета, принятого одним из интерфейсов коммутационной группы. Кроме того БДК всегда содержит записи соответствующие MAC адресам интерфейсов коммутационной группы. Эти записи называются локальными. Каждая запись, кроме локальной, имеет «время жизни».

switch dead-interval <DEAD_INTERVAL_IN_SECONDS>

«Время жизни» записи. В случае, если ни один из интерфейсов за указанный интервал времени не принял ни одного пакета с адресата источника соответствующего данной записи БДК, то данная запись удаляется из базы данных. По умолчанию равно пяти минутам.

switch {start | stop | restart}

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

switch {destroy}

Для удаления конфигурации коммутатора используется команда:

switch statistics [(clear|help|ID)]

Следующая команда отображает статистику работы коммутатора.

Показывается информация по отправленным, отброшенным и flood-пакетам, а также по записям таблицы MAC-адресов коммутатора (DB Records). Статистика по "unicast", "broadcast" и "flood" пакетам ведется отдельно.

Опция “clear” позволяет обнулить статистику, а опция “help” показывает пояснения названий причин отбрасывания пакетов, которые используются в выводе статистики.

Если в команде указан идентификатор коммутационной группы, статистика будет отображена для этой группы, с разделением по всем входящим в нее VLAN.

switch maxsources (MAXSOURCES|0)

Для ограничения таблицы MAC-адресов коммутатора используется следующая команда

Количество записей по умолчанию равно 5000. При использовании значения “0”, устанавливается минимально допустимое значение равное 500.


Например, указанные ниже команды позволяют проследить в системном журнале процесс обработки коммутатором пакетов, предназначаемых для MAC 00:11:22:33:44:55 (в первом случае) и подсети 1.2.3.0/24 (во втором случае)

sw trace filter "ether host 00:11:22:33:44:55"
sw trace filter "net 1.2.3.0/24"

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

Здесь созданы три коммутационные группы. Группой 5 коммутируются пакеты c VLAN тэгами 10, 20-30 и 40. Группой 15 коммутируются пакеты с любым VLAN тэгом, кроме коммутируемых группой 5. Группой 25 коммутируются любые пакеты без VLAN тэга. Кроме того, группой 25 будут передаваться межкоммутаторный трафик.

switch list VGROUP numrange add 10 20-30 40

switch list ALL_VLAN numrange add 0-4095

switch group 5 add eth0 rf5.0
switch group 5 rule 10 vlan VGROUP permit
switch group 5 deny
switch group 5 start

switch group 15 add eth0 rf5.0
switch group 15 rule 10 vlan VGROUP deny
switch group 15 rule 11 vlan ALL_VLAN permit
switch group 15 deny
switch group 15 start

switch group 25 add eth0 rf5.0
switch group 25 rule 10 vlan ALL_VLAN deny
switch group 25 permit
switch group 25 start
switch start
  • No labels