Изменить ttl linux ubuntu

Изменить ttl linux ubuntu

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

Значение ttl

Ранее я вам рассказывал про модель OSI, и там у сетевого пакета, есть такое значение TTL (Time To Life), если перевести, то это время жизни пакета. TTL это некий счетчик, который уменьшается на единицу, при прохождении сетевого пакета или как его еще называют, кадра через маршрутизатор, делается это для того, чтобы он, при невозможности найти пункт назначения, вечно не бегал по роутерам, создавая нагрузку и паразитный трафик.

Именно время жизни пакета (TTL) нам и поможет, определить кто там с другой стороны. У каждой операционной системы этот показатель свой, так например

  • Cisco TTL > равен 255
  • ttl windows > равен 128
  • Unix ttl > равен 64
  • Android и IOS Apple> 65
  • Lumia > 130

Как видите у всех он разный, и давайте разбираться, для примера я пропингую коммутатор Cisco, для этого открываем командную строку Windows, у вас может и linux быть.

Как видите значение ttl тут 255, что и показывает, что отвечает вам IOS у устройства Cisco, как видите команда ping отлично узнала операционную систему хоста с другой стороны.

Попробуем пропинговать unix систему, у меня например в локальной сети шлюзом выступает Kerio Control, на linux версии. Пингуем.

Как видите тут значение ttl равно 64, что означает unix платформу, так могут отвечать различные D-link устройства и другие домашние роутеры.

Давайте еще проверим Windows платформы, например у меня есть Windows 8.1 в локальной сети, сделаем пинг. И видите, что оно равно 128, как я и говорил.

Вот вам. тогда загадка, пингуем Windows Server 2012 R2, на нем есть веб сайт relay.aetp.ru. Что вы видите, а то что значение ttl равно 120, но в Windows же 128 по умолчанию идет, не стыковка 🙂

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

Как видите сетевой пакет проходит не один хо до нужного адреса, и на определенных этапах он теряет от ttl по единичке. Все теперь вы знаете как узнать ttl windows.

Читайте также:  Лучший фоторедактор mac os лучшая

Как изменить ttl windows

Давайте рассмотрим ситуацию, что вам нужно изменить ttl windows, поверьте бывают такие ситуации в жизни, примером может быть компания Yota, с ее дурацкой политикой ограничений Yota на раздачу Wi-Fi. Представим ситуацию, что взяли себе оператора Yota на телефон и решили раздать Wifi на ноутбук, но вы даже не знали подводных камней. в плане фильтрации пакетов со стороны Yota. Она жестко режет скорость, и режет она посредством значения ttl, оно должно быть 64, а если у вас дополнительное устройство, то это лишний хоп и значит ttl меньше, вот для обхода этой подставы с раздачей Wifi на ноутбук от Yota, мы и изменим ttl. Менять ttl мы будем в Windows 10, но данные действия подойдут и для Windows 7 и 8.1.

В итоге у вас откроется редактор реестра Windows. Вам нужно перейти в ветку реестра

В разделе вам нужно создать значение, все зависит от разрядности Windows, если 32 битная, то создаем параметр DWORD (32 бита), если 64 битная, то QWORD (64 бита). Я создаю QWORD.

эта лишняя единица, как раз и пойдет на лишний скачок через ваш телефон с ноутбука и Yota ничего не увидит, как видите изменить ttl windows 10, очень просто.

Как изменить ttl Ubuntu, Debian

И так с Windows мы уже научились, менять ttl, но не у всех стоит именно он, есть люди с Ubuntu например, давайте учиться как обойти ограничение на раздачу интернета через телефон на компьютер с Ubuntu на борту, в случае, если ваш оператор Йота, вы должны сделать несколько простых вещей.

1) Нажать одновременно Ctrl+Alt+T. Так вы вызовете терминал.

2) Ввести первую команду:

3) Попросит ваш пароль, вводим, жмем Enter, далее жмем i — это введет редактор vi в режим редактирования.

4) Вводим сам скрипт фиксирования TTL Ubuntu на значении 65, если у вас Android или iOS (у них стандартный TTL=64), если вы обладатель Люмии, где стандартный TTL равен 128, вам вместо 65 нужно прописать 129. Все это по простейшей формуле, ttl на компе должен быть на 1 больше, чем ttl на телефоне, с которого вы раздаете. Теорию я вам рассказал, а теперь сам скрипт:

5) Далее, для окончания редактирования жмем Esc. Потом сохраняем файл, зажимая Shift+ZZ.

6) Теперь необходимо проставить скрипту права на запуск:

7) Теперь последнее, добавляем все это дело в автозапуск:

8) Нажимаем Enter. Все будет делаться автоматически и без вашего участия.

Как изменить ttl MacOS

Ну и конечно, нельзя обижать яблочников 🙂 Для изменения ttl на mac делаем следующее

Идем в /Library/StartupItems. Открываем терминал и прописываем:

Создаем там папку (например, это будет yota). В терминале пишем: /Library/StartupItems> sudo mkdir yota

Идем туда. В терминал вставляем: /Library/StartupItems> cd yota/

4) Создаем там скрипт (он должен называться так же как и папка), который хотим выполнять.
Для создания скрипта в терминал вбиваем:
/Library/StartupItems/yota> sudo vim yota
И тут откроется редактор Vim! Сюда копируем сам скрипт:

Читайте также:  Ubuntu linux с нуля pdf 2 издание

# Скрипт смены ttl на Mac OS X:

И закрываем Vim с сохранением результата, вводим в виме (редакторе): yota

5) Создаем файл параметров StartupParameters.plist.
/Library/StartupItems/yota> sudo vim StartupParameters.plist

И тут опять откроется редактор Vim! Сюда копируем содержание файла параметров:
Самое главное, чтобы в строчке Provides было прописано то же имя, что и название скрипта и название папки:

И опять закрываем Vim с сохранением результата, для этого вводим: w! StartupParameters.plist

6) Выставляем права на выполнение нашему скрипту.
/Library/StartupItems/fuckingyota> sudo chmod 755 yota

7) в итоге получаем: /Library/StartupItems/yota> ll

9) А сейчас, мы не будем перезагружать комп, а просто стартанем скрипт, чтобы убедиться в его работоспособности:
/Library/StartupItems/yota> sudo SystemStarter start fyota

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

Источник

Как навсегда изменить TTL в Ubuntu?

Пробовал делать вот так, но увы, после перезагрузки ttl=64.

Попробовал вот так:

В нормальных дистрах есть /etc/sysctl.conf, не знаю как там в убунте.

А, да, извини. Это временная установка.

Лучший вариант, наверное, это создать файл, какой-нибудь /etc/sysctl.d/99_default_ttl.conf, в который добавить net.ipv4.ip_default_ttl=65. Затем sudo sysctl —system.

Спасибо, это помогло =)

Это во всех дистрах

Это linux? Ща я с Соляры вывод принесу.

Ого, в Генту файл /etc/sysctl.conf считается legacy. А современным подходом считаются конфиги в /etc/sysctl.d/ ?

Хз почему у тебя так, но вот:

Понятно, причина в этом:

жизнь спас 🙂 Спасибо

нормальные это те, с которыми ты сталкивался?

Всё помогло лучший вариант что можно было придумать

Не во всех, в генту делали так что этот файл не читался. Там патч для какого-то древнего бага в procps был, из генту патч выкинули и всё, файл больше не считывается. Обнаружить это конечно можно только постфактум и опытным путём.

Источник

Смена значения ТТL

Доброго времени суток. Нужно сменить ttl — воспользовался следующим мануалом —

добавить настройку в конфиг: sudo echo net.ipv4.ip_default_ttl=65 >> /etc/sysctl.conf применить новые параметры: sudo sysctl –system

Однако после этого начались заминки — В Ubuntu 20.04 после изменения ttl данным способом отваливаются все беспроводные соединения, система видит все wifi сети, но подключиться не может ни к одной. Вопрос — в чем может быть заминка — в Ubuntu 18.04 схожая инструкция работала вполне себе.

Linux 5.4.0-42-generic #46-Ubuntu SMP Fri Jul 10 00:24:02 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.1 LTS Release: 20.04

Смена дефолтового TTL никак не влияет на подключение wifi. Проблема в чем-то другом.

Исправь в /etc/sysctl.conf значение ttl на 64 и примени его. Если wifi восстановится, то удали нафиг эту убунту 🙂

Есть вопрос — а просто сказать sudo sysctl net.ipv4.ip_default_ttl=65 нельзя было? А потом, если оно помогло, то внести в /etc/sysctl.conf.

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

Читайте также:  Windows add python to path windows 10

Источник

Обход ограничений Yota на Linux

Началось все ещё зимой далёкого 2016 года, когда я только приобрел SIM карту с безлимитным мобильным Интернетом. Как и многим мне захотелось найти способ раздавать его бесплатно.

Долгое время я просто менял TTL настройки своего ноутбука, но, со временем, это стало работать с переменным успехом. Очень часто вылезало окно с запретом использования Wi-Fi и просьбой оплатить дальнейшее использование. Приходилось ждать полчаса чтобы работа восстановилась. Тогда то я и решил поэкспериментировать.

Подготовка к обходу ограничений Yota

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

Теперь его необходимо установить. Открываем командную строку и вводим:

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

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

Обходим ограничения Yota

Сразу скажу, что делаю я это на Kali Linux. После загрузки системы изменяем настройки TTL компьютера (или ставим это дело в автозапуск). Для этого нужно ввести эту команду:

Теперь можно подключится к раздаваемому Wi-Fi.
Как только подключение установлено нужно быстро ввести команды:

В командной строке должен появиться ваш новый IP адрес.

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

Источник

Как навсегда изменить время жизни пакета (TTL) в Ubuntu

В статье о времени жизни пакета был приведён пример изменения TTL в Windows. Сегодня поговорим о том, как поменять значение TTL по умолчанию в Ubuntu-подобных дистрибутивах Linux. Здесь основной нюанс заключается в следующем — поменять значение TTL просто, но нужно его ещё и сохранить.

Для того, чтобы проверить время жизни пакетов в Linux, достаточно также запустить ping localhost. По умолчанию в Linux TTL=64. Для изменения этого значения в Ubuntu и других похожих дистрибутивах используйте команду

Конечно, можно указать и другое значение, кроме 65. На скриншоте ниже видно, что теперь команда ping отображает TTL=65.

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

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

Нам нужно создать файл в каталоге /etc/sysctl.d, я дал ему имя 99_default_ttl.conf, но оно не обязательно должно быть именно таким. Для создания файла я использую удобную мне команду cat (подробнее о командах для создания файлов в Linux можно прочитать по этой ссылке):

После нажатия enter данные со стандартного ввода (т.е. с клавиатуры) будут перенаправлены в файл /etc/sysctl.d/99_default_ttl.conf. Введите нужную нам настройку, а именно:

и нажмите enter. Комбинации Ctrl + D или Ctrl + C запишут изменения в файл. Затем применяем настройки командой

На скриншоте ниже виден весь описанный тут процесс.

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

Источник

Оцените статью