Индикатор TTL для M1 и других таймфреймов с отзывами


Настройка роутера Zyxel Keenetic Lite будет происходить через веб интерфейс, позволяющий провести тонкую подстройку всех необходимых параметров. Чтобы войти в веб интерфейс необходимо в любом браузере компьютера (Opera, Internet Explorer, Mozilla) в адресной строке перейти по адресу: https://192.168.1.1

(адрес маршрутизатора Zyxel Keenetic Lite по умолчанию).

Для входа в веб интерфейс потребуется ввести имя пользователя и пароль. По умолчанию: имя пользователя — admin

, пароль —
1234
. Появится диалоговое окно.

Появится диалоговое окно, в котором можно увидеть общую информацию о работе основных интерфейсов маршрутизатора: LAN, WAN и беспроводного — Wi-Fi интерфейса. В поле «Система»

отражается информация о степени загрузки процессора маршрутизатора, а также сведения о потреблении оперативной памяти.

В левой части страницы выбираем «Интернет»
→ «Подключение»
.

В поле «Настройка параметров IP»

необходимо активировать опцию
«Автоматическая»
и отметить галочкой
«Получать адреса серверов DNS автоматически»
.

В поле «Использовать MAC-адрес»

можно занести особое значение MAC-адреса (физического адреса) для роутера Keenetic Lite. Данная опция позволяет избежать звонков в компанию в случае смены сетевого оборудования.

Вариант «По умолчанию»

оставит роутер ZyXel Keenetic с «родным» MAC адресом. Вариант
«Взять с компьютера»
, позволит присвоить МАС-адрес сетевой карты того компьютера, с которого в данный момент настраивается маршрутизатор. Это избавит от необходимости вводить значение МАС-адреса вручную (полезно, если данный компьютер и был подключен к Интернету до установки интернет-центра). С помощью опции
«Установить»
ввести другое значение МАС-адреса можно вручную.

Для регистрации «родного» MAC-адрес роутера необходимо совершить звонок в компанию.

Пункт «Отвечать на Ping-запросы из Интернета»

позволит маршрутизатору оставаться «видимым» для технической поддержки провайдера. Это необходимо для настройки удаленного доступа.

Авто-QoS

— активирует систему приоритета полезного исходящего

TTL


Time To Leave
, время жизни сетевых пакетов. При прохождении шлюза TTL уменьшается на 1. Некоторые провайдеры проверяют TTL для предотвращения использования маршрутизаторов в своей сети. Именно для таких случаев и предусмотрена настройка
«Не уменьшать TTL»
.

Разрешить
UPnP
— включает возможность автоматической настройки Интернет-приложений для их беспрепятственной работы через NAT маршрутизатора (ставим галочку!!!).

Для сохранения параметров маршрутизатора необходимо нажать кнопку «Применить»

.

Проверить работоспособность можно в поле «Монитор»

.

TTL — что это такое? TTL расшифровывается как Time to Live. То есть время жизни пакета, отведённое ему в момент перехода от начального узла к конечному. В стандарте IPv4 для отражения TTL выделено восьмиразрядное поле в заголовке. Проходя через многочисленные узлы к адресату, значение пакета каждый раз уменьшается на 1 единицу. Это сделано с целью ограничить время его присутствия в узлах конкретным числом. А это, в свою очередь, позволяет избежать перегрузок в сетях.

Что произойдёт, если значение TTL достигнет нуля? Пакет исчезнет, и отправитель получит сообщение о том, что время жизни его истекло, а значит, нужно попытаться снова. Максимальное значение, которое способно отразить восьмиразрядное поле, составляет 255. Для операционных систем есть значения по умолчанию. Например TTL в Windows равен 128, а в Linux и производных — Mac, Android — 64.

В среде DNS имеется свой TTL, и он отражает актуальность кэшированных данных. Но речь в статье будет не о нем.

Для чего применяется TTL и в каких сферах

Время жизни пакета активно используют различные провайдеры интернета, например Yota. Тем самым они пытаются ограничить доступ к потреблению чрезмерного трафика при раздаче Wi-Fi. Это происходит за счет того, что пакет, переходя от устройства, получающего трафик на раздающее, уменьшает TTL, в итоге к провайдеру приходит значение меньше или в случае с Windows больше ожидаемого.

Для примера можно описать процесс работы смартфона на базе «Андроида». Устройство отправляет запрос на получение данных с определенного сайта. Вместе с ним посылается TTL, значение которого 64. Провайдер знает, что это стандартная для данного устройства цифра времени жизни пакета, поэтому свободно позволяет ему получать доступ к Сети.

Теперь устройство начинает раздавать Wi-Fi и становится своего рода маршрутизатором. Подключившийся смартфон работает на платформе Windows, и его TTL, пройдя через раздающее устройство, будет 127. Провайдер встретит этот пакет и поймет, что его интернет раздается. Поэтому и заблокирует содиненение.

Возможности изменения TTL на различных устройствах

Изменение значения времени жизни пакета может пригодиться для обхода блокировки трафика провайдером. Например, если отключили кабельное подключение, а пользователю нужно срочно выйти в интернет с компьютера. Тогда смартфон становится точкой доступа и выводит ПК в сеть.

Стоит отметить, что некоторые провайдеры блокируют доступ не только по TTL, но и отслеживают посещение сайтов. И если ресурс никак не связан со смартфоном, т. е. не нужен ему, соединение обрывается.

Изменить TTL можно несколькими способами, которые будут описаны далее.

Базовые допущения GTSM

Работа GTSM основана на нескольких допущениях, перечисленных ниже.

  1. Большая часть партнерских отношений организуется между соседними (смежными) маршрутизаторами.
  2. Сервис-провайдеры могут использовать или не использовать строгую входную фильтрацию [RFC3704] на недоверенных каналах. Если требуется максимальная защита, такая фильтрация нужна (см. параграф 2.2).
  3. Использование GTSM является необязательным

    и может настраивается на уровне отдельных пар партнеров.

  4. Оба маршрутизатора-партнера поддерживают GTSM.
  5. Маршрутизатор поддерживает метод разделения ресурсов (очередей, квот на обработку) для разных типов трафика.

Отметим, что в этом документе не описываются дополнительные ограничения, которые маршрутизаторы могут применять к пакетам, не соответствующим правилам фильтрации GTSM, типа отбрасывания пакетов, не соответствующих ни одной из заданных в конфигурации сессий, и ограничение скорости для остальных пакетов. Этот документ также не предполагает способов разделения ресурсов, поскольку такие способы зависят от оборудования и реализации.

Однако возможность предотвращения DoS-атак4 основана на допущении о классификации пакетов и разделении их путей до того, как пакет начнет использовать дефицитный ресурс системы. На практике четкая GTSM со скоростью среды передачи обеспечивает наибольшую устойчивость систем к DoS-атакам.

2.1. Согласование GTSM

В этом документе предполагается, что при использовании существующих протоколов GTSM будет вручную настраиваться для каждой пары протокольных партнеров. Т. е., не предполагается и не определяется способов автоматического согласования GTSM, типа определенных в RFC 3392 [RFC3392].

Если новый протокол разрабатывается со встроенной поддержкой GTSM, рекомендуется всегда использовать этот механизм для передачи пакетов и проверки полученных пакетов (механизм GTSM всегда включен, см., например, [RFC2461]). Однако, если требуется динамическое согласование GTSM, протокольные сообщения, используемые для такого согласования, должны

аутентифицироваться с использованием других механизмов защиты для предотвращения DoS-атак.

Отметим также, что в данной спецификации не предлагается базового механизма согласования возможностей GTSM, поэтому необходимо использовать протокольные сообщения с добавлением GTSM, если динамическое согласование представляется необходимым.

2.2. Оценка изощренности атак

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

Предполагается также, что каждый маршрутизатор на пути между атакующим и объектом атаки корректно уменьшает значение TTL (естественно, что при компрометации пути или смежного партнера, ситуация ухудшается).

Для обеспечения максимальной защиты следует использовать фильтрацию пакетов на входе до того, как пакет начнет использовать дефицитный ресурс. В противном случае атакующий, подключенный непосредственно к интерфейсу, сможет нарушить работу защищенной с помощью GTSM сессии на этом или другом интерфейсе. Интерфейсы, для которых такая фильтрация не настроена (например, магистральные каналы) предполагаются недоступными для таких атак (т. е. расположенными в доверенной среде).

В качестве конкретного примера такого интерфейса мы полагаем, что туннель не имеет «черного хода», который позволил внедрять пакеты протокола с подставным TTL в защищенную GTSM сессию с непосредственно подключенным соседом. Предполагается, что 1) нет туннелируемых пакетов, адресованных маршрутизатору, 2) туннели, завершающиеся на маршрутизаторе, считаются защищенными, а конечные точки — доверенными, 3) декапсуляция туннеля включает предотвращение подмены адреса отправителя [RFC3704], 4) поддерживающие GTSM сессии не позволяют протокольным пакетам приходить из туннеля.

Поскольку основные преимущества партнерства реализуются между смежными маршрутизаторами, мы можем установить для пакетов протокола значение TTL = 255 (максимальное значение для IP) и отбрасывать пакеты протокола, которые приходят от партнера со значением TTL не равным

255.

GTSM можно отключить для отдельных приложений типа маршрутных серверов или иных случаев партнерства через несколько интервалов маршрутизации. В этом случае атака, ведущаяся через скомпрометированное соединение, может полностью нарушить партнерство через это соединение.

Изменение TTL на устройствах на платформе «Андроид»

Самым простым способом изменения времени жизни пакета на устройствах «Андроид» будет использование специализированного программного обеспечения. Например, очень эффективный продукт — TTL Master. Он может изменить время жизни пакета раздающего аппарата на то, которое получается в результате прохода данных. Например, при раздаче Wi-Fi на устройство с Windows нужно установить значение 127, а на Андроид или Linux — 63.

Программа бесплатна, и ее легко можно найти в официальном магазине Google Play. Однако для ее функционирования требуются права root на устройстве.

Интерфейс программы прост — в верхней части отображено текущее значение параметра. Чуть ниже расположены заготовки для операционных систем Windows и остальных. Также можно установить желаемое значение вручную. Чуть ниже находится кнопка с возможностью перейти из приложения сразу в настройки модема. В некоторых версиях доступно решение через iptables, для чего есть определённый пункт.

В настройках есть возможность установить запуск и смену времени жизни автоматически при загрузке устройства. Некоторые версии «Андроида» позволяют произвести сразу после смены значения запуск точки доступа. Есть поддержка русского языка.

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

Также можно попробовать метод изменения системных файлов вручную для смены значения времени жизни пакета. Для этого понадобятся root-права. Сначала надо перейти в режим полета, то есть сделать так, чтобы телефон потерял Сеть.

Затем воспользоваться любым проводником, который способен редактировать файлы. В нем надо перейти по пути proc/sys/net/ipv4. В этом каталоге интересует файл с именем ip_default_ttl. Он содержит значение 64, которое нужно изменить на 63.

Далее нужно вывести телефон из режима полета, чтобы он снова зарегистрировался в Сети. Теперь можно раздать беспроводной интернет и попробовать подключить устройство на базе iOS или «Андроида», то есть с TTL 64.

Если необходимо использовать в качестве одного из клинетов ПК с Windows, то нужно будет установить постоянное значение времени жизни пакета способом, описанным ниже.

Смена TTL на компьютере с операционными системами Windows

Если нужно раздать интернет со смартфона под управлением Windows, то придется немного подкорректировать значения реестра. Этот способ будет актуален, когда телефон не имеет рут и обойти блокировку на нем не получается.

Запуск реестра в линейке операционных систем можно осуществить через пункт меню «Пуск» «Выполнить». В нем надо ввести Regedit и нажать ОК. В открывшемся окне появятся две области. В левой находится древовидная структура, а в правой — значения. Нужно найти ветку HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\Tcpip\Parameters. Для Windows 8 Tcpip может быть заменён на Tcpip6.

В окне со значениями надо создать новое. Это делается щелчком правой кнопкой мыши. В контекстном меню выбирается «Создать», затем новый параметр DWORD, и присваивается название Default TTL. Что это? Это будет статичный параметр для постоянного значения времени жизни. Затем снова щелчок правой кнопкой, и выбрать «Изменить». Тип счисления должен быть десятичным, а значение — 65. Таким образом, система будет передавать время жизни пакета в 65, то есть на один больше чем у «Андроида». То есть, проходя сквозь смартфон, он потеряет одну единицу, и провайдер не заметит подвоха. После внесённых изменений нужно перезагрузить компьютер.

Теперь можно раздавать интернет на «Андроид», не используя особых программных средств и приспособлений.

Изменение времени жизни пакета на модемах

Изменить TTL модема можно с помощью смены IMEI. Это такой идентификационный код, уникальный для каждого устройства, имеющего доступ к сотовым сетям. Вся проблема в том, что универсального способа нет. Это связано с тем, что для каждого отдельно взятого модема должна быть своя прошивка, которая сменит IMEI.

На сайте 4PDA имеется подборка решения для смены времени жизни на модемах от разных производителей и моделей. Также там можно найти подробные реализации данной задачи.

Введение

Обобщенный механизм защиты на базе TTL (GTSM2) разработан для защиты базирующейся на протоколе IP инфраструктуры управления маршрутизаторами от атак, основанных на перегрузке CPU. Хотя использование криптографических методов может защитить инфраструктуру маршрутизации (например, BGP [RFC4271], [RFC4272]) от широкого класса атак, многие атаки, нацеленные на перегрузку CPU, можно предотвратить с помощью простого механизма, описываемого в этом документе. Отметим, что такой же метод используется для защиты от других атак, направленных на истощение ресурсов, включающих процессоры маршрутизаторов, таких как атаки с перегрузкой шины подключения процессорной платы.

Работа GTSM основана на том, что в большинстве протоколов партнерские отношения организуются между смежными маршрутизаторами. Т. е. в большинстве случаев партнеры соединены напрямую между их интерфейсами или, в худшем случае, используют для соединения петлевые интерфейсы (loopback) со статическими маршрутами. Поскольку подмена3 TTL считается почти невозможной, механизм основанный на ожидаемом значении TTL, может обеспечивать простую и достаточно отказоустойчивую защиту от атак на инфраструктуру, основанных на использовании обманных пакетов, передаваемых извне. Отметим, однако, что GTSM не является заменой механизмов аутентификации. В частности, этот метод не обеспечивает защиты от внутренних атак, связанных с доступом к каналам (например, с использованием обманных пакетов или повторным использованием собранных пакетов).

Механизм GTSM одинаково применим к TTL (IPv4) и Hop Limit (IPv6). Более того, с точки зрения GTSM семантика TTL и Hop Limit идентична. Поэтому в оставшейся части документа термин «TTL» используется для обозначения как TTL, так и Hop Limit.

Ключевые слова необходимо

(MUST),
недопустимо
(MUST NOT),
требуется
(REQUIRED),
нужно
(SHALL),
не нужно
(SHALL NOT),
следует
(SHOULD),
не следует
(SHOULD NOT),
рекомендуется
(RECOMMENDED),
возможно
(MAY),
необязательно
(OPTIONAL) в данном документе должны интерпретироваться в соответствии с [RFC2119].

Изменение TTL в MacOS

MacOS по умолчанию обладает временем жизни 64. Если требуется его изменить, нужно в терминале ввести команду: sudo sysctl -w net.inet.ip.ttl=65.

Однако при таком подходе значение после перезагрузки снова изменится на 64. Поэтому необходимо выполнить ряд манипуляций. В корне диска существует каталог etc. Он скрытый, но в него нужно попасть. Там создаётся файл sysctl.conf. В нем нужно прописать всего одну строчку — net.inet.ip.ttl=65. Ну и естественно, сохранить.

Для отображения данной скрытой папки в Findere надо перейти в основной диск и нажать сочетание клавиш cmd+shift+G. В появившемся окне вводится имя искомой папки, после чего она найдется.

Литература

7.1. Нормативные документы

[RFC0791] Postel, J., «Internet Protocol», STD 5, RFC 791, September 1981.

[RFC2003] Perkins, C., «IP Encapsulation within IP», RFC 2003, October 1996.

[RFC2119] Bradner, S., «Key words for use in RFCs to Indicate Requirement Levels», BCP 14, RFC 2119, March 1997.

[RFC2461] Narten, T., Nordmark, E., and W. Simpson, «Neighbor Discovery for IP Version 6 (IPv6)», RFC 2461, December 1998.

[RFC2784] Farinacci, D., Li, T., Hanks, S., Meyer, D., and P. Traina, «Generic Routing Encapsulation (GRE)», RFC 2784, March 2000.

[RFC3392] Chandra, R. and J. Scudder, «Capabilities Advertisement with BGP-4», RFC 3392, November 2002.

[RFC3443] Agarwal, P. and B. Akyol, «Time To Live (TTL) Processing in Multi-Protocol Label Switching (MPLS) Networks», RFC 3443, January 2003.

[RFC4213] Nordmark, E. and R. Gilligan, «Basic Transition Mechanisms for IPv6 Hosts and Routers», RFC 4213, October 2005.

[RFC4271] Rekhter, Y., Li, T., and S. Hares, «A Border Gateway Protocol 4 (BGP-4)», RFC 4271, January 2006.

[RFC4301] Kent, S. and K. Seo, «Security Architecture for the Internet Protocol», RFC 4301, December 2005.

7.2. Дополнительная литература

[BITW] «Thread: ‘IP-in-IP, TTL decrementing when forwarding and BITW’ on int-area list, Message-ID: <[email protected]>», June 2006, <https://www1.ietf.org/mail-archive/web/int-area/current/msg00267.html>.

[RFC1191] Mogul, J. and S. Deering, «Path MTU discovery», RFC 1191, November 1990.

[RFC1981] McCann, J., Deering, S., and J. Mogul, «Path MTU Discovery for IP version 6», RFC 1981, August 1996.

[RFC3032] Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, «MPLS Label Stack Encoding», RFC 3032, January 2001.

[RFC3682] Gill, V., Heasley, J., and D. Meyer, «The Generalized TTL Security Mechanism (GTSM)», RFC 3682, February 2004.

[RFC3704] Baker, F. and P. Savola, «Ingress Filtering for Multihomed Networks», BCP 84, RFC 3704, March 2004.

[RFC4272] Murphy, S., «BGP Security Vulnerabilities Analysis», RFC 4272, January 2006.

[RFC4821] Mathis, M. and J. Heffner, «Packetization Layer Path MTU Discovery», RFC 4821, March 2007.

Выводы

Существует такое понятие, как USB TTL конвертер. Однако к контексту статьи он не имеет никакого отношения, и не стоит путать его с временем жизни пакета. USB TTL конвертер — своего рода переходник для создания соединений между устройствами USB и логикой TTL.

В статье было подробно объяснено про TTL — что это такое и для чего нужен. Несколько способов его изменения позволят обойти ограничение по блокировке трафика на некоторых провайдерах. Это даёт возможность использовать интернет повсеместно.

