Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
dpi:qoe:use_cases:dpi_tzsp [2023/08/25 12:58] – ↷ Операцией перемещения обновлены ссылки elena.krasnobryzh | dpi:qoe:use_cases:dpi_tzsp [2024/04/25 07:26] (текущий) – удалено elena.krasnobryzh | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Cбор статистики с удаленных точек через TZSP ====== | ||
- | {{indexmenu_n> | ||
- | ===== Зеркалирование трафика для анализа на СКАТ с удаленного маршрутизатора Mikrotik ===== | ||
- | Задача: | ||
- | {{ dpi: | ||
- | |||
- | Mikrotik умеет отдавать копию абонентского трафика по протоколу TZSP, который используется для переноса в себе других протоколов. | ||
- | Для приема копии трафика будем использовать сам сервер СКАТ (возможно использовать отдельный сервер). | ||
- | |||
- | Настраиваем Mikrotik для отдачи копии трафика: | ||
- | {{ dpi: | ||
- | Переходим к настройке сервера для приема TZSP и перенаправления пакетов на интерфейс DNA. | ||
- | |||
- | < | ||
- | yum install git libpcap-devel tunctl screen | ||
- | cd /opt/ | ||
- | git clone https:// | ||
- | cd / | ||
- | make | ||
- | cp tzsp_tap /usr/bin/ | ||
- | </ | ||
- | |||
- | Создаем tap interface | ||
- | < | ||
- | |||
- | Запускаем прием пакетов с Mikrotik и перенаправление его на tap интерфейс: | ||
- | < | ||
- | |||
- | Создаем скрипт mirror.sh для перенаправления пакетов через eth0 интерфейс: | ||
- | < | ||
- | !/ | ||
- | |||
- | trap cleanup EXIT | ||
- | |||
- | CLEANUP=1 | ||
- | SRC_IFACE=$1 | ||
- | DST_IFACE=$2 | ||
- | |||
- | function cleanup() { | ||
- | if [ $CLEANUP -eq 1 ]; then | ||
- | tc qdisc del dev $SRC_IFACE ingress | ||
- | tc qdisc del dev $SRC_IFACE root | ||
- | fi | ||
- | echo | ||
- | } | ||
- | |||
- | if [ $# -lt 2 ]; then | ||
- | echo " | ||
- | CLEANUP=0 | ||
- | exit 1 | ||
- | fi | ||
- | |||
- | echo | ||
- | echo " | ||
- | |||
- | # ingress | ||
- | tc qdisc add dev $SRC_IFACE ingress | ||
- | tc filter add dev $SRC_IFACE parent ffff: \ | ||
- | protocol all \ | ||
- | u32 match u8 0 0 \ | ||
- | action mirred egress mirror dev $DST_IFACE | ||
- | |||
- | # egress | ||
- | tc qdisc add dev $SRC_IFACE handle 1: root prio | ||
- | tc filter add dev $SRC_IFACE parent 1: \ | ||
- | protocol all \ | ||
- | u32 match u8 0 0 \ | ||
- | action mirred egress mirror dev $DST_IFACE | ||
- | |||
- | echo "Hit Ctrl-C or kill this session to end port mirroring" | ||
- | sleep infinity | ||
- | |||
- | trap - EXIT | ||
- | cleanup | ||
- | exit 0 | ||
- | </ | ||
- | |||
- | Запускаем его в screen: | ||
- | < | ||
- | chmod u+x mirror.sh | ||
- | screen | ||
- | mirror.sh tap0 eth0 | ||
- | </ | ||
- | Ctrl+a+d для сворачивания screen. | ||
- | |||
- | Если нет возможности соединить интерфейсы на прямую, | ||
- | |||