Jak zdiagnozować uszkodzony/wadliwy router?

Cześć

Może temat nie jest ściśle związany ze smart home… Poszukuję sposobu na diagnozę który router jest wadliwy… Sytuacja taka, że w losowych okresach czasu mam przerwy w dostępie do internetu - brak dostępu zarówno po wifi jak i lan (dostawca Moico we Wrocławiu).

Łącze światłowodowe → router GPON Halny od ISP przełączony w tryb bridge → kabel LAN 5E 1Gbps → mój router Asus rt ax58u → ~30 urządzeń Wifi + 10 LAN .

Usluga ping (do google) w Home Assistant ewidentnie pokazuje przerwy w dostępie do sieci… Jak sprawdzić czy winny jest router ISP czy mój Asus coś niedomaga?

Najprościej to podmienić tego Asusa na dowolny inny.

Test który pokaże czy faktycznie się coś dzieje to np. słuchanie radia internetowego - jeśli będzie zrywać to masz powód do niepokoju.

HA jest oczywiście wpięty po kablowym Ethernecie, a nie po WiFi?

albo puść “nieskończonego” pinga z komputera podpiętego po kablu i przerwij go po kilku godzinach wtedy ocenimy statystyki

dla windows to polecenie w guście
ping -t google.com
przerywasz ctrl+c

No właśnie na razie chciałbym uniknąć kupowania i konfigurowania nowego routera…
Tak - HA stoi na VM na serwerze QNAPa który jest wpięty w sieć po LAN 1Gbps.
OK. Postaram się zapuścić pinga jutro lub w nd.

Jest jeszcze jedna kwestia - jak obciążasz swoje łącze, bo jeśli je wysycasz czasami (sieci p2p, intensywne pobieranie) to nie ma nic zdrożnego w losowych stratach

Łącze mam 555/555 Mbps - najbardziej wysycone jest jak syn gra :smiley: a to i tak raczej nie przekracza 50-60 Mbps… P2P nie używam, pobieram coś bardzo rzadko…

przykładowy raport (wysyciłem na jakieś kilka procent czasu testu), to oczywiście LTE, a nie światłowód

Ping statistics for 142.250.203.206:
    Packets: Sent = 221, Received = 220, Lost = 1 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 28ms, Maximum = 567ms, Average = 75ms

taki poziom strat pakietu jest znakomity

tu masz świetne okienkowe narzędzie dla Windows

ono przemierzy pingi na każdym hopie

No to tu masz odpowiedź. Ten router to nawet nie jest jakiś sprzęt SOHO tylko dla typowego zjadacza chleba. Masz łącze 500mbit rozumiem wpięte w sprzęt, który takiej prędkości w routing table nie jest w stanie obsłużyć - w sumie jak on z 200mbit wyciągnie dla 500kb pakietów to będzie to bardzo zajebisty wynik. Testowanie uptime przy pomocy ping to też taki “pseudo” test bo brak odpowiedzi na ping w części warunków jest normalny - pakiety ICMP nie są re-routowane w momencie gdy pakiet trafia w zmieniający się LB, który kryje się pod adresem 8.8.8.8. Ogólnie długo pisać ale takim pingiem na 8.8.8.8 to co najwyżej możesz sobie przetestować czy masz dostęp do neta w tym momencie a nie sprawdzać jakość czy SLA połączenia.

Pytanie jak masz skonfigurowany ten ping? powinieneś klepnąć 1-2 pakiety co 10-30 sekund by sprawdzić czy jest odpowiedź, sumować to i dopiero jak np. 5 serii po kolei ma straty pakietów to rozważać, że net padł.

1 polubienie

I co z tego że nie jest to router klasy SOHO, co z tego że mam łącze 500Mbit, skoro nie wykorzystuję nawet 10% możliwości tego łącza, a na dodatek przez ostatni rok działało to na tym routerze “dla zjadacza chleba” doskonale i nie było problemów… no i dalej nie odpowiedziałeś na pytanie jak zidentyfikować który router szwankuje i dlaczego akurat asus a nie ten halny od isp…

Na podstawie sensora ping nie jesteś w stanie stwierdzić czy to w ogóle którykolwiek router szwankuje.

Skorzystaj z tego programu, który zasugerowałem.
google.com czy ich DNSy nie są idealnym celem, ale sprawdzając trasę do nich zobaczysz pewnie jakieś adresy w infrastrukturze swojego operatora (przy okazji zobaczysz też odpowiedzi swojego routera)

1 polubienie

OK bo widzę, że nic nie zrozumiałeś, musi być bardziej łopatologicznie więc.
Jeśli router nie jest w stanie przeroutować 100% łącza to znaczy, że tam procesor dostaje ostro po dupie w skrajnych przypadkach. Tak więc zakładając, że masz łącze 500mbps a router jest w stanie obsłużyć połowę tego, to tam procesor kręci 100% możliwości przy 250mbps do czego nie został stworzony i może go przytykać przez to - może np. gubić pakiety itp bo nie jest w stanie pchnąć wszystkiego przez tablicę routingu. Jak by sytuacja była odwrotna - czyli masz łącze 200mbit a router jest w stanie obsłużyć 500mbit to procesor czysto teoretycznie chodził by obciążony w jakiś tam 50% i nic się nie dzieje.
Problem w 90% przypadków to sprzęt i w ch*** walący producenci. Wejdę do jakiegoś pierwszego z brzegu mediamarkt czy innego experta i będę miał na półce 50 routerów opisanych jako 1gbps - niestety 1gbps się tam zaczyna i kończy na negocjacji łącza bo to co później są te routery w stanie wyciągnąć z łącza to inna para kaloszy.

A co do twojego problemu o ile odczuwasz jakiś spadek wydajności, to weź pod uwagę cały zestaw dodatkowych możliwości, jak na przykład:

  1. jakieś urządzenie w sieci albo windows w tle się aktualizuje
  2. w tle chodzi jeszcze wifi, które w takich routerach jest oparte często na tym samym SOC - nie bezpośrednio, ale pośrednio moduł wifi chodzi na SOC płyty głównej routera - dopiąłeś do sieci dodatkowych 5 urządzeń albo odpaliłeś Guest Wifi (które pewnie wymusza RX + TX na routerze bo jest na tym samym module) i masz kolejne źródło problemu - dodatkowe obciążenie obcina jeszcze bardziej tablicę routingu
  3. Dopisałeś kolejne przekierowanie portów czy jakiś host w DMZ - to nie jest tak, że to nie obciąża procesora. Jak kupujesz router nie SOHO i sobie zerkniesz w statystyki testowe takich routerów to masz pięknie wypisane coś w stylu: routing dla pakietów o rozmiarze X wynosi 1600mb przy 25 filtrach w firewall i włączonym fasttracku, 1200mb przy 40 filtrach i włączonym fasttracku, 400mb bez fasttracka itp. itd. Oczywiście ty tu nie jesteś w stanie tego określić co się dzieje bo nie widzisz tego co router zrobił jak dopisałeś jeden otwarty port czy coś do DMZ. Niestety pewnie nawet tego nie wyłapiesz w logach jak byś chciał i się uparł.

Możesz sobie kolejnych 10 scenariuszy dopisać. Pomijając już, że takich rzeczy nie mierzy się pingiem.
DO BRZEGU Jak chcesz to sprawdzić to proponuję iperf i jakieś publiczne serwery, np. iPerf - Public iPerf3 servers
Podłącz sobie pierw bez tego asusa do LAN przez DHCP i sprawdź, później podłącz przez asusa i sprawdź.

Tak już kompletnie poza tematem to stawiam dolary przeciw orzechom, że wszystko jest “OK” z obydwoma routerami a problemem w tym wszystkim jest metodyka pomiaru i ewentualnie wydajność sprzętu samego w sobie.

Tak jak pisałem powyżej - ten router mam od dłuższego czasu, nie było z nim żadnych problemów do około miesiąca temu kiedy dostęp do sieci zaczał znikać w losowych momentach. Sieć także ze swoją ilością urządzeń nie zmieniła się od dłuższego czasu, konfiguracja asusa także taka sama od bardzo dawna.

Ogólnie to nic nie wnosi - Mierzenie uptime sieci przy pomocy pinga do serwerów google to ogólnie zły pomysł. A jak zdiagnozowałeś “znikanie” sieci bo już ustaliliśmy, ze nie powinieneś ufać pomiarom z pinga. Masz jakieś logi sensowne z czegokolwiek co zgłasza zanik sieci? Nie wiem, alarm/kamery/cokolwiek zgłosiło Ci, że nie masz neta czy chcesz przeprowadzać diagnozę na podstawie wyników z pingu i wskaźnika w HA?
Twój operator też mierzy SLA i jak by coś się sypało z routerem to by sam interweniował (w każdym razie powinien).

PS. Jaki router masz od swojego ISP?

PS2. Weź zainstaluj to:

sudo apt install iperf3

i odpal

iperf3 -c ping.online.net -p 5205 -u -b 1000M

i zobaczysz co się stanie - jestem pewien, że zaliczysz “przerwę” o którą pytasz.

Aż sobie sam z ciekawości puściłem:

root@DietPi:~# iperf3 -c ping.online.net -p 5205 -u -b 1000M
Connecting to host ping.online.net, port 5205
[  5] local 192.168.100.4 port 48989 connected to 62.210.18.40 port 5205
[ ID] Interval           Transfer     Bitrate         Total Datagrams
[  5]   0.00-1.00   sec   103 MBytes   867 Mbits/sec  75261
[  5]   1.00-2.00   sec  98.0 MBytes   822 Mbits/sec  71369
[  5]   2.00-3.00   sec  98.4 MBytes   825 Mbits/sec  71619
[  5]   3.00-4.00   sec  98.2 MBytes   824 Mbits/sec  71504
[  5]   4.00-5.00   sec  98.0 MBytes   822 Mbits/sec  71371
[  5]   5.00-6.00   sec  98.3 MBytes   825 Mbits/sec  71616
[  5]   6.00-7.00   sec  98.1 MBytes   823 Mbits/sec  71438
[  5]   7.00-8.00   sec  98.2 MBytes   824 Mbits/sec  71507
[  5]   8.00-9.00   sec  98.0 MBytes   822 Mbits/sec  71374
[  5]   9.00-10.00  sec  98.2 MBytes   824 Mbits/sec  71529
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
[  5]   0.00-10.00  sec   987 MBytes   828 Mbits/sec  0.000 ms  0/718588 (0%)  sender
[  5]   0.00-10.00  sec  60.3 MBytes  50.6 Mbits/sec  0.358 ms  671340/715238 (94%)  receiver

Urządzeń w mojej sieci na czas testu :
image

I jak wygląda obciążenie CPU mojego routera tj Mikrotik hAP ac3 na czas wykonania tego polecenia :

Ja dodam swoje 3 grosze:
Możesz puścić na kilka godzin 2 procesy pingowania (urządzenie musi być podpięte kablem): jeden pingujący adres IP modemu od ISP, drugi pingujący adres IP routera Asus.

Jeżeli:

  • packet loss występuje na trasie Host → Asus → Modem - problemem może być Asus lub modem (niewiele się z tego dowiesz)
  • packet loss występuje TYLKO na trasie Host → Asus - wiesz, że Asus jest problemem
  • packet loss nie występuje w ogóle w sieci LAN - wiesz, że problem występuje pomiędzy połączeniem światłowodowym, a modemem

Dodatkowo możesz dołożyć pingowanie jakiegoś serwera typu 1.1.1.1 albo googla, jednak wiedz, że po kilkunastu minutach mogą się trochę na Ciebie zezłościć i odciąć Cię na firewallu :stuck_out_tongue:

P.S. Inną opcją jest pingowanie innego komputera (też podpiętego kablem) w sieci LAN. Wtedy pakiet przechodzi w ten sposób: Host 1 → Kabel → Router Asus → Kabel → Host 2 i możesz potwiedzić, że Asus routuje pakiety w prawidłowy sposób.

Edit: dodatkowo modemy (szczególnie te światłowodowe) powinny mieć jakiś panel, w którym jesteś w stanie przeglądać logi. Zerknij tam, czy przypadkowo w logach nie ma czegoś o niestabilnym połączeniu. Kiedy u mnie światłowód zrywało to w logach sypało errorami o niestabilnym połączeniu. Jeżeli to jest problem na trasie ISP <-> Modem to będziesz miał to w logach.

!!! Edit 2: teraz zastanawiam się, czy przypadkowo serwery Googla nie dropują pakietów. Może być tak, że łącze działa stabilnie, serwery Googla po tysiącach pingów błagają o litość odrzucając pakiety, a Ty obierasz to jako brak połączenia. Zweryfikuj to.

Edit 3: według mnie, aby tak porządnie sprawdzić, czy masz stabilne łącze do internetu potrzebowałbyś wynająć w sieci publicznej jakiś serwer (najlepiej z SLA 99.99%) i musiałbyś się do niego połączyć, zostawić połączenie na kilka godzin, żeby zobaczyć, czy zostanie zerwane.
Przychodzi mi na myśl serwer SSH z pakietami keep-alive wysyłanymi co 10 sekund. Jeżeli klient nie odpowie – łącze zostanie zerwane. Wtedy możesz faktycznie mówić o problemach z łączem/routerem/modmem. Inną opcją zwyczajny netcat z wysyłaniem timestampów co sekundę na porcie TCP.

Niestety @rm-rf ma rację, lepsze routery potrafią się zapchać i wszystkie usługi na nich zostają shutdown
Sprawdź jeszcze czy masz najnowsze firmware, te routery miały sporo dziur.
Trzeba też mieć na uwadze że może dołączyłeś do jakiejś większej sieci botnet jeżeli router posiadał luki. Logi włącz na asusie najlepiej jeszcze na zewnętrzny Syslog Server jeżeli jest taka opcja.

Znikanie sieci ustaliłem organoleptycznie - brak dostępu do internetu na komputerach i telefonach w losowych (tych samych dla wszystkich urządzeń) przedziałach czasowych.
Router ma najnowszy soft i z reguły był aktualizowany dosyć szybko po pojawieniu się łatek i nowych wersji softu.

Posiada jakieś kontrolki więc można wykluczyć ze to jego wina że brak jest Internetu.
Sprawdził bym jeszcze kabel LAN, Oryginalny ?.

No właśnie kontrolki nie wyłapują tych braków dostępu…(ani na GPONie ani na Asusie).
Kable sieciowe sam robię, są dobrze zarobione, sprawdzone i przetestowane.

Ten router posiada jakieś IP?

Jakieś IP musi posiadać (choć działa jako bridge i przepuszcza cały ruch ze światełka do mojego asusa)