Реализация на разных устройствах отличается, можно сделать это как с помощью программных средств, так и изменяя системные файлы вручную. Некоторые модемы придётся прошивать, причём под каждый свою версию ПО.

Данными инструкциями можно обойти блокировку многих провайдеров, предоставляющих доступ в интернет посредством сотовой сети.

Раз вы сюда попали, скорее всего вам нужно поменять TTL для обхода ограничений мобильного оператора на раздачу трафика, но вы не понимаете, что такое TTL, и зачем его менять. Постараюсь объяснить.

Понятие TTL

В интернете все передается пакетами – маленькими порциями данных. Они ходят от маршрутизатора к маршрутизатору (то же самое, что от роутера к роутеру) по узлам сети. Например, ваш мобильный телефон тоже может стать роутером, если его использовать для раздачи данных на компьютер и другие устройства.

TTL расшифровывается как Time To Live, то есть время жизни пакета данных в секундах. При прохождении пакета через очередной роутер TTL уменьшается на единицу. Нужно это для того, чтобы пакет бесконечно не гулял по сети, если не сможет дойти до адресата. Роутер, при попадании в который пакет исчерпал свое значение TTL, посылает отправителю сообщение ICMP о том, что данный пакет превысил максимально допустимое время своего пребывания в сети. Максимальное значение TTL=255. Причем разные операционные системы генерируют пакеты с разным TTL.

Если говорить совсем простыми словами… Представьте себе, что вам 5 лет и вы хотите кушать (вы — пакет). Вы идете к папе и говорите: «Папа, я хочу кушать». Ваш папа смотрит телевизор, согласно таблице маршрутизации о посылает вас к маме. Вы идете к ней и просите «Мамааа, я хочу кушать». Мама болтает с подругой по телефону и согласно своей таблице маршрутизации посылает вас к папе. И так вы ходите как дурак от папы к маме и обратно, туда-сюда, туда-сюда, а все потому что криворукие админы (родители папы и мамы) неправильно настроили таблицу маршрутизации. Чтобы защититься от таких ситуаций придумали понятие TTL (Time To Live), что применительно к нашей ситуации означает количество терпения у мальчика, пока он не скажет «достало» и не упадет перед ногами мамы или папы в беспомощном состоянии. Последний, по правилам (стандарты – это «так заведено в семье»), обязан послать короткий нелестный отзыв адрес того, кто послал мальчика кушать. Это так называемый ICMP-пакет «мальчик сдох»

Ок, так при чем тут операторы? Дело в том, что по полученным от абонента TTL оператор узнает, раздается интернет или нет.

Заявление о применимости

Механизм GTSM применим лишь для ограниченного числа топологий (и наиболее эффективен при прямом соедиении протокольных партнеров). В частности, применение метода следует ограничивать ситуациями, в которых протокольные партнеры соединены между собой напрямую.

GTSM не обеспечивает защиты от атакующих, которые расположены защищаемых узлов, как их легитимные партнеры. Например, если легитимные партнеры располагаются на расстоянии в один интервал пересылки (hop), GTSM не сможет обеспечить защиты от атакующих с непосредственно подключенных к тому же интерфейсу устройств (см. параграф 2.2).

Для соединений с промежуточной пересылкой (multi-hop) применимость GTSM требует дополнительных экспериментов и оценки защиты. Предполагается, что механизм GTSM будет пригоден для случаев наличия промежуточной пересылки, если топология соединения между партнерами известна и не меняется, а промежуточные сети (между партнерами) являются доверенными.

6.1. Совместимость с ранними версиями

RFC 3682 [RFC3682] не задает способов обработки «связанных сообщений» (ошибки ICMP). Данная спецификация задает установку и проверку TTL=255 для таких пакетов, как и для пакетов основного протокола.

Установка TTL=255 в пакетах связанных сообщение не создает проблем для реализаций RFC 3682.

Требование установки TTL=255 в пакетах связанных сообщений может оказывать влияние на реализации RFC 3682 в зависимости от используемого такой реализацией по умолчанию значения TTL (в некоторых принято 255, а в других — 64). Связанные сообщения второй категории реализаций RFC 3682 (не 255) будут считаться опасными (Dangerous) и обрабатываться в соответствии с разделом 3. Это не создает существенных проблем, поскольку протоколы не зависят от связанных сообщений (например, для разрыва сессии применяется протокольный обмен, а не TCP-RST) и доставка связанных сообщений не считается надежной. Связанные сообщения, как таковые, обычно служат для оптимизации и сокращения тайм-аутов keepalive. Тем не менее, вспомогательные сообщения обеспечивают важный вектор атак (например, позволяя сбрасывать сессии), предлагаемое ограничение представляет обоснованным.

Как операторы узнают, что трафик раздается

Потому что ему от абонента начинают приходить пакеты с разными значениями TTL. На это есть две причины:

  • Во-первых, у разных устройств TTL может быть разным. А при раздаче интернета появляется ведь второе устройство – то, на которое мы раздаем интернет. Так у телефона на iOS или Android значение TTL равно 64, а у компьютера на Windows – 128. И при раздаче интернета с телефона на компьютер появится два разных значения TTL: 64 и 128. Оператору уходят пакеты и с TTL=64, и TTL=127 (при отправке пакета с компьютера через раздающий телефон-роутер значение 128 уменьшается на единицу).
  • Во-вторых, даже если TTL устройств одинаков (с телефона на телефон), раздающий телефон опять же уменьшает TTL на 1 как всякий нормальный роутер. И оператору уходят пакеты с разными значениями TTL=64 (если это пакет с раздающего телефона) и TTL=63 (пакет с потребляющего телефона).

Итак оператор получает пакеты с разными значениями:

  • TTL пакета с самого телефона.
  • TTL пакета с потребляющего трафик устройства, уменьшенное на единицу при проходе через телефон-роутер.

На всякий случай прикладываю картинки.

А при раздаче интернета телефон передает оператору пакеты с тремя разными значениями TTL: 64 от себя, 127 от компьютера и 63 от потребляющего телефона.

Оператор замечает такую ситуацию разброса значений TTL, делает вывод, что происходит раздача трафика и принимает карательные меры в отношении абонента-нарушителя, желающего поживиться безлимитным интернетом на полную катушку, раздав его куда хочется. Как же скрыть раздачу от оператора? Очевидно, надо сравнять TTL – привести их всех к одному значению. Для этого можно

  1. Либо поменять TTL на потребляющем устройстве,
  2. Либо на раздающем телефоне сделать так, чтобы пакеты к оператору шли всегда с одним значением TTL.

