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

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

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

sysctl -w net.ipv4.ip_default_ttl=65

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

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

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

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

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

cat > /etc/sysctl.d/99_default_ttl.conf

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

net.ipv4.ip_default_ttl=65

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

sysctl --system

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

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

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

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

  1. В Ubuntu 20.04 после изменения ttl данным способом отваливаются все беспроводные соединения, система видит все wifi сети, но подключиться не может ни к одной.

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

    После данного способа ничего отваливаться не будет.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *