PING(8) iputils PING(8) NUME ping - trimite ICMP ECHO_REQUEST catre gazdele din reea SINOPSIS ping [-aAbBdCDfhHLnOqrRUvV346] [-c numar] [-e identificator] [-F eticheta-flux] [-i interval] [-I interfaa] [-l pre-incarcare] [-m marcaj] [-M opiune-pmtudisc] [-N opiune-nodeinfo] [-w timp-limita] [-W timp-ateptare] [-p model] [-Q tos] [-s dimensiune-pachet] [-S sndbuf] [-t ttl] [-T marca-temporala opiune] [salt...] {destinaie} DESCRIERE ping utilizeaza datagrama obligatorie ECHO_REQUEST a protocolului ICMP pentru a obine un ICMP ECHO_RESPONSE de la o gazda sau de la o poarta de acces. Datagramele ECHO_REQUEST (,,pings") au un antet IP i ICMP, urmat de o structura <> i apoi de un numar arbitrar de octei de ,,umplere" utilizai pentru a completa pachetul. ping funcioneaza atat cu protocolul IPv4, cat i cu protocolul IPv6. Utilizarea explicita a unuia dintre acestea poate fi impusa prin specificarea -4 sau -6. ping poate trimite, de asemenea, interogari de informaii despre noduri IPv6 (RFC4620). Este posibil ca salturile intermediare sa nu fie permise, deoarece direcionarea sursei IPv6 a fost eliminata (RFC5095). OPIUNI -3 Precizie RTT (nu se rotunjete timpul rezultat). -4 Utilizeaza numai IPv4. -6 Utilizeaza numai IPv6. -a Ping audibil. -A Ping adaptiv. Intervalul dintre pachete se adapteaza la timpul de parcurgere a drumului dus-intors (,,round-trip time": RRT), astfel incat in reea sa nu fie prezenta efectiv mai mult de o sonda fara raspuns (sau mai multe, daca este definita preincarcarea). Intervalul implicit este de 2 ms, pentru mai multe informaii consultai opiunea -i. In reelele cu RTT redus, acest mod este in esena echivalent cu modul inundare. -b Permite trimiterea unui ping la o adresa de difuzare. -B Nu-i permite lui ping sa schimbe adresa sursa a probelor. Adresa este asociata cu cea selectata atunci cand ping pornete. -c numar Se oprete dupa trimiterea a numar pachete ECHO_REQUEST. Cu opiunea timp-limita, ping ateapta numar pachete ECHO_REPLY, pana cand expira timpul de ateptare. -C Apeleaza apelul de sistem connect() la crearea unui soclu. -d Activeaza opiunea SO_DEBUG pe soclul care este utilizat. In esena, aceasta opiune de soclu nu este utilizata de nucleul Linux. -D Imprima marcajul de timp (ora unix + microsecunde ca in gettimeofday()) inainte de fiecare linie. -e identificator Definete campul de identificare al ECHO_REQUEST. Valoarea 0 implica utilizarea soclu brut (nu este acceptata pe soclu de datagrama ICMP). Valoarea campului poate fi afiata cu opiunea -v. -f Ping de inundare. Pentru fiecare ECHO_REQUEST trimis se imprima un punct ,,.", in timp ce pentru fiecare ECHO_REPLY primit se imprima un ,,backspace" (se terge un punct). Acest lucru ofera o afiare rapida a numarului de pachete care sunt respinse. Daca intervalul nu este dat, stabilete intervalul la zero i emite pachetele la fel de repede cum vin inapoi sau de o suta de ori pe secunda, oricare dintre acestea este mai mare. Numai super-utilizatorul poate utiliza aceasta opiune cu interval zero. -F eticheta-flux Numai pentru IPv6. Aloca i definete o eticheta de flux de 20 de bii (in hexazecimal) pe pachetele de cerere de ecou. Daca valoarea este zero, nucleul aloca o eticheta de flux aleatorie. -h Afieaza ajutorul. -H Foreaza rezoluia DNS a numelui pentru ieire. Util pentru destinaii numerice sau opiunea -f, care in mod implicit nu o efectueaza. De asemenea, poate ajuta la rezolvarea problemelor legate de rezoluia DNS. Suprascrie opiunea -n definita anterior. Consultai i variabila de mediu IPUTILS_PING_PTR_LOOKUP. -i interval Ateapta intervalul secunde intre trimiterea fiecarui pachet. Numar real admis cu punct ca separator zecimal (indiferent de configuraia regionala). Valoarea implicita este de a atepta o secunda intre fiecare pachet in mod normal, sau de a nu atepta in modul de inundare. Numai super-utilizatorul poate stabili intervalul la valori mai mici de 2 ms. Ping-ul de difuzare i multicast are o limitare i mai mare pentru utilizatorul obinuit: minimul este de 1 sec. -I interfaa interfaa este fie o adresa, fie un nume de interfaa sau un nume VRF. Daca interfaa este o adresa, stabilete adresa sursa la adresa de interfaa specificata. Daca interfaa este un nume de interfaa, stabilete interfaa sursa la interfaa specificata. Daca interfaa este un nume VRF, fiecare pachet este direcionat utilizand tabelul de direcionare corespunzator; in acest caz, opiunea -I poate fi repetata pentru a specifica o adresa sursa. NOTA: Pentru IPv6, atunci cand se efectueaza ping catre o adresa de sfera de aplicare legatura locala, se poate utiliza specificarea legaturii (prin notaia ,,%" in destinaie sau prin aceasta opiune), dar nu mai este necesara. -l preincarcare Daca este specificata preincarcarea, ping trimite atatea pachete care nu ateapta raspunsul. Numai super-utilizatorul poate selecta preincarcarea la mai mult de 3. -L Suprima bucla de intoarcere a pachetelor multicast. Aceasta opiune se aplica numai daca destinaia ping este o adresa multicast. -m marcaj Utilizeaza marcajul pentru a marca pachetele care ies in afara. Acest lucru este util pentru o varietate de lucruri in cadrul nucleului, cum ar fi utilizarea politicii de direcionare pentru a selecta o anumita procesare de ieire. Este necesara capacitatea CAP_NET_ADMIN sau CAP_NET_RAW (de la Linux 5.17), consultai socket(7). -M opiune-pmtudisc Selecteaza strategia Path MTU Discovery (descoperirea rutei MTU). opiunea-pmtudisc poate fi, fie do (activeaza fanionul DF, dar este supus verificarilor PMTU de catre nucleu, pachetele prea mari vor fi respinse), want (face descoperire PMTU, fragmenteaza local atunci cand dimensiunea pachetului este mare), probe (activeaza fanionul DF i ocolete verificarile PMTU, util pentru sondare) sau dont (nu activeaza fanionul DF). -N opiune-nodeinfo Numai pentru IPv6. Trimite IPv6 Node Information Queries (RFC4620), in loc de Echo Request. Este necesara capacitatea CAP_NET_RAW. help Afieaza ajutorul pentru suportul NI. name Interogari pentru nume de noduri. ipv6 Interogari pentru adrese IPv6. Exista mai multe opiuni specifice IPv6. ipv6-global Solicita adrese IPv6 din sfera de acoperire globala. ipv6-sitelocal Solicita adresele locale ale sitului IPv6. ipv6-linklocal Solicita adrese locale de legatura IPv6. ipv6-all Solicita adrese IPv6 pe alte interfee. ipv4 Interogari pentru adrese IPv4. Exista o singura opiune specifica pentru IPv4. ipv4-all Solicita adrese IPv4 pe alte interfee&. subject-ipv6=adresa-ipv6 Adresa subiectului IPv6. subject-ipv4=adresa-ipv4 Adresa subiectului IPv4. subject-name=nume-nod Numele subiectului. In cazul in care conine mai mult de un punct,se presupune ca este vorba de un nume de domeniu complet calificat. subject-fqdn=nume-nod Numele subiectului. Se presupune intotdeauna ca este vorba de un nume de domeniu complet calificat. -n Ieire numerica doar. Nu se va incerca sa se caute nume simbolice pentru adresele de gazda (nu se va face o rezoluie DNS inversa). Aceasta este valoarea implicita pentru destinaia numerica sau opiunea -f. Suprascrie opiunea -H definita anterior. A se vedea i variabila de mediu IPUTILS_PING_PTR_LOOKUP. -O Raporteaza raspunsul ICMP ECHO in ateptare inainte de a trimite urmatorul pachet. Acest lucru este util impreuna cu marcajul de timp -D pentru a inregistra ieirea intr-un fiier de diagnosticare i pentru a cauta raspunsurile lipsa. -p model Putei specifica pana la 16 octei ,,de umplutura" pentru a completa pachetul pe care il trimitei. Acest lucru este util pentru diagnosticarea problemelor dependente de date intr-o reea. De exemplu, -p ff va face ca pachetul trimis sa fie umplut cu toate acestea. -q Ieire silenioasa. Nu se afieaza nimic in afara de liniile de rezumat la pornire i la terminarea programului. -Q tos Definete biii legai de calitatea serviciului in datagramele ICMP. tos poate fi un numar zecimal (numai pentru ping) sau hexazecimal. In RFC2474, aceste campuri sunt interpretate ca servicii difereniate (DS) pe 8 bii, constand din: biii 0-1 (cei mai mici 2 bii) de date separate i biii 2-7 (cei mai mari 6 bii) de puncte de cod pentru servicii difereniate (DSCP). In RFC2481 i RFC3168, biii 0-1 sunt utilizai pentru ECN. Din punct de vedere istoric (RFC1349, inlocuit de RFC2474), acestea au fost interpretate astfel: bitul 0 (cel mai mic bit) pentru rezervat (in prezent redefinit drept control al congestiei), 1-4 pentru tipul de serviciu i biii 5-7 (cei mai mari bii) pentru precedena. -r Ocolete tabelele de direcionare normale i trimite direct catre o gazda pe o interfaa ataata. Daca gazda nu se afla pe o reea direct ataata, este returnata o eroare. Aceasta opiune poate fi utilizata pentru a trimite un ping unei gazde locale printr-o interfaa care nu are nici o ruta prin ea, cu condiia sa se utilizeze i opiunea -I. -R ping doar. Ruta de inregistrare. Include opiunea RECORD_ROUTE in pachetul ECHO_REQUEST i afieaza memoria tampon a rutei pe pachetele returnate. Reinei ca antetul IP este suficient de mare doar pentru noua astfel de rute. Multe gazde ignora sau resping aceasta opiune. -s dimensiune-pachet Specifica numarul de octei de date care urmeaza sa fie trimii. Valoarea implicita este 56, care se traduce in 64 de octei de date ICMP atunci cand sunt combinai cu cei 8 octei de date de antet ICMP. Valoarea maxima permisa este 65507 pentru IPv4 (65467 atunci cand -R sau -T sau saltul/salturile intermediar(e)) sau 65527 pentru IPv6, dar majoritatea sistemelor limiteaza aceasta valoare la un numar mai mic, dependent de sistem. -S sndbuf Stabilete sndbuf (memoria tampon de trimitere) a soclului. Daca nu este specificat, se selecteaza sa nu se stocheze mai mult de un pachet in memoria tampon. -t ttl ping doar. Stabilete durata de viaa ,,Time to Live" a IP. -T opiune-marca-temporala Stabilete opiunile speciale pentru marcajul de timp IP. opiune-marca-temporala poate fi tsonly (numai marcaje de timp), tsandaddr (marcaje de timp i adrese) sau tsprespec gazda1 [gazda2 [gazda3 [gazda4]]] (marcaj de timp salturi prestabilite). -U Imprima latena completa de la utilizator la utilizator (vechiul comportament). In mod normal, ping afieaza timpul de parcurgere dus-intors al reelei, care poate fi diferit, de exemplu, din cauza eecurilor DNS. -v Ieire detaliata. Nu suprima raspunsurile DUP atunci cand se trimite un ping la o adresa multicast. -V Afieaza versiunea i iese. -w timp-limita Specifica un timp de ateptare, in secunde, inainte ca ping sa iasa, indiferent de cate pachete au fost trimise sau primite. In acest caz, ping nu se oprete dupa ce sunt trimise numarul de pachete, ci ateapta fie ca timpul-limita sa expire, fie pana cand numarul de sondari primete un raspuns sau pana la o notificare de eroare din partea reelei. -W timp-ateptare Timpul de ateptare a unui raspuns, in secunde. Opiunea afecteaza doar timpul de ateptare in absena oricarui raspuns, in caz contrar ping ateapta doua RTT-uri. Numar real admis cu punct ca separator zecimal (indiferent de configuraia regionala). 0 inseamna timp de ateptare infinit. Atunci cand se utilizeaza ping pentru izolarea defeciunilor, trebuie mai intai sa fie rulat pe gazda locala, pentru a verifica daca interfaa de reea locala este activa i funcioneaza. Apoi, ar trebui sa fie trimis un ping catre gazdele i porile de acces din ce in ce mai indepartate. Se calculeaza timpii de parcurgere dus-intors i statisticile de pierdere a pachetelor. In cazul in care se primesc pachete duplicate, acestea nu sunt incluse in calculul pierderilor de pachete, dei timpul de calatorie dus-intors al acestor pachete este utilizat la calcularea numerelor de timp de calatorie dus-intors minim/mediu/maxim/standard. Abaterea standard a entionarii (mdev), in esena o medie a distanei dintre fiecare RTT ping i media RTT. Cu cat mdev este mai mare, cu atat RTT-ul este mai variabil (in timp). Cu o variabilitate ridicata a RTT, vei avea probleme de viteza la transferurile in masa (acestea vor dura mai mult decat este strict necesar, deoarece variabilitatea va determina in cele din urma expeditorul sa atepte ACK-uri) i vei avea o calitate VoIP medie sau slaba. Cand numarul specificat de pachete a fost trimis (i primit) sau daca programul se termina cu un SIGINT, se afieaza un scurt rezumat. Statistici curente mai scurte pot fi obinute fara incheierea procesului cu semnalul SIGQUIT. Acest program este destinat utilizarii in testarea, masurarea i gestionarea reelelor. Din cauza incarcaturii pe care o poate impune asupra reelei, nu este indicat sa se utilizeze ping in timpul operaiilor normale sau din scripturi automate. MEDIU Variabila de mediu IPUTILS_PING_PTR_LOOKUP stabilita la 0 dezactiveaza rezoluia DNS inversa (PTR lookup) in mod implicit. Aceasta va fi anulata de opiunea -H sau -n. STARE DE IEIRE In cazul in care ping nu primete niciun pachet de raspuns, va iei cu codul 1. In cazul in care sunt specificate atat un numar pachet , cat i timp-limita i se primesc mai puine pachete decat numar pana la atingerea timpului-limita, se va iei, de asemenea, cu codul 1. In caz de alta eroare, acesta iese cu codul 2. In caz contrar, iese cu codul 0. Acest lucru face posibila utilizarea codului de ieire pentru a vedea daca o gazda este in viaa sau nu. DESTINAII ALE LEGATURII LOCALE IPV6 Pentru IPv6, atunci cand adresa de destinaie are domeniul de aplicare la nivel de legatura locala i ping utilizeaza socluri de datagrama ICMP, interfaa de ieire trebuie sa fie specificata. Atunci cand ping utilizeaza socluri brute, nu este strict necesar sa se specifice interfaa de ieire, dar ar trebui sa se faca acest lucru pentru a evita ambiguitaile atunci cand exista mai multe interfee de ieire posibile. Exista doua moduri de a specifica interfaa de ieire: o folosind notaia % Adresa de destinaie este postfixata cu % i numele interfeei de ieire sau ifindex, de exemplu: ping fe80::5054:ff:fe70:67bc%eth0 ping fe80::5054:ff:fe70:67bc%2 o folosind opiunea ,,-I" Atunci cand se utilizeaza socluri de datagrama ICMP, aceasta metoda este acceptata incepand cu urmatoarele versiuni de nucleu: 5.17, 5.15.19, 5.10.96, 5.4.176, 4.19.228, 4.14.265. De asemenea, nu este acceptata in ,,musl libc". DETALII DESPRE PACHETUL ICMP Un antet IP fara opiuni are 20 de octei. Un pachet ICMP ECHO_REQUEST conine un antet ICMP suplimentar de 8 octei, urmat de o cantitate arbitrara de date. Atunci cand se da o dimensiune-pachet, aceasta indica dimensiunea acestei bucai suplimentare de date (valoarea implicita este 56). Astfel, cantitatea de date primita in interiorul unui pachet IP de tip ICMP ECHO_REPLY va fi intotdeauna cu 8 octei mai mare decat spaiul de date solicitat (antetul ICMP). In cazul in care spaiul de date are cel puin dimensiunea ,,struct timeval" ping utilizeaza octeii de inceput ai acestui spaiu pentru a include o marca temporala pe care o utilizeaza in calculul timpilor de parcurs dus-intors&. In cazul in care spaiul de date este mai mic, nu se indica timpii de parcurs dus-intors. PACHETE DUPLICATE I DETERIORATE ping va raporta pachetele duplicate i deteriorate. Pachetele duplicate nu ar trebui sa apara niciodata i se pare ca sunt cauzate de retransmisiuni necorespunzatoare la nivel de legatura. Dublurile pot aparea in multe situaii i sunt rareori (sau chiar niciodata) un semn bun, dei prezena unor niveluri scazute de duplicate nu este intotdeauna un motiv de alarma. Pachetele deteriorate sunt, in mod evident, un motiv serios de alarma i indica adesea defeciuni hardware undeva pe traseul pachetului ping (in reea sau in gazde). COLIZIUNI DE IDENTIFICATOR Spre deosebire de TCP i UDP, care utilizeaza portul pentru a identifica in mod unic destinatarul pentru a livra datele, ICMP utilizeaza campul de identificare (ID) pentru identificare. Prin urmare, daca pe aceeai maina, in acelai timp, doua procese ping folosesc acelai ID, raspunsul de ecou poate fi livrat unui destinatar greit. Aceasta este o problema cunoscuta din cauza dimensiunii limitate a campului ID de 16 bii. Aceasta este o limitare istorica a protocolului, care nu poate fi rezolvata in acest moment decat daca codificam un ID in sarcina utila a pachetului ping. ping afieaza eroarea DIFFERENT ADDRESS (ADRESA DIFERITA) i pierderea pachetului este negativa. ping utilizeaza PID pentru a obine un numar unic. Valoarea implicita a /proc/sys/kernel/pid_max este 32768. Pe sistemele care utilizeaza ping intensiv i cu pid_max mai mare de 65535 este inevitabil sa apara coliziuni. INCERCAREA UNOR MODELE DE DATE DIFERITE Stratul (inter)reea nu ar trebui sa trateze niciodata pachetele in mod diferit in funcie de datele coninute in poriunea de date. Din nefericire, se tie ca problemele care depind de date se strecoara in reele i raman nedetectate pentru perioade lungi de timp. In multe cazuri, modelul special care va avea probleme este ceva care nu are suficiente ,,tranziii", cum ar fi toate ,,unu" sau ,,zero", sau un model chiar la limita, cum ar fi aproape toate ,,zero". Nu este neaparat suficient sa specificai un model de date format din toate zerourile (de exemplu) pe linia de comanda, deoarece modelul care prezinta interes se afla la nivelul legaturii de date, iar relaia dintre ceea ce introducei i ceea ce transmit controlorii poate fi complicata. Acest lucru inseamna ca, daca avei o problema dependenta de date, va trebui probabil sa efectuai multe teste pentru a o gasi. Daca suntei norocos, este posibil sa reuii sa gasii un fiier care fie nu poate fi trimis prin reeaua dvs., fie dureaza mult mai mult timp pentru a fi transferat decat alte fiiere de lungime similara. Putei examina apoi acest fiier pentru a gasi modele repetate pe care le putei testa folosind opiunea -p din ping. DETALII TTL Valoarea TTL a unui pachet IP reprezinta numarul maxim de routere IP prin care poate trece pachetul inainte de a fi respins. In practica curenta, va putei atepta ca fiecare router din Internet sa diminueze campul TTL cu exact unu. Campul TTL pentru pachetele TCP poate lua diferite valori. Valoarea maxima posibila a acestui camp este 255, o valoare iniiala recomandata este 64. Pentru mai multe informaii, consultai seciunea TCP/Lower-Level Interface din RFC9293. In timpul funcionarii normale, ping afieaza valoarea TTL din pachetul pe care il primete. Atunci cand un sistem la distana primete un pachet ping, acesta poate face unul dintre urmatoarele trei lucruri cu campul TTL din raspunsul sau: o Nu-l schimba; aa faceau sistemele Berkeley Unix inainte de versiunea 4.3BSD Tahoe. In acest caz, valoarea TTL din pachetul primit va fi 255 minus numarul de routere din traseul dus-intors. o Il stabilete la 255; aceasta este ceea ce fac sistemele Berkeley Unix actuale. In acest caz, valoarea TTL din pachetul primit va fi 255 minus numarul de rutere din ruta de la sistemul la distana la gazda ce face ping. o Il stabilete la o alta valoare. Unele maini folosesc aceeai valoare pentru pachetele ICMP pe care o folosesc pentru pachetele TCP, de exemplu, fie 30, fie 60. Altele pot folosi valori complet neateptate. ERORI o Multe gazde i pori de acces ignora opiunea RECORD_ROUTE. o Lungimea maxima a antetului IP este prea mica pentru ca opiunile precum RECORD_ROUTE sa fie complet utile. Cu toate acestea, nu se pot face prea multe in aceasta privina. o In general, ping-ul de inundare nu este recomandat, iar ping-ul de inundare al adresei de difuzare ar trebui sa se faca numai in condiii foarte controlate. CONSULTAI I ip(8), ss(8). ISTORIC Comanda ping a aparut in 4.3BSD. Versiunea descrisa aici este descendenta sa specifica pentru Linux. Incepand cu versiunea s20150815, binarul ping6 nu mai exista. A fost fuzionat in ping. Crearea unei legaturi simbolice numite ping6 care sa arate spre ping va avea ca rezultat aceeai funcionalitate ca inainte. SECURITATE ping necesita capacitatea CAP_NET_RAW pentru a fi executata 1) daca programul este utilizat pentru interogari fara ecou (a se vedea opiunea -N) sau atunci cand campul de identificare este stabilit la 0 pentru ECHO_REQUEST (a se vedea -e), sau 2) daca nucleul nu accepta socluri de datagrama ICMP, sau 3) daca utilizatorului nu i se permite sa creeze un soclu de ecou ICMP. Programul poate fi utilizat ca set-uid root. DISPONIBILITATE ping face parte din pachetul iputils. TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . iputils 5 iunie 2025 PING(8)