Благодарности

Использование TTL для защиты BGP рассматривалось множеством авторов, включая Paul Traina и Jon Stewart. Ryan McDowell предложил похожую идею. Steve Bellovin, Jay Borkenhagen, Randy Bush, Alfred Hoenes, Vern Paxon, Robert Raszuk и Alex Zinin предоставили полезные отклики на ранние версии этого документа. David Ward представил обобщение исходной идеи, связанной с BGP. Alex Zinin, Alia Atlas и John Scudder предоставили множество откликов для новой версии документа. Во время процедуры IETF Last Call и после нее были получены полезные комментарии от Francis Dupont, Sam Hartman, Lars Eggert и Ross Callon.

Приведение TTL к единому значению для обхода ограничений оператора

  • Можно привести TTL к единому значению 63, поменяв его на раздающем телефоне и на принимающем компьютере. Это изменение TTL без фиксации.
  • Можно ничего не менять на принимающих устройствах, но «заставить» раздающий телефон всегда отправлять оператору пакеты с TTL=63, независимо от того, откуда они: с самого раздающего телефона или с принимающего устройства (компьютера или телефона). Это фиксация TTL.

Вторая схема удобнее, но она пригодна не для всех телефонов.

Итак, мы рассмотрели, что такое TTL, и зачем его нужно менять. Как именно изменить TTL требует рассмотрения в отдельной статье. .

В этом обзоре речь пойдет о недавно вышедшем интернет-центре Keenetic, старшем из трех маршрутизаторов серии Kinetic, появившихся недавно в продаже.

Туннельные палестины

В одном из присланных мне писем автор назвал существующие проблемы с провайдерами «туннельными палестинами». Мне очень понравился этот термин. О чем собственно речь: многие российские провайдеры представляют доступ в интернет поверх доступа к своей локальной сети через VPN-туннель. Туннели могут быть разными, наиболее распространены PPPoE, PPTP, L2TP. Сервер VPN-авторизации у провайдера может задаваться как IP адресом, так и именем. Авторизация может использовать различные алгоритмы — pap, chap, mschap v1, mschap v2,…. Пользователь, который знает об этих нюансах, при выборе роутера интересуется — поддерживает ли роутер нужный тип авторизации, тип соединения, понимает ли имя (не ip) vpn сервера, получает ли роутер маршруты в локальную сеть по DHCP, какой размер таблицы маршрутизации. В настоящее время можно купить роутер, который не работает с конкретным имеющимся провайдером или поддерживает не все необходимые функции, а потом долго искать решение, как же его настроить. Часто в этих случаях помогает установка прошивок сторонних разработчиков — проекты DD -WRT, OpenWRT и другие. Разные производители называют поддержку «туннельных палестин» по-разному — Russian PPPoE, Dual Access, Link Duo и т.д.

Новые роутеры ZyXEL Keenetic создавались специально для России, прошивки для них делаются нашими разработчиками, знающими про специфику наших «палестин». Можно сказать, что поддерживаются почти все провайдеры. Исключение составляют, разве что, провайдеры, использующие «самописные» программы для авторизации. Keentic позволяет, естественно, задать MAC-адрес на WAN-интерфейсе в случае, когда используется привязка по физическому адресу. Есть даже настройка «не уменьшать TTL» для борьбы с некоторыми хитрыми провайдерами, которые ведут борьбу с владельцами роутеров. Если верить сайту ZyXEL устройство достаточно быстрое, цитирую «скорость Интернета через PPTP и L2TP — до 70 Мбит/с, через PPPoE и IPoE до 90 Мбит/с». Самому возможности это проверить не было, мой интернет медленнее.

WI-FI

Старшая модель Keenetic основана на чипе Ralink RT3052F, имеет 8 Мбайт флеш-памяти и 32 Мбайт RAM и оснащена двумя антеннами 5 дБи. Модуль Wi-Fi поддерживает 802.11n — конфигурация MIMO 2×2, до 300 Мбит/с. Младшие модели используют чип RT3050F, который поддерживает только 1×1 и максимальную скорость 150 Мбит/с. По сообщениям пользователей на форумах скорость копирования файлов «через Wi-Fi» составляет около 9.5 Мбайт/c (76 Мбит/с). Keentic может «работать» и Wi-Fi клиентом, и просто точкой доступа. В последней бета версии прошивки от 17.12.2010 появился еще и режим Wi-Fi моста. Я проверял Keenetic в редко кому нужном режиме Wi-Fi клиента. В качестве точки доступа выступала железка на Atheros с поддержкой 802.11n. Результаты не очень впечатлили. Может быть имеет место не полная совместимость, может быть в будущих прошивках (или Keenetic, или точки доступа) скорость в этом режиме возрастет.

IPTV

В нашей стране достаточно широкое применение получила технология IPTV — цифровое интерактивное телевидение в сетях передачи данных по протоколу IP . Если ваш провайдер предоставляет такую услугу, то перед покупкой роутера поинтересуйтесь — поддерживает ли он IPTV. ZyXEL Keenetic поддерживает сразу несколько режимов — можно назначить отдельный Ethernet-порт маршрутизатора портом для телевидения, в который будет подключаться приставка провайдера STB, можно смотреть телевидение на компьютере, в том числе и по Wi-Fi (с помощью IGMP-proxy), если телевизионные каналы не шифруются провайдером.

Авто-QoS

Возможностью управлять трафиком «из коробки» (шейпинг) есть у очень небольшого числа маршрутизаторов. Замечу, что настройка управления трафиком, если она и есть, дело не очень и простое. Не все с ней всегда справляются. Нет шейпинга и у Keentic. Вместо этого в настройках есть единственная «галочка» под названием «Авто-QoS» В результате включения «Авто-Qos» Keenetic должен распределять трафик таким образом, чтобы не дать занять всю полосу не критичным, но «жадным» до трафика приложениям, таким, как торрент-клиенты. Забегая немного вперед, скажу, что это делается с помощью маркировки пакетов в iptables (иcпользуются три значения mark 1, 3, 5 и установка поля TOS в одно из трех значений Minimize-Delay, Maximize-Throughput, Minimize-Cost). Iptables собран с поддержкой connbytes (в зависимости от размера переданного в сессии трафика устанавливается поле TOS). Как в дальнейшем используется маркировка пакетов — сказать не могу. Если ваш провайдер поддерживает tos в заголовках IP-пакетов — вам повезло больше, чем другим. Использование дополнительных, подгружаемых с внешнего носителя, правил iptables позволит бороться с соседом, качающем слишком много, если вы дадите ему интернет через Keenetic.

USB

В маршрутизаторе Keenetic имеется один порт USB, в который можно подключить принтер, USB-носитель, USB-модем. Если нужно подключить несколько устройств, то потребуется USB-хаб (разветвитель). К подключенному USB-носителю можно настроить доступ по протоколу ftp и через сетевое окружение Windows (протокол smb/cifs). Самым интересным, пожалуй, является встроенный в маршрутизатор torrent-клиент Transmission. Теперь нет необходимости держать постоянно включенным компьютер, работать с торрент-трекерами за вас будет Keentic. Я проверил скорость работы Keentic со старенькой флешкой (2Гбайт). Скорость записи на нее была около 6.5 мегабайт в секунду, чтения — 3.6. Скорости фактически не зависели от используемого протокола и формата раздела (FAT32 или EXT2). Не рекорд — но очень прилично.

3G и 4G

Как уже ранее написал в USB-разъем можно подключить 3G модем (список на сайте zyxel.ru выглядит внушительным) и 4G-модем от Yota (Samsung U200 или Yota Jingle). В этом случае маршрутизатор будет «раздавать» интернет с модема как через порты LAN так и по Wi-Fi. Для использования Yota Jingle этот «свисток» следует специально прошить программой, скачиваемой с zyxel.ru. Как утверждается «на работоспособность модема в компьютерах обновление никак не влияет». К сожалением ни 3G, ни 4G модема у меня дома нет. Поверим на слово.

Задел на будущее

Как утверждали сотрудники Zyxel на презентации «переход на новую, открытую платформу позволит сторонним разработчикам создавать свои приложения и мини-программы для устройств ZyXEL на базе NDMS, специально для этого ZyXEL выложит необходимые исходные коды и документацию в открытый доступ». Ну что же — запускаем telnet клиента на компьютере, заходим на устройство и вместо приглашения linux shell видим унылый cli — командную строку с минимумом возможностей. Сделано это, похоже, для настройки роутера с помощью фирменной утилиты NetFriend, которая позволяет производить настройки сетевого оборудования zyxel простым пользователям, не специалистам в сетевых технологиям. Увидев это «безобразие» я сразу отправил запрос через систему интерактивных консультаций ZyXEL с вопросом о получении полного доступа к устройству. Ответ пришел быстро — «к сожалению в настоящее время получить рутовый доступ к устройству можно только через консольный шнур». Не может такого быть, решил я. На следующий вечер я уже получил рутовый доступ и «копался» внутри встроенного Linux, шнурок не потребовался. Я не взломщик и не хакер, но получение полного доступа к устройству не составило большого труда. Итак, что же внутри: busybox с самым минимумом программ, ядро 2.6.23.17. 2 мегабайта флешки отведено под пользовательские данные (папка /storage). Что самое интересное — есть возможность запускать скрипты с внешнего носителя (скрипт задания дополнительных правил iptables, скрипт запускаемый при включении, монтировании USB-ностителя, при установке и разрыве соединения: start, restart, link_down, link_up, ppp_down, ppp_up). Есть возможность примонтировать «mount -t squashfs….» файл с дополнительными приложениями, расположенными на usb носителе. Возможно такие файлы-наборы приложений будут со временем выложены на zyxel.ru. Роутер, если Вы немного знаете linux и разбираетесь в сетевых технологиях позволит расширить функционал устройства. Не всем ведь нужен встроенный торрент клиент, некоторые предпочтут использовать ограниченную память под другие задачи. Архитектура mips (little endian), она и в Африке mips. Быстро собрал парочку простых приложений для этой архитектуры (tar, sed, gzip) — все работает. Но хотелось бы видеть официальный «инструментарий» от zyxel с инструкцией по использованию.

Подведем итоги

Что же в итоге — российская разработка, учитывающая «наши туннельные палестины» с отличной скоростью и отличным функционалом (IPTV, принт-сервер, доступ к usb по ftp и самба, встроенный transmission, поддержка 3G модемов, распространенных в России и 4G модемов Yota). Возможность в будущем наращивать этот функционал.

Что в минусе. Отсутствие (скорее всего временное) официального инструментария для расширения возможностей. Встроенный свитч — 100 мегабит. Впрочем, это только начало: cтарт Keenetic состоялся «снизу» — то есть, с младших (Lite) и средних моделей (Keenetic, Keenetic 4G). По слухам в 2011 году должны появиться более производительные модели в том числе с гигабитным коммутатором. Как говорится «пожуем — увидим».

Предварительные выводы

В плюсе

  • Достаточно компактен, почти не греется, компактный и холодный блок питания, хорошие антенны в комплекте. Очень неплохая документация, в комплекте есть напечатанный вариант.
  • Хороший функционал и производительность.
  • Возможность использовать в качестве wi-fi клиента и wi-fi моста.
  • USB порт для подключения принтеров, модемов, внешних носителей.
  • Быстрая реакция разработчиков на возникающие проблемы (например, ). Это совершенно естественно, что прошивки немного доводятся до ума после выхода устройсва.
  • Web интрефейс на русском языке. Понятен, прост, удобен, быстр. Настроек минимум (для кого плюс, для меня — минус).
  • Документация могла бы быть и подробнее (дал бы тогда 5+ или 6 по пятибальной шкале). Существующая хороша, другим производетлям следует брать в этом плане с Zyxel пример. Скорее всего все, что не описано в базовой документации, будет со временем в «Базе знаний» на zyxel.ru.
  • Возможность (пока неофициальная) самому расширять функционал устройства.

В минусе

  • Нет официальной информации о получении полного (рутового) доступа и возможности запуска своих скриптов. Нет официального инструментария для сборки своих приложений и инструкции по их установке. Исходные коды прошивки не выложены в открытый доступ.
  • Только один USB порт, хотелось бы два — для принтера и внешнего носителя.
  • Свитч 100 мегабитный.
  • Нет WDS в настройках wi-fi. (Может и появилась в последней бета версии прошивки, не смотрел.)
  • Нет шейпера, насколько хорош «Авто-QoS» из прошивки, сказать пока трудно.

