Baza wiedzy

Znajdź utratę pakietów za pomocą MTR i przeczytaj ją poprawnie

Najczęściej zgłaszana utrata pakietów to limit prędkości ICMP na routerze tranzytowym. Oto jak uruchomić MTR poprawnie i odróżnić jedno od drugiego przed napisaniem zgłoszenia.

Instalacja

apt install -y mtr-tiny     # Debian
dnf install -y mtr          # AlmaLinux

Uruchomienie w odpowiedni sposób

mtr -rwbc 200 <destination>
  • -r tryb raportu, więc kończy działanie z czymś, co można wkleić
  • -w szerokie wyjście, aby długie nazwy hostów przetrwały
  • -b pokaż nazwę i adres dla każdego przeskoku
  • -c 200 dwieście cykli, około trzech i pół minuty, i różnica między dowodem a anegdotą

Dziesięć pakietów nie dowodzi niczego. Jeśli dziesięciocyklowe uruchomienie pokazuje straty, uruchom dwieście cykli, zanim cokolwiek z tego wyciągniesz.

Najpierw przeczytaj ostatni przeskok

Routery obniżają priorytet pakietów zaadresowanych do siebie. Router tranzytowy przenoszący setki gigabitów odpowie na Twoje sondy z wygasłym TTL, gdy ma wolny cykl, i odrzuci je, gdy nie ma, co maluje straty na środku raportu, podczas gdy każdy pakiet, na którym Ci zależy, dociera nienaruszony.

Dwie zasady obejmują większość raportów:

  1. Straty na przeskoku siódmym, których nie ma na ósmym i dalszych, to limit szybkości. Zignoruj je.
  2. Straty, które zaczynają się na przeskoku siódmym i trwają aż do celu, są prawdziwe, a przeskok, na którym się zaczynają, jest miejscem, którego należy szukać.

Opóźnienie zachowuje się w ten sam sposób. Przeskok, który dodaje osiemdziesiąt milisekund, a następnie przekazuje ruch dalej z poprzednią wartością, odpowiada powoli, a nie przekazuje powoli.

ICMP to nie Twój ruch

Jeśli usługa działa na TCP, testuj na TCP:

mtr -rwbc 200 --tcp --port 443 <destination>

Sieci, które mocno ograniczają ICMP, często przepuszczają TCP bez zmian. Odwrotny przypadek warto odkryć, zanim obwiniasz czyjąś sieć: zapora, która odpowiada na pingi i odrzuca port, do którego faktycznie sięgają Twoi użytkownicy.

Obie strony, za każdym razem

Routing jest asymetryczny częściej niż nie. Ścieżka od Ciebie do nas to nie jest ścieżka od nas do Ciebie, a raport z jednego końca opisuje dokładnie jeden z nich. Uruchom MTR z instancji w kierunku klienta i od klienta w kierunku instancji, a następnie załącz oba. Naszą połowę ścieżki można również przesondować bez żadnej powłoki, z looking glass.

Potwierdź to w licznikach TCP

MTR opisuje ścieżkę. Statystyki gniazd opisują konsekwencję:

ss -ti state established
nstat -az TcpRetransSegs TcpExtTCPLostRetransmit

Wskaźnik retransmisji powyżej około jednego procenta, na połączeniu, które powinno być czyste, potwierdza raport. Zerowe retransmisje wraz z MTR pełnym strat oznaczają, że patrzysz na limit szybkości i nic więcej.

Co nam wysłać

  • Oba raporty MTR, dwieście cykli, jako tekst, a nie zrzut ekranu
  • Cel, protokół transportowy i port
  • Znaczniki czasu ze strefą czasową oraz informację, czy straty są stałe, czy w seriach
  • Identyfikator instancji

Mniej więcej połowa z nich sprowadza się do ograniczonego przeskoku w środku, co mówimy w pierwszej odpowiedzi. Resztę zwykle możemy przekierować w ciągu godziny: straty w naszej własnej sieci to nasz problem, a straty na jednej ścieżce tranzytowej to kwestia przeniesienia ruchu na inną.

Gotowi, gdy jesteś

Wybierz miasto. Wybierz rozmiar. Płać kryptowalutą.

Bez formularzy o tym, kim jesteś, bez czekania na akceptację człowieka, bez telefonu w celu weryfikacji. Faktura zostaje uregulowana, a dane logowania trafiają do Twojej skrzynki.