a Linuxnak köszönhetően számos olyan eszközhöz férhetünk hozzá, amelyek megkönnyítik a hálózati adminisztrációt & diagnosztika. Ebben az értelemben a Linux ping parancs az egyik leghasznosabb eszköz a rendszergazdák számára.

alapvető funkciója annak meghatározása, hogy a hálózat egyik gazdagépe elérhető-e vagy sem. Ebben a bejegyzésben azonban foglalkozunk a Linux ping parancs más fejlettebb képességeivel.

Tartalomjegyzék

mi a ping parancs használata?,

a ping parancs az egyik legalapvetőbb eszköz a hálózatokkal való munkavégzéshez. Célja a hálózati kapcsolat hibáinak diagnosztizálása.

ily módon meg lehet tudni, hogy egy hálózati csomópont elvesztette-e a kapcsolatot. Másrészt hasznos más diagnosztikai feladatok elvégzése is, például a következő:

  • mérje meg a két hálózati csomópont által a kommunikációhoz szükséges időt.
  • képesek leszünk azonosítani egy adott gazdagép IP-címét is. Ezt a funkciót mind az interneten, mind a magánhálózaton használhatjuk.,
  • a ping parancs használható egy bash szkriptben, hogy automatikus ellenőrzéseket hajtson végre hálózati csomópontokkal.
  • lehetővé teszi annak megismerését, hogy van-e kapcsolat bizonyos berendezésekkel.

mint látható, ez egy szükséges parancs a hálózatok és szerverek adminisztrációjához.

hogyan működik a ping parancs?

Linuxban a ping parancs működése meglehetősen egyszerű megmagyarázni. A parancs egy sor kis csomagot küld egy adott csomópontra.

tesztelheti ezt a csomópontot az IP-cím vagy a gazdagépnév használatával., Ezután, miután elküldte a csomagot, a parancs ellenőrzi, majd méri az időt vesz igénybe, hogy megkapja a választ a cél csomópont.

ahogy az várható volt, a válaszidőt olyan feltételek befolyásolhatják, mint például a csatlakozási pontok közötti Földrajzi hely vagy a két csomópont között használt hardver bármely darabja.

például vezetékes magánhálózatokban a parancs jobb időt kap, mint egy több útválasztóval vagy hidakkal rendelkező hálózatnál.

azonban a parancs által generált információ Meg fogja ítélni, hogy a hálózat jó vagy rossz állapotban van-e.,

a parancs szintaxisa a következő:

ping 

a ping parancs leghasznosabb és leghasznosabb opciói a következők:

  • -c: ezzel az opcióval megadhatja, hogy hány csomagot kell küldeni.
  • – s: ez az opció lehetővé teszi a csomagok alapértelmezett méretének megváltoztatását.
  • – v: bőbeszédű mód.
  • – w:a parancs végrehajtása másodpercek alatt megadott időt adja meg. Nem számít, hány csomagot küldött vagy fogadott a parancs.
  • – i:ezzel az opcióval megadhatja a használni kívánt hálózati felületet.,

a célcsomópontot IP-cím vagy gazdagépnév határozhatja meg.

tudok ping egy proxy?

a proxy olyan szerver vagy alkalmazás, amely közvetítőként szolgál a hálózat két pontja közötti kapcsolathoz. A középső ember teszi a kérelmet közvetlenül egy másik csomóponthoz.

a probléma az, hogy a Ping parancs közvetlen hálózati kapcsolatot igényel a csomópontok között.

ezért a Ping parancs általában nem működik megfelelően, ha mögötte van proxy.

lehetséges megoldás az, hogy sok webhely kínálja a Ping parancs szolgáltatást., Másrészt a ping parancs egyes feladataihoz a curl parancs használható. Használhat VPN-t is, hogy elrejtse az IP-jét.

néhány Linux disztribúcióban azonban ez a parancs alapértelmezés szerint nincs telepítve. Először ellenőrizze, majd telepítse, ha nincs telepítve.

Ping IPv6 protocol

általában a Ping parancs használatakor IP-címeket használunk az IPv4 protokollal. Az IPv6 protokoll megjelenésével azonban egyre gyakoribb a címek észlelése ebben a formátumban.

a Linux kernel támogatja az IPv6 protokollt a 2. verzió óta.,2, tehát az összes Linux disztribúció jelenleg támogatja.

az alapvető szintaxis a következő:

$ ping -6 2001:4860:4860::8888

a régi verziókban ping6 parancs volt. A Linux legújabb verzióiban a ping6 már nem létezik, funkcionalitása beolvadt a ping-be, és ugyanúgy működik, mint te.

az alapvető szintaxis a következő:

ping6 

A-c opcióval megadhatjuk a küldendő csomagok számát és-I-vel a használni kívánt hálózati interfészhez., Például:

ping6 2001:4860:4860::8888

Ping egy adott port

Néha szeretnénk tudni, hogy egy adott port egy csomóponton aktív-e. A ping parancs azonban nem biztosítja ezt a funkciót, de lehetséges a Telnet paranccsal, amelyet alapértelmezés szerint telepítenek Linuxra.

ehhez csak használja a következő szintaxist:

telnet 
telnet google.com 80

így lehetséges a hálózati csomópont egy adott portjának primitív módon történő pingelése.,

Ping idővel

bár a ping parancs hasznos információkat jelenít meg, lehet, hogy egy kicsit egyszerű. Lehetőség van azonban egy kicsit módosítani a parancs működését, hogy megjelenítse a csomag elküldésének dátumát.

Ez a szemnek tetszővé teheti az információt, és hasznos lehet a szkriptek és naplók számára.

Ez a szintaxis elegendő ehhez. Azonban telepítenie kell a ccze csomagot.

ping | xargs -n1 -i bash -c 'echo `date +%F\ %T`" {}"' | ccze

mint látható, minden elküldött csomag idejét mutatja.,

Ping az összes állomás egy adott alhálózaton

ping jelet küldhet a hálózaton vagy alhálózaton lévő összes gazdagépnek. Ehhez elegendő a-b opció hozzáadása, valamint a 255-tel végződő hálózat broadcast IP-címének pingelése.

például:

ping -b -c 4 192.168.1.255

tehát ha a rendeltetési hely nem érhető el, talán blokkolják a ping parancs által küldött ICMP csomagokat, vagy talán hálózati probléma vagy probléma van az útválasztási táblán.

hogyan lehet befejezni a pinget?,

alapértelmezés szerint a Linux ping parancsa folyamatosan tesztcsomagokat küld a házigazdáknak. Ha azonban az információ rendelkezésre áll, szükségessé válik a ping parancs végrehajtásának megszüntetése.

ehhez egyszerűen nyomja meg a következő gombokat:

CTRL + C

így a parancs azonnal leáll.

vége egy adott szám után

korlátozhatja a csomagok számát 10-re vagy bármi másra. Amikor befejezi a tíz csomag küldését, leáll.,

ping -c 10 

hol található a ping parancs Linuxon?

egy Unix-alapú rendszerben, mint például a Linux, a binárisok általában megtalálhatók az elérési úton:

/usr/bin/

ebben a könyvtárban számos bináriumot találunk, amelyeket parancsként használunk a terminálon. A Linux család más operációs rendszereiben a

/usr/sbin/

könyvtárban is elhelyezhető.,

Így tudjuk ellenőrizni, hogy segítségével az ls parancs:

$ ls /usr/bin | grep ping

ezt A képet, akkor láthatjuk, hogy a ping parancs található,

/usr/bin/

egy Másik módja, használhatja, amely a parancs, hogy keresse meg a parancs Linux-on:

$ which ping

Ez megmutatja a következő:

/usr/bin/ping

Ellenőrizze a látencia a ping paranccsal

az Egyik a lehetőségeket, a ping parancsot, hogy meg lehet mérni a kapcsolat válaszidő. Ez a késés.,

a késés ping paranccsal történő méréséhez csak használja, és figyeljen a képernyő kimenetére:

ping -c 4 ping -c 4 192.168.1.1

mint látható, négy csomagot küldtek a rendeltetési helyre egy bizonyos válaszidővel.

alul van egy sor, amely a következőképpen kezdődik:

rtt min/avg/max/mdev

az egyenlő jel után a második érték a késleltetési érték. Ebben az esetben az érték 6,798.,

a késleltetéssel meg lehet határozni azokat a gazdagépeket, amelyek a többinél alacsonyabb kapcsolattal rendelkeznek. Így képesek leszünk megtenni a megfelelő intézkedéseket.

keresse meg az ideális MTU

az MTU (maximális átviteli egység) olyan érték, amely statikusan fejezi ki a legnagyobb adategység méretét bájtban, amelyet hálózaton keresztül lehet küldeni.

jelenleg a biztonsági intézkedések miatt egyre több hálózat akadályozza az MTU működését. A legtöbb Ethernet helyi hálózat azonban 1500 bájt MTU-t használ.,

Ha a ping paranccsal szeretné megtalálni az ideális MTU értéket, állítsa be a kezdeti értékeket, majd csökkentse, amíg nincs hiba. Ha az érték túl magas, akkor a következő hibát kapjuk:

ping: local error: Message too long

ehhez használja a következő szintaxist:

ping -M do -s 

például:

ebben az esetben a csomagméret értéke nagyon nagy. Tehát csökkenteni fogom. Ebben az esetben az optimális érték 1472.,

ha újabb üzenetet kap, a kezdeti értéket egyenként kell csökkenteni, amíg meg nem kapja a kívánt eredményt.

Ha az MTU értéke ismert, akkor a hálózati viselkedés javítására használható, különösen, ha ez egy nagy vagy akár nagyvárosi hálózat.

Ping a 2. rétegen (arping használatával)

