Disse nettverkene overføres ved hjelp av pakker. Pakker passerer gjennom flere andre nettverksnoder før de når destinasjonen, for så å ende opp i begynnelsen av destinasjonens lokale nettverk og deretter direkte til destinasjonen. Det er ikke uvanlig at slike pakker kommer på avveie. For å lede dem til riktig vei i nettverket får hver pakke en viss levetid.
TTL-parameteren er ansvarlig for levetiden. Dette er antallet noder en pakke kan passere før den ødelegges. Under passering av hver node synker TTL-verdien til tiden når en verdi på null Jo høyere TTL, desto mer innviklede nettverk kan pakken krysse.
TTL-nettverksparametrene på lavt nivå i Linux styres av kjernen. De kan konfigureres ved hjelp av kjernens konfigurasjonsgrensesnitt. Hvilken TTL bruker systemet?
La oss bruke ping-kommandoen:
$ ping 127.0.0.1
I pakkesendingsdataene kan vi se TTL-verdien som pakken ble sendt med. Vi kan se at verdien som ble brukt, er 64. For Windows brukes en TTL-verdi på 128. Dette er vanligvis nok, ettersom det er minst 20-30 rutere mellom nettverksnodene. Det er ikke alltid det lønner seg å endre TTL-verdien for at pakkene skal nå frem til destinasjonen.
Det er mulig å endre TTL ved å justere parameteren net.ipv4.ip_default_ttl.
Vi prøver en slik kommando:
$ sudo sysctl -w net.ipv4.ip_default_ttl=65
For å få endringene til å vedvare etter en omstart kan du skrive denne linjen med innstillinger til filen /etc/sysctl.conf:
$ sudo vi /etc/sysctl.conf
net.ipv4.ip_default_ttl=65
Etter TTL vil være 65:
Hvis du ikke ønsker å endre innstillingene i kjernen, kan du endre TTL til pakkene når de passerer gjennom nettverksfilteret iptables. Dette gjør du ved å kjøre en kommando som denne:
$ iptables -t mangle -A POSTROUTING -j TTL --ttl-set 65
Dette vil også fungere. Det er ikke vanskelig å endre TTL i Linux.