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



Зеркалирование трафика (mirroring) - точное дублирование отправленных/полученных данных портом либо CPU коммутатора. Зеркалирование ведет корни из принципа работы концентраторов, трафик на одном порту которых дублировался во все остальные. Сейчас зеркалирование крайне полезно при диагностике проблем как в самой сети, так и у её пользователей, также находит применение для организации СОРМ.

На коммутаторах SNR функция реализована через мониторинговые сессии (monitor session). Их можно снимать с входящего, исходящего трафика, а также с обоих направлений одновременно. В качестве source можно указать как один, так и несколько интерфейсов:

monitor session 1 source interface ethernet <if_list> {rx | tx | both}

Также можно дублировать трафик и из CPU коммутатора:

monitor session 1 source cpu {rx | tx | both}

Важно!

Один и тот же порт не может быть назначен как source для разных сессий!

Важно!

На моделях серии S2990G дублирование трафика с CPU поддерживается только monitor session 4.

Одновременно можно создать не более 4 мониторинговых сессий.

По типу интерфейса\адреса назначения выделяются сессии SPAN, RSPAN, ERSPAN. Рассмотрим каждый тип по отдельности.

SPAN


Трафик из зеркала отправляется в конкретный порт коммутатора или стека.

Для настройки такой сессии в дополнение к источнику необходимо указать лишь интерфейс назначения, после чего коммутатор начнет дублировать в данный порт трафик интерфейсов, указанных в качестве Source:

monitor session 1 destination interface ethernet <if_name>

RSPAN

Remote SPAN позволяет доставить трафик на удаленный коммутатор с помощью Remote VLAN.

!
monitor session 1 destination interface ethernet <if_name>
monitor session 1 remote vlan <VLAN_id>
!

В этом случае коммутатор отправит в зеркало трафик с тегом (VLAN_id). Далее его можно передать по сети, пробросив через транзитные коммутаторы Remote SPAN VLAN. Например:

!
vlan <vlan_id>
 remote-span
!

Важно!

На сериях S2962, S2965, S2982G, S2985G зеркалируемый RX трафик не может быть отправлен в Source Interface с помощью RSPAN. В таком случае необходимо использовать Remote SPAN VLAN + Reflector Port.

Remote SPAN VLAN - это VLAN, в котором коммутатор не изучает MAC-адреса и направляет трафик во все порты, куда выдан Remote SPAN VLAN. Если требуется использовать в качестве Destination несколько интерфейсов, можно вместе с Remote SPAN VLAN использовать Reflector port - физический интерфейс, который сымитирует прием зеркалируемого трафика. В качестве Reflector port должен быть выбран незанятый порт на коммутаторе. Если при этом добавить RemoteSPAN VLAN в несколько портов коммутатора - трафик продублируется и в них.

В этом случае необходимо Remote SPAN VLAN указать в мониторинговой сессии в качестве Remote VLAN, а также добавить его на Reflector port в Trunk:

!
vlan <vlan_id>
 remote-span
!
interface <if_name>
 switchport mode trunk
 switchport trunk allowed vlan <vlan_id>
!
monitor session 1 remote vlan <vlan_id>
monitor session 1 reflector-port ethernet <if_name>
!

Подобным образом можно зеркалировать трафик и в Port-Channel (напрямую в качестве Destination его выбрать нельзя): достаточно добавить Remote SPAN VLAN на интерфейсы в Port-Channel.

К трафику в зеркале c Remote SPAN VLAN добавится его тег, даже если этот трафик уже был тегированный, поэтому рекомендуем увеличить MTU на коммутаторе на 4 (по умолчанию до 1504).

ERSPAN


Encapsulated Remote SPAN поддерживают модели серий S300G и S4550  - зеркалируемый трафик инкапсулируется в GRE и может быть отправлен на указанный IP-адрес.

Достаточно создать GRE-туннель и указать туннельный интерфейс в качестве Destination:

monitor session 1 destination tunnel <tunnel_num>

Фильтрация трафика в зеркале

С помощью ACL можно фильтровать зеркалируемый трафик до передачи в зеркало. Поддерживаются как IP ACL, так и MAC ACL:

monitor session 1 source interface ethernet <if_name> access-list <acl_name> rx

Правила Deny в таком ACL не работают, но все, что не разрешено, будет запрещено. Если нужно исключить из сессии определенный трафик, нужно исходить от обратного - разрешить все остальное.

ACL можно применить лишь на RX. Если необходимо применить ACL на трафик TX по отношению к зеркалируемому порту, можно также пойти от обратного: задать в качестве Source с ACL те порты, откуда этот трафик может приходить на коммутатор.