Šie tinklai perduodami paketais. Paketai, prieš pasiekdami paskirties vietą, pereina per kelis kitus tinklo mazgus, kad atsidurtų paskirties vietos tinklo pradžioje, o tada - tiesiai į paskirties vietą. Neretai tokie paketai nuklysta. Siekiant nukreipti juos tinkamu keliu tinkle, kiekvienam paketui suteikiamas tam tikras gyvavimo laikas.
Už jo gyvavimo trukmę atsakingas TTL parametras. Tai yra mazgų, kuriuos paketas gali praeiti prieš sunaikinimą, skaičius. Kiekvienam mazgui praeinant TTL vertė mažėja, kol pasiekia nulinę vertę Kuo didesnis TTL, tuo painesnius tinklus gali pereiti paketas.
Žemo lygio TTL tinklo parametrus "Linux" sistemoje valdo branduolys. Jį galima konfigūruoti naudojant branduolio konfigūracijos sąsają. Kokį TTL naudoja sistema?
Pasinaudokime komanda ping:
$ ping 127.0.0.1
Siunčiamo paketo duomenyse matome TTL, su kuriuo buvo išsiųstas paketas. Matome, kad naudojama 64 reikšmė. Windows sistemoje naudojama 128 TTL vertė. Paprastai to pakanka, nes tarp tinklo mazgų yra bent 20-30 maršrutizatorių. Ne visada verta keisti TTL, kad paketai galėtų pasiekti savo paskirties vietą.
Pakeisti TTL galima koreguojant parametrą net.ipv4.ip_default_ttl.
Išbandome tokią komandą:
$ sudo sysctl -w net.ipv4.ip_default_ttl=65
Kad pakeitimai išliktų ir po perkrovimo, į /etc/sysctl.conf failą galima įrašyti šią nustatymų eilutę:
$ sudo vi /etc/sysctl.conf
net.ipv4.ip_default_ttl=65
Po TTL bus 65:
Jei nenorite keisti branduolio nustatymų, galite keisti TTL paketams, kai jie praeina pro "iptables" tinklo filtrą. Norėdami tai padaryti, paleiskite tokią komandą:
$ iptables -t mangle -A POSTROUTING -j TTL --ttl-set 65
Tai taip pat veiks. Pakeisti "Linux" TTL nėra sudėtinga.
Apply the discount by inserting the promo code in the special field at checkout: