Глосарій
TTL (time to live)
TTL — це кількість секунд, протягом яких DNS-запис можна кешувати, або ліміт хопів IP-пакета, який traceroute використовує для побудови маршруту.
Два значення TTL
Абревіатуру TTL використовують для двох не пов’язаних лічильників, і обидва трапляються в мережевих інструментах.
TTL у DNS
Кожен DNS-запис має час життя в секундах. Він каже резолверам, як довго вони можуть тримати відповідь, перш ніж знову запитати авторитетний сервер. Запис із TTL 3600 можна віддавати з кешу годину; запис із TTL 60 перезапитується щохвилини. Короткі TTL прискорюють поширення змін ціною більшої кількості запитів; довгі TTL зменшують навантаження й роблять ім’я стійким до коротких збоїв авторитетного сервера.
Коли ви шукаєте запис, показаний TTL — це залишковий час на резолвері, який відповів; тому той самий запис показує різні значення з різних резолверів і зменшується між запитами.
TTL IP-пакета (ліміт хопів)
Кожен IP-пакет також має TTL, який в IPv6 називається лімітом хопів. Кожен маршрутизатор, що пересилає пакет, зменшує його на одиницю, а маршрутизатор, який доводить його до нуля, відкидає пакет і надсилає назад повідомлення ICMP «time exceeded». Мета — не дати неправильно маршрутизованим пакетам кружляти вічно. Traceroute цим користується: надсилаючи проби з TTL 1, 2, 3 і так далі, він збирає відповідь time exceeded від кожного маршрутизатора на шляху й відтворює маршрут.
Операційні системи використовують різні початкові значення, зазвичай 64, 128 або 255. Значення, яке доходить до сервера, натякає, скільки хопів перетнув пакет, і приблизно — яка операційна система його надіслала.
Чому це важливо
Для DNS TTL пояснює, чому змінений запис досі «неправильний» з одного резолвера й уже правильний з іншого; наша перевірка поширення DNS показує відповідь і залишковий TTL з резолверів по всьому світу, щоб ви бачили, як зміна розходиться. Планування міграції зазвичай означає зниження TTL за день до неї, щоб перемикання відбулося швидко.
Для пакетів неочікуваний TTL на сервері — відомий сигнал проксі. З’єднання, яке нібито походить із машини на Windows, але прибуває з початковим TTL у стилі Linux, зменшеним на значно більше хопів, ніж передбачає заявлене розташування, вказує на ретранслятор посередині. Ми не оцінюємо цей сигнал на сайті, бо спільний хостинг не може читати сирі заголовки пакетів, але спеціалізовані антифрод-системи це роблять.
Як перевірити
Пошук DNS показує TTL для кожного запису, який повертає. Поширення DNS порівнює відповіді публічних резолверів. Traceroute показує маршрут хоп за хопом, побудований із TTL пакетів.
