Как изменить TTL: полезная инструкция на все случаи жизни


ВНИМАНИЕ! Не только TTL является причиной блокировки – об этом подробнее ниже.

Всем привет! Сегодня поговорим про раздачу интернета и ТТЛ. Давайте кратко про ТТЛ (время жизни пакета). У всех устройств, которые работают с интернетом, есть так называемый TTL параметр. У телефонов он по умолчанию равен 64, а в системах Windows – 128.

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

Если же вы будете раздавать интернет на другие устройства – например, на ноутбук (TTL default=128) и на другой телефон (TTL=64), то у нас добавляется ещё один узел. А TTL имеет свойство уменьшаться на 1 при проходе через узел (в нашем случае это раздающее устройство).

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

Если вы не знаете, как делать раздачу с телефона, то смотрим эту инструкцию.

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

ВНИМАНИЕ! На iOS изменить ТТЛ невозможно – связано это с защитой системных файлов, от записи на данной операционной системы. Чтобы сохранить вам время и нервы, ещё раз повторюсь, что сделать это НЕВОЗМОЖНО – в силу особенностей яблочной операционной системы, и искать какие-то способы бессмысленно. Ну, я вас предупредил.

Снова прилетела блокировка

Совсем недавно стало известно, что значение TTL у компании МТС было изменено. Поэтому ещё раз зайдите в реестр прошлым способом и вместо 65 установите значение 64. Для тех, у кого оператор MTS – данный способ работает, но и для других, возможно, тоже данный способ будет работать – поэтому попробуйте.

Как я уже и говорил ранее, оператор будет следить за тем, к каким серверам вы обращаетесь. Если у вас включено обновление системы, начал обновляться антивирус, вы качаете с торрента или включен Steam, – то оператор это увидит и заблокирует вас. Поэтому тут есть три варианта:

  • Вы выключаете все что можно и стараетесь «вести себя тихо» в интернете.
  • Сделать детальную настройку – смотрим следующую главу.
  • Третий вариант – это использовать VPN. Так как мы любим халяву и не любим платить, то советую почитать инструкцию по бесплатному использованию VPN.

Как используют TTL и зачем его изменять

Давайте разберем самый простой пример действия TTL. Компьютер, ноутбук, смартфон, планшет и другое оборудование, соединяющееся по сети интернет, имеет свое значение TTL. Мобильные операторы научились использовать этот параметр, чтобы ограничивать подключение устройств посредством раздачи интернета через точку доступа. Ниже на скриншоте вы видите обычный путь раздающего устройства (смартфона) к оператору. Телефоны имеют TTL 64.

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

Если вы вручную измените TTL устройства, с учетом потери одной доли (то есть поставить нужно 65) вы сможете обойти такое ограничение и подключить оборудование. Далее мы рассмотрим процедуру редактирования этого параметра на компьютерах под управлением операционной системы Windows 10.

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

Раздача на Android

К сожалению, изменить параметр TTL можно только с помощью ROOT прав и программы «TTL Master», который можно скачать с Google Play. Но на всякий случай попробуйте поменять параметр – устанавливаем:

  • 65 – если раздающее устройство имеет Android или iOS.
  • 130 – если вы раздаете с Windows Phone.
  • 64 – если у вас МТС.

Нажимаем на кнопку «Применить». Если что-то не получается, то пробуем как параметр 65, так и 64. Если и в этом случае ничего не получится, то вам нужны ROOT права. Инструкции по установке РУТ-прав у каждого телефона свои.

ВНИМАНИЕ! Установка ROOT может привести к блокировке использования некоторых программ, которые работают с деньгами. Особенно это касается онлайн-банков.

Что представляет собой TTL

Аббревиатуру TTL можно расшифровать, как «Time to Live» или «время жизни пакета данных». Этот показатель ограничивает подключение к сети со стороны устройства, которое вы синхронизируете со вновь созданной точкой доступа.

Значение TTL выражается числом в диапазоне 0-255. При этом на смартфонах Android, как правило, используется показатель 64. Однако, когда вы активируете функцию точки доступа для раздачи трафика, подключаемое устройство уже имеет показатель TTL=63, что позволяет оператору сотовой связи ограничить раздачу. Далее вы сможете узнать, как можно обхитрить оператора, сняв установленные ограничения.

Случаи применения

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

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

В контексте записи DNS TTL представляет собой числовое значение, определяющее, как долго сервер кэша DNS может обслуживать запись, прежде чем обратиться к авторитарному DNS-серверу и получить новую копию записи.

Подробное руководство по настройке TTL для записей DNS


Система DNS — это фундаментальный технологический продукт. Обработка практически всех сетевых запросов верхнего уровня и поисковых запросов в Интернете, пересылка интернет-трафика и электронной почты, а также многие другие операции становятся возможными благодаря установке определенных соответствий при поиске DNS (преобразованию таких имен, как some.domain.org, в IP-адреса или имена других доменов). Мы решили написать о времени жизни (Time To Live, TTL) данных, поскольку большинству системных администраторов не приходится каждый день работать с конфигурациями DNS и значительная часть информации об этом параметре — это полузабытые байки, передаваемые системными администраторами из поколения в поколение.
Задав соответствующий вопрос в Twitter, мы выяснили, что некоторые системные администраторы даже не могут расшифровать аббревиатуру TTL (хотя такие, к счастью, в меньшинстве).

Отгадайте загадку! Что означает аббревиатура TTL, когда речь идет о системе DNS?

18:43 26 окт. 2016 г. 4 % Граница терминальной передачи 85 % Время жизни 8 % Телеметрическая транспортная линия 3 % Список доверенных технологий 26 голосов • Окончательный результат Ретвит 1 О 1

Чтобы внести ясность, мы рассмотрим следующие темы.

1. Общие сведения о системе DNS и параметре TTL 2. Устранение проблем с TTL в записях DNS 3. Рекомендации по управлению изменениями в записях DNS 4. Инструменты DNS 5. Дальнейшие действия

1. ОБЩИЕ СВЕДЕНИЯ О СИСТЕМЕ DNS

Что такое запись DNS?

Запись сервера доменных имен (Domain Name Server, DNS) содержит два важных параметра: адресацию (установку соответствия) запросов для той или иной записи; время актуальности записи при кэшировании — именно это значение получило зловещее название «время жизни» (TTL).

Зачем кэшируются записи DNS?

Многие организации настраивают записи DNS один раз и после этого годами не изменяют их. Поскольку записи DNS часто запрашиваются, но редко обновляются, их кэширование помогает значительно повысить производительность сети, увеличивая при этом сложность оценки и устранения проблем с DNS.

Что такое TTL?

Время жизни (TTL) представляет собой продолжительность кэширования записи *каждым звеном* цепочки установки соответствий DNS. Это значение измеряется в секундах (важность этого будет объяснена ниже).

К сожалению, общепринятый термин «время жизни» нельзя назвать исчерпывающим. Возможно, более логичным было бы название «время на поиск» или «продолжительность хранения записи DNS в кэше».

Каково стандартное значение TTL для записей DNS?

Значение TTL всегда выражается в секундах. Большинство служб настройки конфигурации DNS содержат готовый список значений для записей. 300 секунд = 5 минут = «Очень короткое» 3600 секунд = 1 час = «Короткое» 86 400 секунд = 24 часа = «Длинное» 604 800 секунд = 7 дней = «Абсолютный максимум»

Как осуществляется поиск DNS?

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

1. Кэширована ли нужная запись? 2. Если да, действительно ли ее значение TTL?

Если на какой-либо из этих вопросов получен ответ «Нет», запрос перемещается на следующее звено цепочки.

Почему в основе системы DNS лежат сетевые подключения, а не устройства?

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

Рассмотрим ситуацию на примере обычного ноутбука. Я, как правило, работаю на ноутбуке дома. Несмотря на то что я уже несколько недель никуда его не брал, за это время на устройстве устанавливались следующие подключения:

• к основной домашней сети Wi-Fi/кабельной сети; • к мобильному телефону при недоступности кабельной сети; • оба варианта выше, но с подключением через VPN.

При каждой смене сети активируется новая цепочка DNS. Если это происходит в момент внесения изменений, серверы и узлы кэширования в цепочке DNS могут предоставлять неверные данные.

Такое часто случается в корпоративных сетях, где имя домена Active Directory совпадает с адресом веб-сайта компании. На внешнем сервере DNS (уровень поставщика Интернета) хранится запись DNS, направляющая адрес www.example.com к верному IP-адресу/CNAME веб-сервера, но на внутреннем сервере DNS, используемом службой Active Directory, записи не дублируются.

Сразу же начнется паника: «Веб-сервер не работает!», «Это конец света!», «Где мои брюки?». Но, приступив к устранению проблемы, вы обнаружите, что ее причиной стало незакрытое подключение через VPN.

2. УСТРАНЕНИЕ ПРОБЛЕМ С TTL В ЗАПИСЯХ DNS

Сколько времени требуется на обновление записи DNS?

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

Например, если значение TTL составляет 3600 секунд (1 час), а цепочка DNS состоит из 5 звеньев, полное распространение изменений должно занять не более 18 000 секунд (5 часов). Но если бы все было так просто.

Каковы затраты на поиск DNS?

Когда речь заходит о «затратах» на поиск DNS, обычно имеются в виду не денежные, а временные затраты. В зависимости от численности интернет-гремлинов в глобальной сети на выполнение запроса DNS обычно уходит 100–200 миллисекунд.

Это очень небольшое время, но представьте себе веб-страницу. Соответствие между именем и IP-адресом в системе DNS необходимо настроить для всех изображений, файлов CSS и файлов активов JavaScript, доступных по ссылкам на странице. Без кэширования время загрузки заметно увеличится.

Упрощенная схема расчета затрат на поиск DNS

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

С кэшированием

(30 файлов изображений x 50 мс на загрузку каждого файла) + (100 мс на выполнение одного поиска DNS с последующим кэшированием) = 1600 мс

Без кэширования

(30 файлов изображений x 50 мс на загрузку каждого файла) + (30 x 100 мс на каждый поиск DNS) = 3000 мс

Почему мои записи DNS не обновляются

?

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

• Веб-браузеры самостоятельно кэшируют записи DNS и хранят их в течение некоторого времени без учета TTL, что якобы повышает скорость их работы. Например, современные версии Internet Explorer по умолчанию кэшируют записи DNS на 30 минут (до версии IE 4 это время составляло 24 часа) и игнорируют более низкие значения TTL. • Поставщики мобильного Интернета могут пытаться уменьшить общий объем передаваемого трафика путем увеличения времени TTL, что снижает частоту запросов. • Сложные внутренние сети с большим числом сервером DNS, чем предполагалось, обновляются дольше по очевидным причинам.

Именно поэтому во многих службах можно встретить следующее заявление: «Полное распространение изменений в записях DNS может занять несколько дней, поэтому планируйте свои действия соответствующим образом».

Можно ли как-нибудь принудить клиент удаленно обновить запись DNS?

Этот вопрос обычно задается в следующем контексте: «После обновления записей DNS клиент не может получить доступ к некоторым сайтам. Как выполнить обновление принудительно?» К сожалению, единственный ответ на этот вопрос: «Никак». В системе DNS нет команды, позволяющей принудительно выполнить раннее обновление данных для клиентов более низкого уровня.

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

Лучше всего изменить значения TTL в своих записях заблаговременно.

3. РЕКОМЕНДАЦИИ ПО УПРАВЛЕНИЮ ИЗМЕНЕНИЯМИ В ЗАПИСЯХ DNS

Какие значения TTL лучше: маленькие или большие?

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

Атака DDOS, способная на 12 часов остановить работу корневых серверов DNS или аналогичных серверов поставщика Интернета, меньше скажется на сайтах с очень высоким значением TTL. В таких случаях клиенты будут работать даже при выключении или перегрузке сервера DNS. Однако, если при переключении узлов Интернета или электронной почты вы случайно сделаете ошибку, 12 часов без какой-либо возможности устранить ее — это последнее, что вам будет нужно. Именно поэтому некоторые администраторы считают, что время жизни не должно превышать 1 минуты.

Лично я стараюсь указывать для записей DNS малое значение TTL (меньше 1 часа/3600 секунд).

Как узнать, когда клиент запросит обновленную запись DNS?

Определить, когда все клиенты обновят данные, очень сложно. Время жизни — это *не* срок годности. Не стоит сравнивать значение TTL в записи DNS с рекомендуемой датой употребления, указанной, например, на несвежем хлебе: это не определенное время, при наступлении которого запись станет недействительной и потребует замены. Запись DNS — это, скорее, штатное расписание, изменения в котором медленно распространяются по всей сети. Когда у клиентов, расположенных в расписании «ниже», истекает срок действия кэша, они запрашивают запись у сервера DNS более высокого уровня. Как лучше всего изменять записи DNS?

Создание «плана» или «стратегии» для выполнения относительно простых задач, к которым относится изменение одной записи в домене, может казаться перегибом, но, учитывая колоссальное влияние сбоев DNS на доступность ваших данных, определенную осторожность проявить все же стоит. Как говорится в старой пословице: «Предотвратить легче, чем лечить». Есть простой способ свести ошибки к минимуму: никогда не обновляйте запись DNS и значение TTL для этой записи одновременно. В идеале у вас должен быть реализован следующий процесс.

1. За несколько дней до переключения укажите для параметра TTL записи DNS низкое значение, например 300 секунд. 2. Установите для записи дату переключения. 3. Через несколько дней после переключения задайте более высокое значение TTL. Как лучше всего добавлять новые записи DNS? Добавить новую запись проще, чем изменить существующую. 1. Добавьте запись с низким значением TTL. 2. Проверьте, все ли работает, и увеличьте значение TTL.

Какое значение TTL наиболее распространено?

Мнения относительно *правильного* значения TTL настолько расходятся, что мы предприняли попытку определить его на основе статистики. Список из 500 самых важных веб-сайтов по версии Moz показался нам отличным срезом Интернета. Кроме того, на этом ресурсе был доступен готовый файл CSV с перечнем сайтов, вошедших в итоговый список.

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

Анализ значений TTL для 500 важнейших интернет-доменов по версии Moz

Вы можете просмотреть или изменить этот сценарий либо загрузить его и выполнить анализ самостоятельно: gist.github.com/mbuckbee/79b2e76bd9271bea38487defd8a9138b Посмотреть список и загрузить его в формате CSV можно по адресу moz.com/top500

Минимальное значение TTL: 1 Максимальное значение TTL: 129 540 Домены с установленным соответствием: 485 Среднее арифметическое значение TTL: 6468 Медианное значение TTL: 300

Минимальные значения были получены от доменов, которые очень часто изменяют записи DNS в целях балансировки нагрузки. Максимальные значения соответствовали доменам, которые не обновлялись в течение длительного времени (да-да, python.org, это я про вас).

При необходимости обосновать свое решение об установке низкого (в пределах 1 часа, 3600 секунд) значения TTL вы можете предоставить медианное значение 300 секунд (5 минут) и уверенно заявить, что у вас есть эмпирическое доказательство правильности своего выбора.

4. ИНСТРУМЕНТЫ ПЛАТФОРМЫ DNS

Как проверить значение TTL для записи DNS в Windows?

Для проверки записей DNS в Windows проще всего использовать служебную программу nslookup: technet.microsoft.com/en-us/library/bb490950.aspx. Пример: C:\>nslookup -type=cname -debug www.varonis.com


Значение TTL указывается в нижней части выходных данных. Фраза Non-authoritative answer (Не заслуживающий доверия ответ) указывает на значение TTL, полученное от клиента (2 минуты 11 секунд до проверки локальным клиентом следующего уровня в цепочке DNS).

Как проверить значение TTL для записи DNS в Unix/Linux/Mac?

В системе Unix (и ее производных) для устранения проблем с DNS используется команда dig. Пример: dig www.varonis.com


Значение TTL обведено красным цветом.

Как проверить запись DNS через Интернет?

Иногда бывает так, что вам необходимо проверить запись DNS без компьютера под рукой. Удобная (и бесплатная) версия команды dig доступна в инструментах Google по следующему адресу: toolbox.googleapps.com/apps/dig.


Значение TTL обведено красным цветом.

Как убедиться в распространении TTL для записи DNS?

Если вам необходимо выяснить, обновлены ли на конкретном сервере DNS параметры записи DNS, то в любом инструменте DNS (dig, nslookup и т. д.) вместо локальной настройки по умолчанию можно выбрать сервер DNS, на котором будет выполнен запрос.

Для получения полной картины изменений я рекомендую ресурс whatsmydns.net, который позволяет проверить множество серверов DNS верхнего уровня (уровень поставщика Интернета) и выявить возможные проблемы.

ДАЛЬНЕЙШИЕ ДЕЙСТВИЯ ПО НАСТРОЙКЕ TTL ДЛЯ ЗАПИСЕЙ DNS

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

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

Рейтинг
( 1 оценка, среднее 4 из 5 )
Понравилась статья? Поделиться с друзьями:
Для любых предложений по сайту: [email protected]