Ha egy weboldal vagy szerver nem érhető el, lassú, vagy csak egyes helyekről nem működik, néhány parancs segítségével gyorsan kideríthető, hol a hiba: a névfeloldásban (DNS), útközben a hálózatban, vagy magán a szerveren. A parancsok Linuxon és macOS-en a terminálban futnak; a Windows megfelelőket külön jelöljük.
ping: elérhető-e a gép?
ping -c 10 example.hu
A -c 10 tíz csomag után leállítja a mérést (Windows alatt a ping alapból négyet küld). Az összesítő sorból kiolvasható a csomagvesztés (packet loss) és a válaszidő.
- Ha a ping válaszol, a gép elérhető a hálózaton.
- Ha nem válaszol, az még nem jelenti, hogy a szerver nem működik: sok szerver tűzfala tiltja a ping (ICMP) csomagokat. Ilyenkor a lenti
curlvagyncparanccsal ellenőrizze a szolgáltatást.
dig: jó IP-címre mutat-e a domain?
Domain átköltöztetése vagy névszerver-váltás után a leggyakoribb hiba, hogy a domain még a régi IP-címre mutat.
dig +short example.hu A
dig +short www.example.hu A
dig +short example.hu MX
dig +short example.hu NS
Egy adott DNS szervertől is lekérdezheti a választ, így kiderül, hogy a változás mindenhol látszik-e már:
dig +short example.hu A @1.1.1.1
dig +short example.hu A @8.8.8.8
A dig csomagja AlmaLinuxon bind-utils, Ubuntun és Debianon dnsutils. Windows alatt az nslookup example.hu paranccsal kérdezhet le hasonlót. A DNS változások terjedéséről a Mi az a DNS propagáció? cikkben olvashat.
traceroute és mtr: hol akad el útközben?
A traceroute (Windows alatt tracert) kilistázza a csomagok útvonalát a szerverig, állomásonként (hop).
traceroute example.hu
Az mtr a ping és a traceroute ötvözete: minden állomásra sok csomagot küld, így az ideiglenes csomagvesztés is látszik. Hibabejelentéshez ezt javasoljuk.
mtr -rwc 100 example.hu
-r: jelentés (report) módban fut, és a végén kiírja az eredményt,-w: nem rövidíti le a gépneveket,-c 100: állomásonként 100 csomagot küld (kb. másfél perc).
Telepítése: sudo dnf install mtr vagy sudo apt install mtr-tiny. Windows alatt a pathping example.hu parancs vagy a WinMTR program ad hasonló eredményt.
Az eredmény értelmezése: ha egy köztes állomásnál csomagvesztés látszik, de az utána következő állomásoknál már nem, az nem hiba: sok router csak alacsony prioritással válaszol a mérőcsomagokra. Valódi problémára az utal, ha a csomagvesztés egy ponttól kezdve minden további állomáson, a célállomáson is megjelenik.
ss: figyel-e a szolgáltatás a szerveren?
Ha be tud lépni a szerverre, nézze meg, mely portokon fogad kapcsolatot:
sudo ss -tlnp
A kimenetben keresse a szolgáltatás portját (pl. :80, :443, :22, :3306). Ha a port nem szerepel a listában, a szolgáltatás nem fut; ellenőrizze a systemctl status paranccsal (lásd: Szolgáltatások kezelése systemctl paranccsal). Ha a port csak 127.0.0.1 címen figyel, kívülről nem érhető el.
nc és curl: elérhető-e a port kívülről?
Egy tetszőleges TCP port elérhetősége az nc paranccsal ellenőrizhető:
nc -zv example.hu 443
nc -zv mail.example.hu 587
Az nc csomagja AlmaLinuxon nmap-ncat, Ubuntun és Debianon netcat-openbsd. Ha a szerveren a szolgáltatás figyel, kívülről mégsem érhető el, valószínűleg a tűzfal zárja a portot (lásd: Hogyan állítsak be tűzfalat a VPS-emen?).
Webszerver esetén a curl a HTTP választ is megmutatja:
curl -I https://example.hu
A -I csak a fejléceket kéri le; az első sor a HTTP állapotkód (pl. HTTP/2 200 vagy HTTP/1.1 500). A kódok jelentéséről a HTTP hiba és állapotkódok cikkben olvashat. A -v kapcsolóval a kapcsolódás és az SSL egyeztetés részletei is látszanak.
Weboldal tesztelése DNS-váltás előtt
Költöztetéskor hasznos, ha az új szerveren lévő oldalt még a DNS átállítása előtt ki tudja próbálni. A --resolve kapcsolóval megadhatja, melyik IP-címre csatlakozzon a curl, a domain nevét pedig változatlanul küldi:
curl -I --resolve example.hu:443:203.0.113.10 https://example.hu
Mit küldjön el az ügyfélszolgálatnak?
Ha hálózati hibát jelent be, a gyors kivizsgáláshoz kérjük, küldje el:
- a saját nyilvános IP-címét (amelyről a hiba jelentkezik),
- a hiba pontos idejét, és hogy folyamatos vagy időszakos-e,
- az
mtr -rwc 100 <szerver>kimenetét a saját gépéről (Windows alatt apathpingvagy WinMTR eredményét), - ha be tud lépni a szerverre, az
mtr -rwc 100 <az Ön IP-címe>kimenetét a szerverről is, mert a visszafelé vezető útvonal eltérhet.