- bookworm 4.18.1-1
- testing 4.19.0-3
- unstable 4.19.0-3
- experimental 4.19.0-4
PING(8) | iputils | PING(8) |
NAAM¶
ping - zend ICMP ECHO_REQUEST pakketten naar machines op het net
SAMENVATTING¶
ping [-aAbBdCDefhLnOqrRUvV46] [-c count] [-F flowlabel] [-i interval] [-I interface] [-l preload] [-m mark] [-M pmtudisc_option] [-N nodeinfo_option] [-w deadline] [-W timeout] [-p pattern] [-Q tos] [-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp option] [hop...] {bestemming}
BESCHRIJVING¶
ping gebruikt het datagram ECHO_REQUEST, een verplicht onderdeel van het ICMP protocol, om een ICMP ECHO_RESPONSE van een machine op het net of gateway los te krijgen. ECHO_REQUEST datagrammen (“pings”) hebben een IP en ICMP header gevolgd door een »struct timeval« en dan een willekeurig aantal »opvullings« bytes om het pakket te vullen.
ping werkt zowel met IPv4 als IPv6. Gebruik van precies een van deze kan worden bepaald door het opgeven van -4 of -6.
ping kan ook IPv6 Node Information Queries (RFC4620) sturen. Tussen liggende hops zijn mogelijk niet toegestaan, omdat IPv6 source routing werd afgekeurd (RFC5095).
OPTIES¶
-4
-6
-a
-A
-b
-B
-c aantal
-C
-d
-e
-D
-f
-F flow label
-h
-i wacht
-I interface
-l voorladen
-L
-m merk
-M pmtudisc_opt
-N nodeinfo_option
help
name
ipv6
ipv6-global
ipv6-sitelocal
ipv6-linklocal
ipv6-all
ipv4
ipv4-all
subject-ipv6=ipv6-adres
subject-ipv4=ipv4-adres
subject-name=nodename
subject-fqdn=nodename
-n
-O
-p patroon
-q
-Q tos
In RFC2474, worden deze velden geinterpreteerd als 8-bit Differentiated Services (DS), bestaande uit: bits 0-1 (2 laagste bits) van aparte data, en bits 2-7 (hoogste 6 bits) van Differentiated Services Codepoint (DSCP). In RFC2481 en RFC3168, worden bits 0-1 gebruikt voor ECN.
Historisch (RFC1349, verouderd door RFC2474), werden deze geinterpreteerd als: bit 0 (laagste bit) als gereserveerd (op dit moment onder definite als congestie instelling), 1-4 voor Type of Service en bits 5-7 (hoogste bits) for Precedence.
-r
-R
-s pakketgrootte
-S sndbuf
-t ttl
-T tijdstempel optie
-U
-v
-V
-w deadline
-W timeout
Bij gebruik van ping voor fout isolatie, zou het eerst gedraaid moeten worden op de locale machine om te verzekeren dat het locale netwerk werkt en draait. Vervolgens zouden machines en gateways verder- en verder-wegge-“pinged” moeten worden. Heen-en-terug tijden en verloren pakketten statistieken worden berekend. Als dubbele pakketten worden ontvangen worden ze niet meegerekend in de pakket-verlies berekening, alhoewel de heen-en-weer reistijd van deze pakketten wel gebruikt wordt in het berekenen van de minimum/gemiddelde/maximumheen-en-weer reistijden. Als het opgegeven aantal pakketten is verzonden (en ontvangen) of als het programma eindigt met een SIGINT, wordt een korte samenvatting weergegeven.
Groeps standaard deviatie (mdev), in essentie de gemiddelde afstand tussen de ping RTT en de gemiddelde RTT. Des te groter mdev is des te groter de variatie van RTT is (over de tijd). Bij een grote RTT variabiliteit zult u snelheids problemen met massa overdrachten hebben (die zullen langer duren dan strikt noodzakelijker, omdat de variabliteit ervoor zal zorgt dat de verzender wacht op ACK´s) en u zult gemiddelde tot slechte VoIP kwaliteit ondervinden.
Zodra het opgegeven aantal pakketten werd verstuurd (en ontvangen) of zodra het programma werd beëindigt met een SIGINT, wordt een korte samenvatting getoond. Kortere statistieken kunnen worden verkregen zonder het beëindiging van het process met een SIGQUIT signaal.
Als ping geen enkel antwoord pakket ontvangt zal het eindigen met code 1. Als het pakket aantal count en deadline beiden opgegeven werden en minder dan count pakketten werden ontvangen voordat deadline werd bereikt, dan beëindigt het ook met een code 1. Bij andere fouten eidigt het met code 2. In alle gevallen eidigt het met code 0. Dit maakt het mogelijk om de beëindings code te gebruiken om te zien of een host al dan niet actief is.
Dit programma is bedoeld voor gebruik in het testen van netwerk, meten en beheer. Vanwege de belasting die het op het netwerk kan geven is het niet slim om ping gedurende normale gang van zaken of vanaf geautomatiseerde scripts te gebruiken.
IPV6 LINK-LOCAL BESTEMMINGEN¶
For IPv6, als het bestemmings adre een link-local scope heeft en ping gebruik maakt van ICMP datagram sockets, moet het uitvoer interface opgegeven worden. Indien ping raw sockets gebruikt dan is het niet strikt noodzakelijk om het uitvoer interface op te geven, maar kan beter gedaan worden om ambiguiteit te voorkomen indien er meerdere uitvoer interfaces zijn.
Er zijn twee manieren op het uitvoer interface op te geven:
• gebruikmakend van de % notatie
ping fe80::5054:ff:fe70:67bc%eth0
ping fe80::5054:ff:fe70:67bc%2
• gebruikmakend van de -I optie
ICMP PAKKET DETAILS¶
Een IP header zonder keuzes is 20 bytes. Een ICMP ECHO_REQUEST pakket bevat een aanvullende 8 bytes met ICMP header gevolgd door een willekeurige hoeveelheid gegevens. Wanneer een pakketgrootte is gegeven, geeft dat de grootte van dit extra gedeelte gegevens op (de standaard is 56). Dus de hoeveelheid gegevens ontvangen binnen een IP pakket van soort ICMP ECHO_REPLY zal altijd 8 bytes meer zijn dan de gevraagde gegevens ruimte (door de ICMP header).
Als de gegevens ruimte tenminste acht bytes groot is dan gebruikt ping de eerste acht bytes van deze ruimte om een tijdstempel bij te voegen, die het gebruikt in het berekenen van Heen-en-terug tijden. Als minder dan acht bytes opvulling worden opgegeven worden geen heen-en-weer reistijden gegeven.
VERDUBBELDE EN BESCHADIGDE PAKKETTEN¶
ping zal kopieerde pakketten en beschadigde pakketten rapporteren. Kopieerde pakketten zouden nooit moeten voorkomen, en lijken te worden veroorzaakt door niet toepasselijke verbindings-niveau her-verzendingen. Kopieerden kunnen optreden in vele situaties en zijn zelden (als ooit) een goed teken, alhoewel het voorkomen van kleine hoeveelheden kopieerden niet altijd reden voor paniek hoeft te zijn.
Beschadigde pakketten zijn duidelijk een serieuze oorzaak voor bezorgdheid en wijzen vaak op kapotte hardware ergens in de pad die het ping pakket aflegt (in het netwerk of in de machine).
PROBEREN VAN ANDERE GEGEVENS PATRONEN¶
De (inter)netwerk laag zou nooit pakketten anders moeten behandelen afhankelijk van de gegevens in het gegevens deel. Helaas komt het wel eens voor dat gegevens afhankelijke problemen in netwerken kunnen sluipen en onopgemerkt kunnen blijven voor lange tijd. In veel gevallen zal het bijzondere patroon dat problemen geeft iets zijn dat niet genoeg “overgangen” heeft, zoals allemaal enen of allemaal nullen, of een patroon aan de rand zoals bijna allemaal nullen. Het is niet noodzakelijkerwijs genoeg om een gegevens patroon op te geven met allemaal nullen (bijvoorbeeld) op de opdracht regel omdat het patroon dat van belang is op het gegevens verbindings niveau, en de afhankelijkheden tussen wat u typt en wat de 'controllers' verzenden ingewikkeld kan zijn.
Dit betekent dat als u een gegevens afhankelijk probleem hebt u waarschijnlijk een hoop moet testen om het te vinden. Als u geluk hebt, kan het u lukken een bestand te vinden dat niet gezonden kan worden over uw netwerk, of dat veel langer over de overdracht doet dan andere bestanden van gelijksoortige lengte. U kunt dan dit bestand onderzoeken op herhaalde patronen die u kunt testen met de -p keuze van ping.
TTL DETAILS¶
De TTL waarde van een IP pakket vertegenwoordigd het maximum aantal IP `routers' dat het pakket door kan gaan voordat het weggegooid wordt. In de huidige praktijk kunt u verwachten dat elke router in het Internet het TTL veld met precies één zal verminderen.
De TCP/IP bepalingen geven op dat het TTL veld voor TCP pakketten gezet zou moeten worden naar 60, maar vele systemen gebruiken kleinere waardes (4.3 BSD gebruikt 30, 4.2 gebruikt 15).
De maximaal mogelijke waarde voor dit veld is 255, en de meeste Unix systemen zetten het TTL veld van ICMP ECHO_REQUEST pakketten naar 255. Dit is waarom u zult merken dat u sommige machines op het net kunt “pingen”, maar ze niet kan bereiken met telnet(1) of ftp(1).
In normale gang van zaken drukt ping de TTL waarde van het pakket dat het ontvangt af. Wanneer een op-afstand systeem een ping pakket ontvangt kan het één van drie dingen doen met het TTL veld in zijn antwoord:
BUGS¶
ZIE OOK¶
ip(8), ss(8).
GESCHIEDENIS¶
De ping opdracht verscheen in 4.3BSD.
De versie zoals hier beschreven is een afstammeling specifiek voor Linux.
Sind versie s20150815, bestaat de ping6 binary niet meer. Hij is samengevoegd in ping. Het aanmaken van een symbolische koppeling genaamd ping6 wijzende naar ping zal resulteren in dezelfde functionalitiet als eerder.
BEVEILIGING¶
ping vereist de CAP_NET_RAW capaciteit om uit te voeren 1) als het programma wordt gebruikt voor niet-echo verzoeken (Zie -N optie), of 2) als de kernel niet-raw ICMP sockets ondersteund, of 3) als de gebruiker geen ICMP echo socket mag aanmaken. Het programma mag worden gebruikt als set-uid root.
BESCHIKBAARHEID¶
ping is onderdeel van het iputils pakket.
VERTALING¶
De Nederlandse vertaling van deze handleiding is geschreven door Jos Boersema <joshb@xs4all.nl>, Mario Blättermann <mario.blaettermann@gmail.com> en Luc Castermans <luc.castermans@gmail.com>
Deze vertaling is vrije documentatie; lees de GNU General Public License Version 3 of later over de Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID.
Indien U fouten in de vertaling van deze handleiding zou vinden, stuur een e-mail naar debian-l10n-dutch@lists.debian.org.
iputils 20221126 |