In elk type organisatie, ongeacht de infrastructuur, en voor veel gebruikers, is het normaal dat op een bepaald moment in het dagelijkse gebruik van hulpprogramma's die zijn ontworpen om verschillende aspecten van het systeem te valideren, optimaliseren en bewaken, vereist is.
Een van deze gebieden is verbonden met het netwerk, dat niet alleen essentieel is voor toegang tot internet, maar ook essentieel is in het geval van bedrijfsomgevingen, zodat de rollen, processen en services van de servers op de juiste manier werken. . Onder de hulpprogramma's die ons een gecentraliseerde controle over de status van het netwerk geven, hebben we het ping-commando, dus Solvetic zal analyseren wat dit commando is en hoe het werkt, voor deze tutorial zullen we Ubuntu 18.04 gebruiken.
Wat is het ping-commando?Het ping-commando is ontwikkeld als een netwerkhulpprogramma dat beschikbaar is voor de meeste besturingssystemen waarvan de missie in feite is om te valideren of een host toegankelijk is in een IP-netwerk (Internet Protocol), dat wil zeggen, met ping is het mogelijk om te controleren of een computer kan via het netwerk, lokaal of extern, communiceren met een andere computer of netwerkapparaat.
Om al dit proces correct uit te voeren, verzendt het ping-commando een reeks berichten, ECHO_REQUEST genaamd, van het Internet Control Message Protocol (ICMP) naar de bestemmingshost en wacht op een ICMP-echorespons, genaamd ECHO_RESPONSE.
Op basis van het aantal antwoorden dat wordt geretourneerd en hoe lang het duurt voordat het wordt geretourneerd, hebben we informatie die wordt verstrekt door het ping-commando om de beheer- en netwerkcontroletaken uit te voeren. Als de bestemmingscomputer actief is, is het mogelijk om te meten hoe lang het duurt voordat de pakketten de bestemmingshost bereiken en terugkeren naar onze computer. Dit wordt TTL (Time to Live) genoemd en het is van vitaal belang om de status van het apparaatnetwerk tussen de lokale en externe apparatuur, evenzo wordt het verlies van een pakket uitgedrukt als een percentage.
Ping-opdracht gebruiktDe meest voorkomende toepassingen van het ping-commando zijn:
- Valideer en analyseer de status van het netwerk en meerdere doelhosts.
- Traceer en isoleer hardware- en softwareproblemen in verband met het netwerk.
- Voer netwerktests, metingen en beheer uit.
1. Hoe de PING Linux-opdracht te gebruiken
Het ping-commando wordt uitgevoerd door één datagram per seconde te verzenden, en deze uitvoer wordt afgedrukt als één uitvoerregel voor elk ontvangen antwoord. In deze resultaten kunnen we de retourtijden en pakketverliesstatistieken zien, en er wordt ook een korte samenvatting getoond aan het einde van de uitvoering van de opdracht. Het ping-commando stopt wanneer het programma verloopt of wanneer een SIGINT-signaal wordt ontvangen, standaard blijft het ping-commando echoverzoeken naar de doelcomputer sturen totdat een actie-onderbreking wordt ontvangen (Ctrl-C).
Syntaxis van ping-opdrachtEr zijn verschillende parameters om te gebruiken met de ping-opdracht, de algemene syntaxis is als volgt:
ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS] [-r count] [-s count] [-w time-out] [- R] [-S srcaddr] [-p] [-4] [-6] doel [/?]
De te gebruiken variabelen zijn:
-tDeze optie zorgt ervoor dat het doel wordt gepingd totdat het wordt gedwongen te stoppen met het gebruik van de Ctrl-C-toetsen.
-totDeze optie lost, indien mogelijk, de hostnaam van een IP-adresbestemming op.
-n tellenMet deze optie is het mogelijk om het aantal te verzenden ICMP-echoverzoeken in te stellen, de opties variëren van 1 tot 4294967295. Het ping-commando verzendt standaard 4 als de parameter -n niet wordt gebruikt.
-l maatMet deze optie kunt u de grootte, in bytes, van het echo-verzoekpakket instellen in een bereik van 32 tot 65.527. Het ping-commando verzendt een 32-byte echo-verzoek als u de -l-optie in het commando niet gebruikt.
-FDeze optie zorgt ervoor dat ICMP-echoverzoeken niet worden gefragmenteerd door routers tussen de bron- en doelcomputers. De optie -f wordt meestal gebruikt voor het oplossen van problemen met de padmaximumtransmissie-eenheid (PMTU) op lokale netwerken.
-ik TTLDeze optie stelt de Time to Live (TTL)-waarde in, de maximale waarde is 255.
-v TOSMet deze optie is het mogelijk om een Type of Service -Type of Service (TOS) waarde in te stellen.
-r tellenDoor deze optie te gebruiken, kunnen we het aantal hops specificeren tussen de broncomputer en de doelcomputer of het apparaat waarop we gaan registreren en weergeven. De maximale waarde voor deze actie is 9.
-s tellenMet deze optie kunnen we de tijd aangeven, in Internet Timestamp-formaat, waarop elk echo-verzoek is ontvangen en het echo-antwoord is verzonden. De maximale waarde voor het tellen is 4, dus alleen de eerste vier sprongen kunnen met de tijd worden gemarkeerd.
-w time-outDoor een time-outwaarde op te geven, stelt u de hoeveelheid tijd in, in milliseconden, dat de ping wacht op elk antwoord van de doelcomputer, in het geval dat deze -w-optie niet wordt gebruikt, wordt de time-outwaarde gebruikt. dat is 4 seconden.
-RMet deze optie kunt u een tracering van een retourroute uitvoeren.
-srcaddrMet deze optie is het mogelijk om het herkomstadres te specificeren.
-PDeze optie kan worden gebruikt op een adres van een Hyper-V-netwerkvirtualisatieprovider.
-4Deze parameter dwingt de ping-opdracht om alleen IPv4-adressen te gebruiken, maar is alleen nuttig als de bestemming een hostnaam is en geen IP-adres.
-6Deze parameter dwingt de ping-opdracht om alleen IPv6-adressen te gebruiken.
DoelDeze waarde geeft de bestemming aan die moet worden gepingd, ofwel een IP-adres of een hostnaam.
/?Geeft hulp weer voor het ping-commando
-f, -v, -r, -s, -j en -kDe opties -f, -v, -r, -s, -j en -k werken alleen met IPv4-adressen, terwijl de opties -R en -S alleen werken met IPv6.
2. Voorbeelden van PING Linux-opdrachten
Nu gaan we enkele praktische voorbeelden zien voor het gebruik van ping in Linux
Basis ping uitvoeringHet is mogelijk om een eenvoudige ping-test uit te voeren om te controleren of de bestemmingshost bereikbaar is of niet, denk eraan dat het mogelijk is om een IP-adres te gebruiken in plaats van een domeinnaam zoals weergegeven.
ping www.solvetic.comZoals we hebben vermeld, is dit een proces dat permanent zal zijn en we kunnen het stoppen met de Ctrl + C-toetsen, wanneer het proces wordt gestopt, worden de resultaten weergegeven met details zoals:
- Aantal verzonden pakketten
- Aantal ontvangen pakketten
- Verloren pakketten (in percentageformaat)
- Totale reactietijd in milliseconden
VERGROTEN
Geef het aantal verzoeken aanHet is ook mogelijk om het aantal ECHO_REQUEST-verzoeken op te geven dat met de ping-uitvoering wordt verzonden, dit wordt bereikt met de parameter -c en het aantal te verzenden verzoeken:
ping -c 7 www.solvetic.comIn dit geval worden er slechts 7 verzoeken naar het bestemmingsteam gestuurd:
VERGROTEN
Definieer interval in secondenMet de parameter -i is het mogelijk om het interval in seconden in te stellen tussen het verzenden van elk pakket, de standaardwaarde is één seconde, we zullen het volgende uitvoeren gedurende een interval van 4 seconden:
ping -i 4 -c 6 www.solvetic.comWe sturen dus 6 verzoeken met een interval van 4 seconden tussen elk van hen.
VERGROTEN
Valideer reactie van het netwerkOm de respons van het netwerk bij hoge belasting te bepalen, wat essentieel is om de netwerkcapaciteit te controleren, is het mogelijk om een flood ping (flood ping) uit te voeren die verantwoordelijk is voor het veel sneller verzenden van verzoeken, dit wordt bereikt met de -f parameter en moet worden uitgevoerd als rootgebruiker.
De te gebruiken opties zijn een van de volgende:
sudo ping -f www.solvetic.com sudo ping -f -i 3 www.solvetic.com (geeft het interval tussen elk verzoek aan)
VERGROTEN
Ping inschakelen om uit te zendenAls we de ping naar de uitzending willen inschakelen, kunnen we de parameter -b gebruiken.
ping -b 192.168.0.255
VERGROTEN
Beperk het aantal TTLHet is mogelijk om het aantal netwerkhops (TTL - Time-to-live) dat door het ping-commando wordt uitgevoerd te beperken, dit wordt bereikt met de waarde -t, het is mogelijk om elke waarde tussen 1 en 255 in te stellen.
We moeten verduidelijken dat elke router die het pakket ontvangt minstens 1 van de telling aftrekt en als de telling zelfs hoger is dan 0, stuurt de router het pakket door naar de volgende hop, anders wordt het weggegooid en wordt een ICMP-antwoord verzonden naar onze team.
ping -t 15 www.solvetic.com
VERGROTEN
Definieer ping preloadIn het geval van het specificeren van een preload op het moment van uitvoering, stuurt het ping-commando veel pakketten die niet op een antwoord wachten, dit moet als root worden uitgevoerd om een preload van meer dan 3 te selecteren.
sudo ping -l 6 www.solvetic.com
VERGROTEN
Stel de grootte van de pakketten inDe standaard pakketgrootte in ping is voldoende om de status van het netwerk te bepalen, maar deze waarde kan indien nodig worden bewerkt. Het zal mogelijk zijn om de grootte van de payload in aantal bytes te specificeren door gebruik te maken van de -s optie, wat zal resulteren in een totale pakketgrootte van de opgegeven waarde plus 8 extra bytes voor de ICMP-header, hiervoor voeren we uit:
ping -s 800 www.solvetic.comWe hebben een grootte van 800 ingevoerd en we kunnen zien dat ping 808 instelt:
VERGROTEN
Definieer de reactietijdAls het nodig is om de responstijd van een verzoek in seconden in te stellen, gebruiken we de -W-optie ervoor als volgt:
ping -W 9 www.solvetic.com
VERGROTEN
Als het geval is om een time-out in seconden in te stellen, voordat het ping-commando wordt uitgevoerd, ongeacht hoeveel pakketten zijn verzonden of ontvangen, zullen we de parameter -w gebruiken:
ping -w 8 www.solvetic.com
VERGROTEN
Pakketdetails voor foutopsporing inschakelenWe kunnen de -d optie gebruiken om het IP-foutopsporingspakketdetail in te schakelen.
ping -d www.solvetic.com
VERGROTEN
Gedetailleerde informatie bekijkenHet is mogelijk om uitgebreide uitvoer in te schakelen met de vlag -v:
ping -v www.solvetic.com
VERGROTEN
Definieer IPv4- of IPv6-adressenWe kunnen specificeren dat het ping-commando alleen IPv4- of IPv6-adressen detecteert (indien aanwezig), hiervoor voeren we de meest geschikte optie uit.
ping -4 www.solvetic.com ping -6 www.solvetic.com
VERGROTEN
Op deze manier is het ping-commando een van de meest praktische en uitgebreide hulpprogramma's om het proces van netwerkcontrole en -beheertaken uit te voeren.