a ping paranccsal tesztelhetünk egy adott csomópont IP-címét a hálózaton belül. Ennek oka az, hogy a ping parancs az OSI modell (hálózat) 3.rétegén működik.,

másrészt lehetőség van egy másik parancs használatára, amely arpingként van beépítve a Linuxba. Ez a parancs nagyon hasonlít a ping – hez, de az OSI modell 2.rétegén működik.

a parancs szintaxisa a következő:

$ sudo arping 
$ sudo arping 192.168.1.1

ilyen eredményt kap:

a parancs képernyő kimenete először az elküldött csomag méretét mutatja, majd a csomópont mac címe és a válaszidő.

vegye figyelembe, hogy ez a parancs alapértelmezés szerint nincs telepítve a Debian Linuxra és származékokra., Tehát telepítenie kell, majd gyökérként futtathatja.

Ping a hostname

alapértelmezés szerint a ping parancs tesztcsomagokat küld a rendeltetési helyre az IP-cím vagy a célállomás gazdagépneve segítségével. Azt is meg kell jegyezni, hogy a legtöbb ping implementáció Linuxon nem oldja meg a DNS-t fordítva.

például, ha a Ping parancsot IP-cím hozzáadásával használja, akkor csak a gazdagép IP-címét adja vissza a kimeneten. Ezzel szemben, ha megadtunk egy gazdagépnevet, akkor megoldja, majd megjeleníti az IP-t a kimeneten.,

ellenőrizze a következő parancs kimenetét:

$ ping google.com

ping útvonal (traceroute használatával)

a ping parancs nem jeleníti meg az útvonalat a forrásból a cél eléréséhez.

Ez nagyon hasznos lehet abban az esetben, ha a gazdagéppel való kapcsolat elveszett, mert megértjük, hogy a kapcsolat melyik ponton veszett el.

a tracert vagy traceroute parancs nagyon hasonló módon működik a ping parancshoz. Ennek az az előnye, hogy megmutatja a csomag által megtett utat, így megmutatja annak útvonalát.,

mint a ping parancs a legtöbb Linux disztribúcióban telepítve van. Az alapvető szintaxis a következő:

traceroute 

így láthatjuk a csomagok útvonalát.

futtassa a parancsot, ha a ping nem sikerül

tegyük fel, hogy figyelmeztetni szeretné, ha a ping parancs sikertelen. Ehhez be kell építenie a ping parancsot egy bash szkriptbe a kívánt állapot beállításához.,

például ez a shell szkript lehetővé teszi annak ellenőrzését, hogy a ping parancs sikertelen-e:

#! /bin/bashping -c 1 If ; then #Your_command_hereFi

állítsa be a ping csomag méretét

a ping parancs által a gazdáknak küldött csomagok alapértelmezett mérete 56 bájt. Ez elég alacsony érték ahhoz, hogy ne befolyásolja a hálózat működését.

lehetséges azonban egy másik értékre változtatni. Ehhez egyszerűen adja hozzá a-s opciót a kívánt csomagmérettel.,

például:

ping -s hostname/IP

Ha azt szeretné, hogy a csomag mérete 100 bájt legyen, csak használja a következő parancsot:

ping -s 100 192.168.1.1

ne feledje, hogy ez kissé eltérhet a mtu.

tiltsa le a ping parancsot

ha felelősek vagyunk a hálózat fenntartásáért, bármikor letilthatjuk a ping válaszokat. Meg tudjuk csinálni ideiglenesen vagy véglegesen, igényeinknek megfelelően.,

ha ideiglenesen deaktiválni akarjuk, elegendő ezt a parancsot gyökér felhasználóként használni:

$ su$ echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all

ez letiltja a ping parancs válaszát, de csak addig, amíg újraindítja a rendszert.

ha véglegesen meg akarja csinálni, akkor a következő fájlt kell szerkesztenie

/etc/sysctl.conf

és hozzá kell adnia a következő sort:

$ nano /etc/sysctl.conf
net.ipv4.icmp_echo_ignore_all=1

majd mentse el a fájlt, majd lépjen ki., A módosítások alkalmazásához használja ezt a parancsot:

$ sysctl -p

ez letiltja a ping parancsot vagy az ICMP csomagok válaszát.

következtetés

ebben a bejegyzésben részletesen elmagyaráztuk, hogyan működik a ping parancs Linuxon. A segédprogramtól a letiltásig. A Ping az egyik legegyszerűbb parancs.

Ez arra készteti a hálózat működéséért felelős személyt, hogy tudja, hol van a probléma, így lépéseket tehet.

remélem, hasznosnak találja a bejegyzést. Gyere vissza.

köszönöm.,

a LikeGeeks alapítója. 2010 óta dolgozom Linux rendszergazdaként. Én vagyok a felelős a Linux szerverek karbantartásáért, biztonságáért és hibaelhárításáért világszerte több ügyfél számára. Szeretek shell és Python szkripteket írni, hogy automatizáljam a munkámat.