Фильтрация µTP (Micro Transport Protocol) во FreeBSD, используя ng_ipfw и ng_bpf

В связи с тем, что в новой версии популярного торрент клиента µTorrent была включена поддержка протокола µTP, значительно выросло количество транзитных пакетов на пограничных маршрутизаторах. Было принято решения заблокировать паразитный трафик.

#!/bin/sh
/usr/sbin/ngctl mkpeer ipfw: bpf 2 main

/usr/sbin/ngctl name ipfw:2 utp_filter
/usr/sbin/ngctl msg utp_filter: setprogram { thisHook=\"main\" ifMatch=\"\" ifNotMatch=\"main\" bpf_prog_len=12 bpf_prog=[ { code=48 jt=0 jf=0 k=0 } { code=84 jt=0 jf=0 k=240 } { code=21 jt=0 jf=8 k=64 } { code=48 jt=0 jf=0 k=9 } { code=21 jt=0 jf=6 k=17 } { code=40 jt=0 jf=0 k=6 } { code=69 jt=4 jf=0 k=8191 } { code=177 jt=0 jf=0 k=0 } { code=64 jt=0 jf=0 k=20 } { code=21 jt=0 jf=1 k=2147483647 } { code=6 jt=0 jf=0 k=65535 } { code=6 jt=0 jf=0 k=0 } ] }

/sbin/ipfw add 2 netgraph 2 udp from any to any iplen 0-128

Описание протокола в Wikipedia
Оригинал записи на nag.ru

Фильтрация µTP (Micro Transport Protocol) во FreeBSD, используя ng_ipfw и ng_bpf: 1 комментарий

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *