Архив метки: QoS

Блокировка торрентов, скайпа на windows-машинах «дешёвым» методом

Торренты в корпоративной сети с одним выходом в интернет — зло. При отсутствии жестоких ограничений на количество коннектов и ограничений скорости, они могут сильно повлиять на работу интернета у остальных сотрудников. В интернете достаточно информации о блокировке торрентов на самом разном железе/софте и самыми разными способами: начиная от подробного анализа пакетов и заканчивая простой блокировкой динамических UDP и TCP портов (>1024). Ни один из способов не дает стопроцентной гарантии, кроме, возможно, использования маршрутизатора Cisco, или аналогов. Проверить их вживую пока не удалось. Все способы, так или иначе, реализуются только на шлюзе. А если посмотреть на проблему с другой стороны?…

После довольно долгого периода наблюдения за сетевым трафиком и приложениями в локальной сети, я понял, что сотрудники в 99% случаев слишком ленивы, чтобы использовать клиенты-торрентокачалки, отличные от utorrent. Именно этот факт позволяет легко отсечь 99% трафика торрентов. По крайней мере, он позволяет вовремя обнаружить и ограничить такой трафик. И реализуется он при помощи групповых политик. Создаем новую групповую политику и открываем в дереве следующий путь: Computer configuration -> Windows Settings-> Policy-based QoS

Policy-based QoS

Кликаем правой кнопкой по Policy-based QoS и выбираем пункт «Create new policy». Вводим имя новой политики и назначаем любое, отличное от нуля, значение DSCP (например, 1):

Policy-based QoS{tip}Лучше использовать «невалидные» с точки зрения DSCP значения, иначе можно попасть на софт, который маркирует свой «правильный» трафик теми же значениеями.{/tip}

При желании, можно сразу ограничить торрентам исходящий трафик и выставить ограничение 1 kbps. В таком случае, входящий поток тоже будет сильно ограничен (проверено опытным путем).

На следующем экране выбираем «Only applications with this executable name:» и вводим utorrent.exe (или skype.exe, если вы хотите обнаруживать трафик скайпа):

Policy-based QoS

На следующем экране оставляем все по умолчанию:

Policy-based QoS

Далее выбираем протоколы TCP и UDP и завершаем создание правила:

Policy-based QoS

После этого, трафик от процесса utorrent.exe будет маркироваться DSCP флагом «1» и его легко будет обнаружить на любом шлюзе. Действия же, по факту обнаружения, будут зависеть от внутренних политик компании — блокировать или просто наказывать за нарушение полиси.

Приоритезация трафика voip и skype на cisco asa 5510 или как мы переходили на Cisco ASA — часть 3

При большом количестве людей и отсутствии нормального, полноценного PBR (policy-based routing) на cisco asa, каким-то образом необходимо уменьшить потенциальные «тормоза» в передаче звука и видео по скайпу с компьютеров в переговорных комнатах, а также звука с ip-телефонов. Обладатели cisco-роутеров удивятся «сложности» постановки задачи. В роутерах практически любой трафик можно выделять по протоколу (match protocol skype и др.). Но не тут-то было. ASA «знает» только самые распространенные протоколы типа http, ftp и др. Также, она умеет выделять трафик по регулярным выражениям, но описать регулярными выражениями трафик скайпа довольно сложно.

Решение, в общем-то, нашлось довольно быстро. С наших IP-телефонов никакой трафик кроме голосового идти не может, поэтому приоритет будет отдаваться всему трафику с их айпишников. Для упрощения дальнейшего администрирования, самый простой способ — добавить все эти адреса в object-group.

object-group network IPPHONES
network-object host 192.168.1.25
network-object host 192.168.1.26

Далее создаем access-list:

 access-list IPPHONES extended permit ip object-group IPPHONES any

Этот access-list мы используем в class-map:

class-map IPPHONES
match access-list IPPHONES

А class-map, в свою очередь, в policy-map:

policy-map LOCAL
 class IPPHONES
  priority

Таким образом, при дополнении этого policy-map политиками ограничения скорости для других типов трафика, мы отдадим приоритет исходящему трафику с телефонов.

С трафиком скайпа в переговорных комнатах можно поступить таким же образом (выдать приоритет всему трафику), но в нашем случае нашелся более изящный вариант. В переговорных комнатах установлены компьютеры под управлением ОС Windows и они входят в домен. При помощи групповых политик можно назначать значения DSCP трафику, генерируемому конкретными приложениями. Для этого надо создать новую политику QoS (Computer Configuration -> Windows Settings -> Policy-based QoS) в новом объекте (или в одном из существующих) групповой политики и назначить эту групповую политику на необходимый нам OU. В политике QoS необходимо выставить отличное от нуля (например, 1) значение DSCP для трафика TCP и UDP, генерируемого приложением skype.exe. После этого мы можем создать class-map для выделения этого трафика из потока:

class-map SKYPE
 match dscp 1

И добавить этот класс в наш policy-map:

policy-map LOCAL
 class SKYPE
  priority

И не забываем применять policy-map к интерфейсу:

 service-policy LOCAL interface LOCAL

В итоге мы получаем минимальные задержки для интересующего нас трафика довольно простыми методами.