- „Ping“ tikrina ryšį, delsą ir paketų praradimą naudodamas ICMP
- Pagrindinės parinktys: -c, -i, -s, -4/-6, -D, -W/-w tiksliam testavimui
- „Traceroute“ / „tracert“ rodo maršrutą ir nustato probleminį šuolį
- Dažniausių klaidų diagnostika ir užkardų tikrinimas paspartina problemų sprendimą

„Ping“ komandos įvaldymas „Linux“ sistemoje yra vienas iš tų įgūdžių, kurie labai padeda šalinti tinklo problemas. Naudodami „ping“, galite greitai patikrinti ryšį, delsą ir prieinamumą prieš pereidami prie sudėtingesnės diagnostikos.
Be to, papildomos priemonės, tokios kaip „traceroute“ / „tracert“, ir hibridinės priemonės, tokios kaip „WinMTR“, suteikia galimybę stebėti paketų kelią. Išmoksite naudoti „ping“ komandą „Linux“, „Windows“ ir „macOS“ sistemose, interpretuoti išvestį, koreguoti parinktis ir negaišdami laiko pašalinti dažniausiai pasitaikančias klaidas.
Kas yra ping ir kam jis skirtas?
„Ping“ yra diagnostikos programa, kuri siunčia ICMP ECHO_REQUEST paketus į paskirties vietą (IP adresą, pagrindinį kompiuterį arba domeną) ir laukia ECHO_REPLY. Ji naudoja TCP/IP modelį ir jo sluoksnius , kad suprastų, kuriame sluoksnyje veikia ICMP. Jei yra atsakymas, pagrindinis kompiuteris yra pasiekiamas ir matuojamas kelionės pirmyn ir atgal laikas (RTT) . Ji taip pat praneša apie paketo dydį baitais, gyvavimo laiką (TTL) ir paketų praradimą.
Praktiškai ping naudojamas kasdien ryšiui patvirtinti, delsai įvertinti, serverio prieinamumui patvirtinti ir pagrindinėms tinklo problemoms atmesti. Tai pirmas žingsnis aptinkant sutrikimus, perkrovas ar probleminius maršrutus prieš atliekant tolesnę analizę.
Kaip veikia ping ir ką tiksliai jis matuoja
Kai siunčiate ping užklausą į paskirties vietą, įrankis siunčia ICMP paketų seriją ir parodo kiekvieno iš jų atsakymą. Įprasti išvesties laukai apima baitus, atsakantįjį kompiuterį, icmp_seq, TTL ir laiką ms , taip pat galutinį statistikos bloką.
Atsakymo eilutės pavyzdys: 64 baitai iš 185.185.185.185: icmp_seq=1 ttl=64 laikas=0.1 ms . Čia galite matyti naudojamą dydį (56 baitai + 8 baitai ICMP antraštės = 64), sekos numerį, paketo gyvavimo trukmę ir RTT. Galutinė statistikos santrauka: perduotas, gautas, prarastas ir RTT min/avg/max/mdev.
Kada naudoti ping
„Ping“ funkcija naudinga daugelyje kasdienių situacijų. Patikrinkite, ar jūsų svetainė ar internetinė parduotuvė reaguoja, ar veikia VPS, ar įrenginys, prijungtas prie „Wi-Fi“, vis dar prijungtas . Ji taip pat padeda nustatyti lėtumą: didelė delsa arba paketų praradimas rodo tinklo perkrovą arba maršruto parinkimo problemas.
Net jei viskas atrodo gerai, kartais atliekant ping patikrinimus galima aptikti pagrindines problemas. Nustačius delsos bazinę ribą, galima nustatyti nukrypimus po tinklo pakeitimų ar srauto padidėjimo.
Skirtumas tarp ping ir traceroute/tracert
Nors „ping“ atsako į klasikinį klausimą „Ar siuntimas atvyksta ir kiek laiko tai užtrunka?“, „tracerute“ („tracert“ sistemoje „Windows“) atsako į „Kur jis keliauja?“. „Traceroute“ atskleidžia kiekvieną tarpinį šuolį ir jo kelionės į paskirties vietą laiką , o tai yra labai svarbu norint nustatyti, kur atsiranda duomenų praradimas ar kliūtis.
Idealus variantas yra juos sujungti: jei „ping“ rodo signalo praradimą, „traceroute“ nurodo tikslų šuolį, kur prasideda problema. Jei norite sujungti abu požiūrius į vieną įrankį sistemoje „Windows“, „WinMTR“ yra puikus pasirinkimas.
Kaip patikrinti „ping“ sistemoje „Windows“
„Windows“ sistemoje atidarykite komandų eilutę (ieškokite „cmd“) ir paleiskite komandą. Pagrindinė forma yra: ping paskirties vieta (IP, pagrindinis kompiuteris arba domenas). Pagal numatytuosius nustatymus ji siunčia 4 paketus ir rodo statistiką.
ping 8.8.8.8
ping google.com
Įprastoms „Windows“ parinktims: -n nurodo aidėjimo numerį, -l – paketo dydį, -w – skirtąjį laiką ms ir -i – TTL . Pavyzdys, kai naudojama 10 paketų po 1400 baitų:
ping -n 10 -l 1400 google.com
Kaip patikrinti „ping“ sistemoje „macOS“
„macOS“ sistemoje atidarykite terminalą („Programos“ > „Utilities“ > „Terminalas“) arba naudokite „Spotlight“. Įveskite: „ping target“ ir užbaikite paspausdami CTRL + C, kad pamatytumėte santrauką.
ping 8.8.4.4
ping google.com
Taip pat galite naudoti senesnę tinklo programą tose versijose, kuriose ji yra. Atminkite, kad „macOS“ turi didelę dalį savo sintaksės su „Linux“ , ir daugelis parinkčių yra tokios pačios.
Kaip pinginti Linux sistemoje
„Linux“ sistemoje atidarykite terminalą (pavyzdžiui, naudodami CTRL + ALT + T) ir paleiskite komandą. „Ping“ bus vykdomas nuolat, kol paspausite CTRL + C , po to pamatysite statistikos bloką.
ping 1.1.1.1
ping localhost
Jei reikia patikrinti, ar įdiegtas „ping“ paketas ir kokia jo versija, galite tai padaryti tiesiogiai. „Ubuntu“ / „Debian“ sistemose įprastas paketas yra „iputils-ping“.
ping -V
sudo apt-get update && sudo apt-get install -y iputils-ping
Bendroji sintaksė ir svarbiausios parinktys
Bendroji forma yra: ping destination . Paskirties vieta gali būti IP adresas, pagrindinio kompiuterio pavadinimas arba domenas; jei naudojate domeną, jis bus identifikuojamas per DNS.
- -c N (Linux/macOS): Apriboja paketų skaičių. Naudinga norint užkirsti kelią testo vykdymui.
- -a („Linux“ / „macOS“ / „Windows“): garsinis signalas; po kiekvieno atsakymo pasigirsta vienas pyptelėjimas, labai naudinga atliekant foninę diagnostiką.
- -i SEG (Linux/macOS): Intervalas tarp paketų sekundėmis; palaikomi dešimtainiai skaičiai. Reikalingos privilegijos trumpesnei nei 0.2 s trukmei.
- -q (Linux/macOS): Tyli išvestis; rodoma tik statistinė santrauka.
- -4 / -6 (Linux/macOS): Priverstinai naudoti atitinkamai IPv4 arba IPv6. Sistemose, kurios skaido dvejetainius failus, „ping6“ yra IPv6 variantas..
- -s BAITAI (Linux/macOS): ICMP naudingosios apkrovos dydis. Numatytasis: 56 baitai (84 baitai, įskaitant IP+ICMP antraštes, 28 baitai pridėtinės vertės).
- -D (Linux/macOS): Kiekvienos eilutės pradžioje pridėkite UNIX tipo laiko žymą.
- -W SEG (Linux/macOS): Maksimalus laukimo laikas vienam aidėjimo atsakui; jei jis viršijamas, laikoma, kad laikas baigėsi.
- -w SEG (Linux/macOS): Bendras bandymo laikas prieš automatinį užbaigimą.
Mažiau žinomos išplėstinės parinktys
Tiksliai diagnostikai „ping“ komanda siūlo platų funkcijų pasirinkimą. Šios parinktys padeda koreguoti maršrutizavimą, buferius, MTU, žymėjimą ir informacijos matomumą:
- -AAdaptyvus signalo signalas (reguliuoja dažnį pagal atsakymus).
- -b: leidžia pinguoti transliavimo adresus.
- -BNekeiskite zondų šaltinio adreso.
- -d: Įjungti SO_DEBUG lizde.
- -F Srauto žymė (IPv6): Priskiria 20 bitų šešioliktainę srauto žymę aidėjimo užklausoms.
- -h: rodoma greita pagalba.
- -I sąsaja: nustato išvesties sąsają. Labai naudinga kompiuteriuose su keliomis tinklo plokštėmis.
- -l išankstinis įkėlimas: Siunčia kelis pradinius paketus nelaukdamas atsakymo (didelėms reikšmėms reikalingos privilegijos).
- -L: Blokuoja daugiaadresį kilpinį ryšį.
- -m ženklas: Pažymėkite siunčiamus paketus (naudinga maršruto parinkimo politikoms).
- -M pmtudisc_opt: Valdo kelio MTU aptikimo strategiją. Tinkamai naudojant -M ir -s, aptinkamas efektyvus MTU.
- -N mazgo informacija (IPv6): Mazgo informacijos parinktys.
- -n: skaitinė išvestis; vengti vardų sprendimo.
- -O: Pranešimai, į kuriuos reikia atsakyti iki kito pateikimo.
- -p šablonas: Papildo naudingąją apkrovą šablonu (iki 16 baitų), kad aptiktų su duomenimis susijusias problemas.
- -Koks kosulys: apibrėžia TOS/DSCP.
- -r: Nepaiso įprastos maršruto lentelės; tiesiogiai persiunčia gretimą sąsają.
- -R: įrašų maršrutas (ribojamas tarpinės paramos).
- -S sndbuf: lizdo siuntimo buferio dydis.
- -t ttl (Linux): Apibrėžia IP TTL. „Windows“ sistemoje TTL nustatomas su -i.
- -Tspecialios IP laiko žymos parinktys („tsonly“, „tsandaddr“, „tsprespec“).
- -U: rodo bendrą vartotojų tarpusavio ryšio delsą, o ne tik tinklo delsą.
- -v: išsami išvestis; -V rodo versiją.
Praktiniai atvejai: nuo pradedančiojo iki aukštesnio lygio
Pirmas žingsnis yra patikrinti bendrą interneto ryšį ir nustatyti vardus. Galite kaitalioti domenų ir IP adresų pingą, kad išskirtumėte DNS problemas.
ping google.com
ping 8.8.8.8
Vietinio steko patikrinimas taupo jūsų laiką: jei tai nepavyksta, problema yra jūsų kompiuteryje , o ne išoriniame tinkle.
ping localhost
ping 127.0.0.1
ping 0
Konkrečios sąsajos patvirtinimas taip pat įprastas tinkluose su keliais tinklo adapteriais. Priverstinis išeinančios sąsajos naudojimas paaiškina maršrutus ir lenteles.
ping -I enp7s0 1.1.1.1
Paketų skaičiaus ribojimas greitiems testams ar scenarijams yra klasikinis sprendimas. Pasirinkus parametrą „-c“, nustatomas skaičius, o parametras „-q“ sumažina triukšmą, palikdamas aiškią santrauką.
ping -c 5 -q 9.9.9.9
Intervalo reguliavimas leidžia gauti daugiau pavyzdžių per trumpesnį laiką arba sumažina apkrovą. Jei intervalas yra mažesnis nei 0.2 sekundės „Linux“ sistemoje, reikalingos teisės.
ping -i 3 31.13.90.36
sudo ping -i 0.1 31.13.90.36
Testuojant skirtingus paketų dydžius, aptinkamos MTU arba fragmentacijos problemos. Atminkite, kad teorinis maksimalus IP paketo dydis yra 65 535 baitai, įskaitant antraštes.
ping -s 1000 8.8.4.4
ping -M do -s 1472 google.com
Laiko žymos leidžia lengviau susieti pikus su įvykiais. -D prideda UNIX žymą prie kiekvienos atsakymo eilutės.
ping -D cloudflare.com
Interpretuokite rezultatus ir statistiką
Kiekviena atsakymo eilutė atspindi vieną matavimą; paskutinis blokas apibendrina seriją. Norėdami įvertinti stabilumą, atkreipkite ypatingą dėmesį į paketų praradimą, minimalų/vidutinį/maksimalų RTT, vidutinį kūrimo laiką (MDDT) ir laiko nuoseklumą .
--- destino ping statistics ---
X packets transmitted, Y received, Z% packet loss
rtt min/avg/max/mdev = A/B/C/D ms
Nustatykite pradinį lygį: pakartotinai atlikite ping testą įprastomis sąlygomis ir išsaugokite įprastą vidurkį. Jei vidutinė delsa arba mdev vėliau padidėja, jūsų tinkle kažkas pasikeitė (apkrova, maršrutizavimas, prisotinimas arba degradacija).
Dažnos klaidos ir kaip jas diagnozuoti
Jei atsakymo nėra ir skirtasis laikas nepasibaigia, pagrindinis kompiuteris gali atmesti ICMP. Kai kurie serveriai ir CDN blokuoja aidus pagal politiką , o tai nebūtinai reiškia, kad paslauga nustos veikti.
Pranešimas „paskirties mazgas nepasiekiamas“ gali būti gautas iš jūsų kompiuterio arba tarpinio maršrutizatoriaus. Jei jį siunčia jūsų mazgas, maršruto nėra; jei jis siunčiamas iš nuotolinio ryšio šaltinio, išorinis tinklas neturi kelio į paskirties vietą.
„Užklausos skirtasis laikas baigėsi“ reiškia, kad užklausa buvo išsiųsta, bet atsakymas negautas. Taip gali būti dėl tarpinių nuostolių, filtravimo arba maršruto asimetrijos . Tokiais atvejais naudokite „traceroute“, kad surastumėte probleminį šuolį.
Jei naudojate užkardą, patikrinkite taisykles. „Linux“ sistemoje DROP/REJECT taisyklės per ICMP neleis siųsti arba gauti aidų , todėl atrodys, kad viskas neveikia.
sudo iptables -L
# Localiza reglas sobre ICMP con DROP/REJECT
# Ajusta o elimina si procede (ejemplo genérico):
sudo iptables -D RULE_SPECIFICA
Ping mobiliuosiuose įrenginiuose
„Android“ ir „iOS“ sistemose nėra integruotos „ping“ funkcijos, pasiekiamos iš standartinės sąsajos. Paprasčiausias būdas – naudoti specialias programas greitam testavimui kelyje.
„Android“ sistemoje gerai veikia tokios parinktys kaip „Ping & Net“; „iOS“ sistemoje patikimas pasirinkimas yra „Network Ping Lite“. Venkite root teisių suteikimo ar jailbreak'inimo vien dėl ping; pakanka patikimos programėlės . Prieš diegdami patikrinkite įvertinimus ir leidimus.
„Traceroute“ ir „tracert“: peržiūrėkite paketų kelią
„Traceroute“ „Linux“ ir „macOS“ sistemose bei „tracert“ „Windows“ sistemoje rodo kiekvieną šuolį iš jūsų kompiuterio į paskirties vietą. Kiekvienoje eilutėje nurodomas tarpinis maršrutizatorius ir kiekvieno bandymo laikas . Jei po tam tikro taško matote žvaigždutes, maršrutas yra sutrumpintas arba filtruotas.
# Windows
tracert ejemplo.com
# macOS/Linux
traceroute ejemplo.com
Klasikinėje „macOS“ versijoje galite naudoti tinklo įrankį (jei yra) su specialiu „traceroute“ skirtuku. Serverių aplinkoje pagrindinė priemonė bus terminalas.
Nuolatinis stebėjimas naudojant „WinMTR“
„WinMTR“ sistemoje „Windows“ sujungia „ping“ ir „traceroute“, kad laikui bėgant parodytų maršruto stabilumą. Įveskite pagrindinio kompiuterio arba IP adresą, paleiskite testą apie 10–15 minučių ir nukopijuokite ataskaitą analizei arba techninei pagalbai.
1) Descarga WinMTR (proyecto en SourceForge)
2) Field 'Host': escribe dominio o IP
3) Start y deja correr ~15 minutos
4) Usa 'Copy Text to clipboard' para compartir el resultado
Gera praktika ir naudojimo patarimai
Norėdami izoliuoti problemą, nurodykite kelias paskirties vietas: savo šliuzą, gerai žinomą DNS serverį ir galutinį pagrindinį kompiuterį. Palyginus rezultatus, paaiškės, ar gedimas yra vidinis, susijęs su operatoriumi, ar paskirties vietoje.
Venkite per daug naudoti perpildymo režimą, išskyrus kontroliuojamus testus. -f siunčia paketus maksimaliu greičiu ir gali imituoti srauto šuolius ; naudokite jį gavę leidimą ir pagal aiškius kriterijus.
sudo ping -f destino
Jis apjungia įrankius, kad būtų galima peržiūrėti visą vaizdą. „Traceroute“ nustato probleminį šuolį; „iperf“ matuoja pralaidumą; „Wireshark“ leidžia atlikti išsamią paketų patikrą, kai reikia įsigilinti į detales.
IPv6 palaikančiose aplinkose patikrinkite abu protokolus. Priverstinai nustatykite -4 arba -6, kad būtų išvengta pirmenybės ar dviejų protokolų skyros problemų.
„Windows“, „macOS“ ir „Linux“ parinktys ir ypatumai
Šios vėliavėlės skirtingose sistemose skiriasi. „Linux“ / „macOS“ sistemose „-c“ riboja paketus, „-i“ – diapazoną, „-s“ – dydį ir „-t TTL“ . „Windows“ sistemoje „-n“, „-l“, „-wy“ ir „-i“ atlieka panašius vaidmenis (skirtingus vienetus ir taikymo sritį).
Naudingi kiekvienos sistemos pavyzdžiai: „Windows“: ping -n 4 -l 1200 domenas; „Linux“ / „macOS“: ping -c 4 -s 1200 domenas . Jei nesate tikri dėl tikslios sintaksės, kreipkitės į vietinę pagalbos tarnybą.
# Linux/macOS
ping -c 4 -s 1200 google.com
ping -4 google.com
ping -6 google.com
# Windows
ping -n 4 -l 1200 google.com
DNS patikros ir vardų atpažinimas
Domeno ping užklausa patikrina, ar DNS teisingai nustato adresą. Kai domenas nustatomas, išvesties antraštėje matysite paskirties IP adresą ; jei nustatymas nepavyksta, patikrinkite DNS nustatymus arba failą „hosts“.
Žurnalams patikrinti naudokite papildomas priemones, tokias kaip „nslookup“. „Ping“ tikrina pasiekiamumą; „nslookup“ pateikia DNS duomenis , kurie paaiškina netikėtą sprendimą.
nslookup ejemplo.com
Saugumas, protokolo apribojimai ir MTU
Kai kurie įrenginiai blokuoja ICMP dėl politikos arba siekdami užkirsti kelią piktnaudžiavimui. Nemanykite, kad paslauga sutriko vien dėl to, kad nėra atsakymų į ping užklausas ; patikrinkite per TCP/HTTP arba naudodami pačios paslaugos įrankius.
Atminkite, kad numatytoji „Linux“ apkrova yra 56 baitai; su antraštėmis bendras dydis padidėja iki 84. IP paketų riba yra 65 535 baitai, įskaitant antraštes , todėl nustatant naudojamą „-s“ dydį reikia atsižvelgti į pridėtines apkrovas.
Norėdami išmatuoti kelio MTU be fragmentacijos, sujunkite DF/PMTUD su didėjančiu dydžiu. Sureguliavus -M ir -s, pamatysite, kur pradeda gesti dėl nepakankamo MTU.
ping -M do -s 1472 ejemplo.com
Greiti DUK
Ką tiksliai tikrina ping? IP ryšį ir perdavimo laiką per ICMP, praneša apie praradimus ir delsą.
Kodėl domenas kartais neatsako į ping? Nes daugelis serverių filtruoja ICMP. Žiniatinklio paslauga vis tiek gali veikti.
Kaip sutrumpinti pingą „Linux“ ir „macOS“ sistemose? Paspaudus CTRL + C, tuo metu atspausdinama suvestinė statistika.
Ar galima naudoti „ping“ su IPv6? Taip, su -6 arba su „ping6“ sistemose, kurios jį atskiria. Matysite IPv6 adresus ir maršrutus.
Ar „ping“ veikia mobiliuosiuose įrenginiuose? Taip, naudojant specialias programas. Venkite nereikalingo root/jailbreak ir naudokite patikimas parinktis.
Turite patikimą vadovą, kaip pereiti nuo pagrindinio iki pažengusio lygio naudojant „ping“: galite patvirtinti vietinį ir nuotolinį ryšį, koreguoti intervalus ir dydžius, diagnozuoti nuostolius, suprasti maršrutus naudodami „traceroute“ ir dokumentuoti išvadas naudodami „WinMTR“ . Metodiškas šių įrankių naudojimas sutaupo valandas aklųjų testų ir leidžia tiksliai reaguoti į bet kokią tinklo problemą.