Aceste rețele sunt transmise prin pachete. Pachetele trec prin alte câteva noduri de rețea înainte de a ajunge la destinație pentru a ajunge la începutul rețelei locale a destinației și apoi direct la destinație. Nu este neobișnuit ca astfel de pachete să se rătăcească. Pentru a le direcționa pe calea corectă în rețea, fiecărui pachet i se acordă o anumită durată de viață.
Parametrul TTL este responsabil pentru durata sa de viață. Acesta este numărul de noduri prin care poate trece un pachet înainte de a fi distrus. În timpul trecerii fiecărui nod, valoarea TTL scade până când timpul ajunge la o valoare de zero Cu cât TTL este mai mare, cu atât rețelele pe care pachetul le poate traversa sunt mai întortocheate.
Parametrii de rețea TTL de nivel scăzut în Linux sunt controlați de kernel. Acesta poate fi configurat utilizând interfața de configurare a nucleului. Ce TTL utilizează sistemul?
Să folosim comanda ping:
$ ping 127.0.0.1
În datele de trimitere ale pachetului putem vedea TTL-ul cu care a fost trimis pachetul. Putem vedea că valoarea utilizată este 64. Pentru Windows, se utilizează o valoare TTL de 128. Acest lucru este de obicei suficient, deoarece există cel puțin 20-30 de routere între nodurile rețelei. Nu merită întotdeauna să modificați TTL-ul pentru ca pachetele să ajungă la destinație.
Modificarea TTL este posibilă prin ajustarea parametrului net.ipv4.ip_default_ttl.
Încercăm o astfel de comandă:
$ sudo sysctl -w net.ipv4.ip_default_ttl=65
Pentru a face modificările să persiste după o repornire, puteți scrie această linie de setări în fișierul /etc/sysctl.conf:
$ sudo vi /etc/sysctl.conf
net.ipv4.ip_default_ttl=65
După TTL va fi 65:
Dacă nu doriți să modificați setările kernel-ului, puteți modifica TTL-ul pachetelor pe măsură ce trec prin filtrul de rețea iptables. Pentru a face acest lucru, executați o comandă precum aceasta:
$ iptables -t mangle -A POSTROUTING -j TTL --ttl-set 65
Aceasta va funcționa, de asemenea. Modificarea TTL-ului Linux nu este deloc dificilă.