Ищете возможность анализировать сетевой трафик/отправлять его на систему записи телефонных разговоров? Изи. Коммутаторы Cisco (да и многие другие) дают возможность копировать пакеты с определенного порта или VLAN и отправлять эти данные на другой порт для последующего анализа (Wireshark, например).
Кстати, этот функционал полезен при использовании IDS (Intrusion Detection System) систем в целях безопасности. Мы уже рассказывали теоретические основы SPAN/RSPAN, поэтому, сегодняшняя статья будет посвящена практике настройке.
Про настройку SPAN
В рамках обычной SPAN сессии захват (копирование) сетевого трафика происходит с порта источника (source port) и отправляется на порт назначения (destination port). Обратите внимание на пример ниже: мы сделаем SPAN – сессию с порта fa 0/1 и отправим данные на порт fa 0/5:
Важно! SPAN – сессия может работать только в рамках одного коммутатора (одного устройства).
Конфигурация:
switch# configure terminal switch(config)# monitor session 1 source interface fa0/1 switch(config)# monitor session 1 destination interface fa0/5
Просто, не правда ли? В рамках данной конфигурации весь трафик с порта fa 0/1 будет скопирован на порт fa 0/5.
Интереснее: пример RSPAN
Идем вперед. Более продвинутая реализация зеркалирования трафика это RSPAN (Remote SPAN). Эта фича позволяет вам зеркалировать трафик между различными устройствами (коммутаторами) по L2 через транковые порты. Копия трафика будет отправляться в удаленный VLAN между коммутаторами, пока не будет принята на коммутаторе назначения.
На самом деле, это легко. Давайте разберемся на примере: как показано на рисунке, мы хотим копировать трафик с коммутатора №1 (порт fa 0/1) и отправлять трафик на коммутатор №2 (порт fa 0/5). В примере показано прямое транковое подключение между коммутаторами по L2. Если в вашей сети имеется множество коммутаторов между устройствами источника и назначения – не проблема.
Конфигурация:
//Настройки на коммутаторе источнике switch_source# config term switch_source(config)# vlan 100 //Создаем Remote VLAN на первом коммутаторе (в который будем передавать данные с source порта) switch_source(config-vlan)# remote span switch_source(config-vlan)# exit switch_source(config)# monitor session 10 source interface fa0/1 switch_source(config)# monitor session 10 destination remote vlan 100 //Настройки на коммутаторе получателе switch_remote# config term switch_remote(config)# vlan 100 //Создаем Remote VLAN на втором (удаленном) коммутаторе (в который будем передавать данные с source влана уже на порт назначения) switch_remote(config-vlan)# remote span switch_remote(config-vlan)# exit switch_remote(config)# monitor session 11 source remote vlan 100 switch_remote(config)# monitor session 11 destination interface fa0/5
Таким образом, весь трафик с интерфейса fa 0/1 на локальном коммутаторе (источнике) будет отправлен в vlan 100, и, когда коммутатор получатель (remote) получит данные на 100 VLAN он отправит их на порт назначения fa 0/5. Такие дела.
Party Hard: разбираемся с ERSPAN
ERSPAN (Encapsulated Remote Switched Port Analyzer) - фича, которая используется для копирование трафика в L3 сетях. В основе работы механизма лежит GRE инкапсуляция.
Как показано ниже, между коммутатором источником и коммутатором получателем устанавливается GRE – туннель (между IP – адресами машин). Опять же, мы хотим отправить трафик с порт fa 0/1 на порт fa 0/5.
Конфигурация:
//Настройки на коммутаторе источнике switch_source(config)# monitor session 1 type erspan-source switch_source(config-mon-erspan-src)# source interface fa0/1 switch_source(config-mon-erspan-src)# destination switch_source(config-mon-erspan-src-dst)# erspan-id 111 //Это значение должно быть одинаковым на всех устройствах switch_source(config-mon-erspan-src-dst)# ip address 192.168.1.5 //IP - адрес коммутатора получателя switch_source(config-mon-erspan-src-dst)# origin ip address 192.168.2.5 //IP - адрес коммутатора отправителя (источника) //Настройки на коммутаторе получателе switch_remote(config)# monitor session 1 type erspan-destination switch_remote(config-mon-erspan-dst)# destination interface fa0/5 switch_remote(config-mon-erspan-dst)# source switch_remote(config-mon-erspan-dst-src)# erspan-id 111 switch_remote(config-mon-erspan-dst-src)# ip address 192.168.1.5 //IP - адрес коммутатора получателя (назначения)
Траблшутинг
Мониторинг трафика в указанном VLAN:
monitor session 1 source vlan 13
Мониторинг входящего или только исходящего трафика:
monitor session 1 source vlan 13 rx/tx
Посмотреть конфигурацию сессии зеркалирования:
show monitor session 1