Железка в целом понравилась. Я не люблю рекомендовать другим определенное оборудование, каждый должен сам делать свой выбор. Про Keenetic напишу так: если Вас устраивает базовый функционал устройства — можно покупать. Если Вы привыкли к прошивкам «от Олега», «от энтузиастов», DD-WRT, OpenWRT и умеете тюнинговать все своими руками, то стоит подождать, пока Zyxel официально это «разрешит».

Вопросы безопасности

GTSM представляет собой простую процедуру, которая защищает протокольные сессии, организованные на одном интервале пересылки (single-hop), за исключением ситуаций, когда партнер скомпрометрирован. В частности, этот метод не обеспечивает защиты против широкого класса атак on-the-wire (с прямым подключением к линии), для которых требуются более изощренные механизмы.

5.1. Обманые TTL (Hop Limit)

Описанный здесь подход основан на наблюдении, что значение TTL (или Hop Limit) 255 не так просто подделать, поскольку по мере прохождения пакета по пути к адресату каждый маршрутизатор будет уменьшать значение TTL. В результате, при получении пакета маршрутизатором пригодность пакета IP проверить нельзя, но можно определить число маршрутизаторов, через которые он прошел (в предположении, что ни один из маршрутизаторов на этом пути не был скомпрометирован для подмены значений TTL).

Отметим однако, что хотя создание пакетов с определенным значением TTL (по прибытии), происходящих из произвольной точки, сложно (но возможно), создать пакеты с TTL 255 при отсутствии непосредственного соединения невозможно (опять-таки в предположении отсутствия скомпрометрированных соседей с непосредственным соединением и туннелей до декапсулятора, а также работы промежуточных маршрутизаторов в соответствии с RFC 791 [RFC0791]).

5.2. Туннелированные пакеты

Защита при любом методе туннелирования зависит от сложности аутентификации на конечных точках туннеля, а также от способа защиты туннелируемых пакетов «в полете». Однако эти механизмы выходят за рамки данного документа.

Сложность подделки пакетов с TTL 255 можно преодолеть, если для этих пакетов и самого туннеля не обеспечивается защиты целостности (т. е. нижележащий уровень скомпрометирован).

Когда пакет туннелируется непосредственно к протокольному партнеру (т. е. этот партнер является декапсулятором туннеля), GTSM обеспечивает ограниченную защиту, которая зависит от целостности туннеля.

Если протокольная смежность организована через туннель и сам туннель представляется защищенным (т. е. нижележащая инфраструктура представляется защищенной, а туннель обеспечивает защиту от подделок для ключей и криптографических средств), GTSM может применяться для обнаружения протокольных пакетов, отправленных из точки, не являющейся другим концом туннеля. В дополнение к этому GTSM может помочь предотвратить атаки из-за соседнего маршрутизатора, если протокольный партнер получает пакеты для защищенной с помощью GTSM сессии извне туннеля.

Когда конечная точка туннеля декапсулирует протокольный пакет и потом пересылает пакет IP протокольному партнеру, значение TTL уменьшается как описано выше. Это означает, что декапсулятор туннеля с точки зрения защищенного с помощью GTSM протокольного партнера является предпоследним узлом. В результате проверка GTSM защищает от атакующих, которые инкапсулируют пакеты для ваших партнеров. Однако имеются особые случаи , когда соединение между декапсулятором туннеля и протокольным партнером не включает интервал пересылки (hop) IP, где значение TTL уменьшается (например, туннелирование на канальном уровне, мост и т. п.). В архитектуре IPsec [RFC4301] еще одним примером служит использование устройств BITW5 [BITW].

5.2.1. Туннелирование IP по протоколу IP

Пакеты протокола могут туннелироваться через IP непосредственно протокольному партнеру или декапсулятору (конечная точка туннеля), который пересылается that пакеты подключенному к нему непосредственно протокольному партнеру. Примерами туннелирования IP по протоколу IP являются IP-in-IP [RFC2003], GRE [RFC2784] и разные формы IPv6-in-IPv4 (например, [RFC4213]). Здесь возможны два варианта, которые проиллюстрированы ниже.

Партнер ———— Маршрутизатор конечной точки туннеля и партнер TTL=255 [туннель] [TTL=255 на входе] [TTL=255 при обработке] Партнер ———— Маршрутизатор конечной точки туннеля —— Партнер на канале TTL=255 [туннель] [TTL=255 на входе] [TTL=254 на входе] [TTL=254 на выходе]

В обоих случаях инкапсулятор (исходная точка туннеля) является (предполагаемым) отправителем. Значение TTL во вложенной дейтаграмме IP может быть установлено в 255, поскольку RFC 2003 задает приведенное ниже поведение.

При инкапсуляции дейтаграммы значение TTL во внутреннем заголовке IP уменьшается на 1, если туннелирование осуществляется, как часть пересылки дейтаграммы. В противном случае значение TTL во внутреннем заголовке при инкапсуляции не меняется.

В первом случае инкапсулируемых пакет туннелируется напрямую протокольному партнеру (конечная точка туннеля) и, следовательно, значение TTL в принятых протокольным партнером пакетах может быть любым, включая 255.

Во втором случае инкапсулированный пакет туннелируется декапсулятору (конечная точка туннеля), который потом пересылает пакет непосредственно подключенному к нему протокольному партнеру. Для туннелей IP-in-IP документ RFC 2003 задает описанное ниже поведение декапсулятора.

Значение TTL во внутреннем заголовке IP не меняется при декапсуляции. Если после декапсуляции во внутреннем заголовке TTL = 0, декапсулятор должен

отбросить дейтаграмму. Если после декапсуляции дейтаграмма пересылается через один из сетевых интерфейсов декапсулятора, значение TTL будет уменьшаться в результате обычной пересылки IP. Дополнительная информация о работе с полем TTL приведена в параграфе 4.4.

Аналогично для туннелей GRE документ RFC 2784 задает указанное ниже поведение.

Когда конечная точка туннеля декапсулирует пакет GRE, в который вложен пакет IPv4, адрес получателя из заголовка пакета IPv4 должен

использоваться для дальнейшей пересылки пакета, а значение TTL в заголовке вложенного пакета
должно
быть декрементировано.

Следовательно, значение TTL в заголовке внутреннего пакета IP, видимое декапсулятору, может быть произвольным (в частности, 255). Если декапсулятор является и протокольным партнером, ему можно будет доставить пакет с TTL 255 (первый случая). Если же декапсулятор должен переслать протокольный пакет непосредственно подключенному к нему партнеру, значение TTL будет уменьшено (второй случай).

5.2.2. Туннелирование IP через MPLS

