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


ВНИМАНИЕ! По последним данных от надежного источника стало известно, что не только TTL является причиной блокировки мобильного интернета. Если же вам нужна информация по ТТЛ для роутеров, и на что данный протокол влияет, то смотрите последнюю главу.

Всем доброго времени суток! Скорее всего ты зашел сюда для того, чтобы обойти блокировку мобильного оператора. Ведь с помощью именно TTL данные компании ловят за руку абонентов, который включили на своем телефоне режим точки доступа. Что такое TTL? Time To Live – это время жизни пакета во вселенной IP адресации.

Когда пользователь включает режим модема или точки доступа, то телефон начинает раздавать Wi-Fi вместе с интернетом. При подключении компьютера, ноутбука, телевизора, приставки или другого телефона (планшета) провайдер именно за счет TTL и понимает, что идет раздача интернета на другое устройство.

На данный момент этим грешат такие операторы как МТС, Билайн, YOTA, Теле2 и другие. Насколько я помню, только у Мегафона ограничения пока нет, но я могу ошибаться – поправьте меня в комментариях, если я не прав. Далее я расскажу, как узнать значение TTL, как его поменять и как обойти блокировку. Начнем с теории – советую её прочесть, чтобы вам в дальнейшем было все понятно.

Понятие TTL

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

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

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

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

Смена TTL на Android без и с правами суперпользователя

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

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

Исходя из определения, TTL (Time to live) — это так называемое время жизни пакета данных непосредственно в IP-протоколе. С помощью данного показателя оператор мобильной связи может с легкостью ограничить доступ к интернету с оборудования, которому вы заблаговременно раздали трафик.

Именно TTL используется операторами для определения несанкционированного подключения устройств к общей сети.

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

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

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

В каких случаях стоит менять ttl

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

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

Как проверить наличие прав суперпользователя

Изменение значения TTL на устройствах под операционной системой Android зачастую требует получения прав суперпользователя. Чтобы узнать, открыты ли на вашем девайсе root-права, лучше всего воспользоваться дополнительным софтом, который вы можете скачать с Google Play бесплатно. К наиболее популярным приложениям, которые позволят быстро определить, есть ли у вас права суперпользователя, следует отнести Root Checker и Terminal Emulator.

Первая программа не вызовет сложностей в использовании – проверка на наличие рут-прав в ней проводится интуитивно. А вот вторая, Terminal Emulator, требует введения в открывшемся терминале команды «SU», благодаря чему вы с легкостью определите наличие прав суперпользователя. При позитивном результате терминал выдаст значения # или $.

Возможно ли сменить TTL без рут-прав

Изменение значения TTL без рут-прав возможно, но далеко не на всех многофункциональных гаджетах под ОС Android. Чтобы провести изменение TTL на Android без root, достаточно установить Terminal Emulator for Android:

  1. Откройте приложение и наберите команду cat /proc/sys/net/ipv4/ip_default_ttl.
  2. Если у вас подходящая версия устройства, откроется базовое значение TTL. Повысьте его на 1 и установите на всех устройствах, которые вы хотели бы присоединить к общей сети.
  3. Перезагрузите всю технику и проверьте результат.

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

Как изменить TTL с рут-правами

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

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

Меняем TTL с помощью TTL Master

Достоинством программы TTL Master является ее простота. Достаточно выполнить несложную последовательность действий:

  1. Зайдите в Google Play, найдите приложение и установите его на гаджет, который нуждается в смене параметра.
  2. Открыв программу, вы увидите текущее значение вашего TTL и активную графу, где можно его изменить. Смело меняете.
  3. Перезагрузите девайс. После этого вы заметите, что все ограничения по скорости и прочие нюансы, введенные оператором, сняты.

Меняем TTL, используя ES проводник

Через ЕS Проводник замена показателя времени жизни пакета займет немного больше времени, чем через программу TTL Master, но результата вы добьетесь. Вам понадобится:

  1. Перевести смартфон в режим «В самолете», отключив тем самым все сети на девайсе.
  2. Запустить ES Проводник и найти файл по пути proc/sys/net/ipv4/ip_default_ttl
  3. Откройте файл любым текстовым редактором и замените указанное значение на то, которое вам необходимо, сохранив правки.
  4. Выключите режим «В самолете» и включите раздачу сети на другие устройства.

Обход ограничений в режиме модема (изменение TTL):

Источник: https://v-androide.com/instruktsii/internet/smena-ttl-na-android.html

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

Потому что ему от абонента начинают приходить пакеты с разными значениями 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.

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

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

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

Определение значения TTL в Windows 7

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

  1. Запустите «Командную строку» удобным для вас образом, например, воспользовавшись меню «Пуск».

В открывшемся окне напишите ping 127.0.1.1 и активируйте команду нажатием на клавишу Enter. Это запустит процедуру проверки глобальной сети и выведет на экран общие сведения.

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

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

Изменяем TTL в Windows 7

Давайте перейдем непосредственно к теме статьи. Выполняется изменение значения только одним способом — созданием нового параметра реестра. Изначально он просто отсутствует, а это значит, что Time To Live имеет свою стандартную форму. Если вы создадите конфигурационную строку самостоятельно и зададите ей нужное значение, ОС будет отталкиваться именно от этого параметра. В реализации этих действий нет ничего сложного, просто внимательно ознакомьтесь со следующей инструкцией.

    Потребуется запустить «Редактор реестра», и проще всего это сделать через утилиту «Выполнить». Откройте ее с помощью горячей клавиши Win + R, в поле введите regedit и нажмите на Enter.

В открывшемся окне перейдите по пути HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters .

Здесь создайте параметр «DWORD (32 бита)» или «QWORD (64 бита)», отталкиваясь от разрядности ОС.

В обязательном порядке установите имя «DefaultTTL» и нажмите на Enter. Затем дважды кликните ЛКМ по созданной строке для открытия меню «Свойства».

Выберите десятичную систему исчисления, отметив маркером соответствующий пункт.

Установите значение 64 и закройте окно.

Теперь можете убедиться, что изменения были применены.

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

Сегодня вы были ознакомлены с процедурой изменения TTL в Windows 7. Как видите, осуществляется это очень быстро путем создания всего одного параметра реестра. Следуйте приведенным инструкциям, и у вас точно получится справиться с поставленной задачей без каких-либо трудностей.

Отблагодарите автора, поделитесь статьей в социальных сетях.

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

  • Можно привести TTL к единому значению 63, поменяв его на раздающем телефоне и на принимающем компьютере. Это изменение TTL без фиксации.


Изменение TTL раздающего телефона и принимающего устройства

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


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

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

Как отредактировать TTL в реестре Windows

  • Значение TTL редактируется в системном реестре. Чтобы его отредактировать, откройте реестр.
  • Для этого наберите в меню «Пуск» regedit – редактор реестра, и запустите его от имени администратора. Во Windows 7 для этого надо щелкнуть пункт меню правой кнопкой мыши и выбрать «Запуск от имени администратора».

  • Откроется редактор реестра. Здесь куча непонятных папок, используемых для системных нужд.
  • Нам надо открыть папку

HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services Tcpip Parameters

  • В ней как раз задаются параметры пакета, в том числе TTL. Нужно создать параметр с именем DefaultTTL. Для этого щелкните правой кнопкой мыши на правой панели и выберите «Создать» -> «Параметр DWORD (32-бита)».
  • Параметр создался.
  • Задайте его значение. Для этого дважды щелкните и введите число 65, выбрав десятичную систему счисления.

  • Перезагрузите компьютер.

Кэширование TTL и DNS

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

Термин «время жизни» также используется для описания времени, в течение которого запись DNS может быть возвращена из кэша. В этом контексте USB TTL представляет собой числовое значение, заданное в записи DNS на авторитетном DNS-сервере для домена, определяющее количество секунд, за которое сервер кэширования может предоставить свое значение для записи. Когда прошло нужное количество секунд с момента последнего обновления, кэширующий сервер снова выйдет на сервер и получит текущее (и, возможно, измененное) значение для записи. Характерные особенности процесса кеширования, где TTL:

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