Как да използвате Traceroute за идентифициране на мрежови проблеми
Traceroute е инструмент за командния ред, включен в Windows и други операционни системи. Заедно с командата ping, това е важен инструмент за разбиране на проблеми с интернет връзката, включително загуба на пакети и висока латентност.
Ако имате проблеми с свързването с уебсайт, traceroute може да ви каже къде е проблемът. Също така може да ви помогне да визуализирате трафика на пътя между вашия компютър и уеб сървър.
Как работи Traceroute
Когато се свързвате към уебсайт - да речем, howtogeek.com - трафикът трябва да мине през няколко посредника, преди да достигне до уебсайта. Трафикът минава през вашия локален рутер, рутерите на вашия интернет доставчик, в по-големи мрежи и т.н..
Traceroute ни показва пътния трафик, необходим за достигане до уебсайта. Той също така показва закъсненията, които възникват при всяко спиране. Ако имате проблеми с достигането до даден уебсайт и че уебсайтът работи правилно, е възможно някъде по пътя между компютъра ви и сървърите на уебсайта да има проблем. Traceroute ще ви покаже къде е този проблем.
Използвахме traceroute, за да обясним - и демонстрираме - кой предоставя интернет услугата за вашия доставчик на интернет услуги.
В по-технически смисъл, traceroute изпраща поредица от пакети, използвайки протокола ICMP (същия протокол, използван за командата ping.) Първият пакет има време за живот (известен също като TTL, или лимит на хоп) от 1, вторият пакет има TTL от 2, и така нататък. Всеки път, когато пакет се предава на нов рутер, TTL се намалява с 1. Когато достигне 0, пакетът се отхвърля и рутерът връща съобщение за грешка. Чрез изпращане на пакети по този начин, traceroute гарантира, че всеки рутер в пътя ще отхвърли пакет и ще изпрати отговор.
Как да използвате Traceroute
Traceroute се изпълнява от командния ред или от прозореца на терминала. В Windows натиснете клавиша Windows, въведете Command Prompt и натиснете Enter, за да стартирате.
За да стартирате traceroute, изпълнете командата tracert, последвана от адреса на уебсайт. Например, ако искате да стартирате traceroute за „Геймс“, трябва да изпълните командата:
tracert howtogeek.com
(На Mac или Linux стартирайте traceroute howtogeek.com вместо.)
Постепенно ще виждате формата на маршрута, докато компютърът ви получава отговори от маршрутизаторите по пътя.
Ако пуснете traceroute за друг уебсайт - особено за един хост в различен регион на света - ще видите как различните пътеки се различават. Първите „прескоци“ са същите като трафика, достигащ до вашия ISP, докато по-късните хопсове са различни, тъй като пакетите отиват някъде другаде. Например, по-долу можете да видите пакетите, които пътуват до Baidu.com в Китай.
Разбиране на изхода
Основната идея е очевидна. Първият ред представлява домашния ви маршрутизатор (ако сте зад рутера), следващите редове представляват вашия интернет доставчик и всеки ред по-надолу представлява рутер, който е по-далеч.
Форматът на всеки ред е както следва:
Hop RTT1 RTT2 RTT3 име на домейн [IP адрес]
- Hop: Всеки път, когато даден пакет се предава между рутер, това се нарича "hop." Например, в изхода по-горе, можем да видим, че са необходими 14 хмела, за да достигнат сървърите на How-To Geek от текущото ми местоположение..
- RTT1, RTT2, RTT3: Това е времето, през което пакетът трябва да стигне до хоп и обратно към компютъра ви (в милисекунди). Това често се нарича латентност и е същият номер, който виждате при използване на ping. Traceroute изпраща по три пакета за всеки хоп и показва всеки път, така че имате представа колко последователно (или несъвместимо) е латентността. Ако видите * в някои колони, не сте получили отговор - което може да означава загуба на пакети.
- Име на домейн [IP адрес]: Името на домейна, ако има такъв, често може да ви помогне да видите местоположението на маршрутизатора. Ако това не е налично, се показва само IP адресът на маршрутизатора.
Сега би трябвало да можете да използвате командата tracert и да разберете изхода му.