Как поменять ttl на linux

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

Как навсегда изменить время жизни пакета (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 также изменилось. И данная настройка сохранится после перезагрузки.

Источник

Артём Санников

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

Изначально условия тарифа звучат следующим образом: вы можете пользоваться интернетом в любое время суток и без ограничения трафика, но за раздачу интернет-соединения через Wi-Fi, Usb-модем или Bluetooth с вас будет списана абонентская плата в размере N рублей.

P.S: я пользуюсь услугами оператора МТС, и за раздачу интернета раньше снимали 30 рублей в сутки, теперь же снимают по 50 рублей.

Но как быть, если нужно раздать интернет по Wi-Fi, а лишних денежных средств на балансе нет? Всё очень просто! нужно зафиксировать значение TTL файла на определённом значении в операционной системе: Linux, Windows или Mac OS.

P.S.S: данная статья носит исключительно ознакомительный характер, я никого не призываю использовать данную информацию в практических целях.

Изменение значения TTL в операционной системе Ubuntu

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

1. Открываем терминал сочетанием клавиш Ctrl+Alt+T.

2. Вводим следующую команду от супер-пользователя:

sudo vi /etc/init.d/local.autostart

Нажимаем Enter.

3. Система потребует ввести пароль от учётной записи администратора, вводим его и нажимаем Enter. Далее жмем кнопку i — это укажет редактору vi, что нужно перейти в режим редактирования.

4. Сейчас мы должны ввести скрипт с учётом особенности операционной системы вашего смартфона. Если у вас Android или iOS — нужно указать значение TTL=65 (вместо 64), а если Windows — то указываем TTL=129 (вместо 128).

Почему значение на 1 больше? Всё очень просто, значение TTL на компьютере должно быть на 1 больше, чем значение TTL на телефоне, с которого вы раздаете.

Скрипт для обхода ограничений на раздачу интернета для Android и iOS:

#!/bin/bash sudo iptables -t mangle -A POSTROUTING -j TTL —ttl-set 65

Скрипт для обхода ограничений на раздачу интернета для Windows Phone:

#!/bin/bash sudo iptables -t mangle -A POSTROUTING -j TTL —ttl-set 129

5. Для завершения редактирования нажимаем Esc. Затем сохраняем внесённые изменения нажатием клавиш: Shift+ZZ (два раза нажать Z).

6. Присваиваем скрипту права на запуск:

sudo chmod +x /etc/init.d/local.autostart

Нажимаем Enter.

7. Добавляем скрипт в автозапуск:

sudo update-rc.d local.autostart defaults 80

8. Нажимаем Enter.

Всё готово! Мы успешно зафиксировали значение TTL в операционной системе Ubuntu, и обошли ограничение операторов мобильной связи: МТС и Yota, на раздачу интернет соединения по Wi-Fi, Usb-модем b Bluetooth.

С уважением, Артём Санников

Сайт:

Метки: Ubuntu, Руководства.

Как навсегда изменить 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/ ?

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

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

жизнь спас

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