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.
Vélemény, hozzászólás?