Протокольные пакеты могут также туннелироваться партнерам через MPLS LSP6 как показано ниже.

Партнер ——— Завершающий LSP маршрутизатор и партнер TTL=255 MPLS LSP [TTL=x на входе]

MPLS LSP может работать в режиме туннелирования Uniform или Pipe. Обработка TTL для этих режимов описана RFC 3443 [RFC3443], который обновляет RFC 3032 [RFC3032] в части обработки TTL в сетях MPLS. В RFC 3443 описана обработка TTL в режимах Uniform и Pipe, которые, в свою очередь, могут использовать или не использовать PHP7. Обработка TTL в этих случаях дает разные результаты, поэтому они анализируются раздельно в параграфах 3.1- 3.3 RFC 3443.

Основное различие в плане обработки TTL между режимами Uniform и Pipe на завершающем LSP узле состоит в способе определения входящего значения TTL (iTTL). Для LSP в режиме Uniform iTTL будет принимать значение поля TTL из заголовка инкапсуляции (popped MPLS header), а для LSP в режиме Pipe iTTL будет принимать значение поля TTL из инкапсулированного заголовка.

Для Uniform LSP в RFC 3443 сказано, что на входе:

Для каждой вытолкнутой метки в режиме Uniform значение TTL копируется из расположенного непосредственно ниже пакета IP/метки.

С этого момента внутреннее значение TTL (т. е. TTL в туннелируемой дейтаграмме IP) не содержит осмысленной информации и на краевом узле или в процессе PHP входное значение TTL (iTTL) будет равно TTL из вытолкнутого заголовка MPLS (параграф 3.1 в RFC 3443). Следовательно для Uniform LSP с несколькими (более 1) интервалами пересылки TTL на входе (iTTL) будет меньше 255 (x <= 254) и описанная в разделе 3 проверка даст отрицательный результат.

Трактовка TTL идентична для Short Pipe LSP без PHP и Pipe LSP (только без PHP). Для этих случаев в RFC 3443 сказано:

«Для каждой вталкиваемой (pushed) метки в режиме Pipe или Short Pipe в поле TTL устанавливается значение, заданное оператором. Во многих реализациях по умолчанию установлено значение 255.»

В этих моделях трактовка пересылки на выходе основана на туннелированных, а не инкапсулированных пакетах. Входное значение TTL (iTTL) является значением поля TTL из видимого (exposed) заголовка, т. е. TTL туннелируемой дейтаграммы TTL. Следовательно, значение TTL в протокольных пакетах, видимое в точке завершения LSP, может быть произвольным (включая 255). Если завершающий LSP маршрутизатор является и протокольным партнером, протокольные пакеты могут доставляться с TTL 255 (x = 255).

Для Short Pipe LSP с PHP значение TTL в туннелируемых пакетах не меняется после операции PHP. Поэтому в данном случае применимы те же выводы, которые были сделаны для Short Pipe LSP без PHP и Pipe Model LSP (только без PHP). Для Short Pipe LSP значение TTL на выходе не зависит от применения PHP.

В заключение отметим, что проверка GTSM возможна для пакетов IP, туннелируемых через Pipe LSP, но не через Uniform LSP. Кроме того, доставка протокольному партнеру пакетов протокола с TTL 255 невозможна, если завершающему LSP маршрутизатору требуется пересылать пакеты непосредственно подключенному к нему протокольному партнеру. Если пакет пересылает, выходное значение TTL (oTTL) определяется путем уменьшения iTTL на 1.

5.3. Атаки из канала

Как было описано в разделе 2, атакующий, подключившийся напрямую к одному из интерфейсов, может нарушить работу защищенной с помощью GTSM сессии на том же или другом интерфейсе (подменив адрес партнера GTSM), если на интерфейсе не используется входной фильтрации. В результате интерфейсам без такой защиты приходится просто доверять в части отсутствия атак с их стороны.

5.4. Вопросы, связанные с фрагментированием

Как уже было отмечено, фрагментирование может ограничить объем данных, доступных для классификации. Поскольку фрагменты IP (кроме первых) не содержат информации уровня 4, очевидна невозможность связать их с зарегистрированной сессией GTSM. В соответствии с процедурами принимающего протокола, описанными в разделе 3, фрагменты IP, не являющиеся начальными, будут вероятней всего отнесены к типу Unknown. А поскольку для обработки пакета IP требуется собрать его из фрагментов, конечным результатом в сессии GTSM будет трактовка собранного пакета, как Unknown.

В принципе, реализация может запомнить значения TTL всех полученных фрагментов. После этого при сборке пакета проверяется соответствие TTL каждого фрагмента требуемому значению для связанной сессии с поддержкой GTSM. В очевидном общем случае когда реализация не проверяет все фрагменты, вполне возможно объединение легитимного первого фрагмента (который прошел проверку GTSM) с поддельными последующими фрагментами с допущением того, что целостность принятого пакета не проверена и не защищена. Если проверка выполняется при сборке для всех фрагментов и неких фрагмент не прошел проверку GTSM для сессии с поддержкой GTSM, собранный в результате пакет считается «опасным и недоверенным» (Dangerous-trustworthiness) с соответствующей этому обработкой.

Кроме того для сборки требуется дождаться получения всех фрагментов и это делает неприменимым докушение п. 5 в параграфе 2 — классификация не являющихся первыми фрагментов может оказаться невозможной по причине нехватки системных ресурсов, поскольку фрагменты потребуется буферизовать, а потом обработать с участием CPU. Т. е. в тех случаях, когда классификация не может быть выполнена с нужной детализацией, отличные от начальных фрагменты в сессиях с поддержкой GTSM не будут использовать разные пулы ресурсов.

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

для защищенных GTSM протоколов предотвращать фрагментацию и сборку путем ручной настройки MTU с использованием адаптивных измерений типа PMTUD8 или иных доступных методов [RFC1191], [RFC1981] или [RFC4821].

5.5. Протокольные сессии с промежуточной пересылкой (Multi-Hop)

GTSM может обеспечить некоторую (трудно оцениваемую количественно) степень защиты при использовании в протокольных сессиях с промежуточной пересылкой (multi-hop, см. Приложение A). Чтобы избежать сложностей с количественной оценкой защиты и связанной с этим применимости метода здесь описан только вариант без промежуточной пересылки (single-hop), поскольку для него проще разобраться с защитой.

Рейтинг
( 2 оценки, среднее 5 из 5 )
Понравилась статья? Поделиться с друзьями: