Ping parancs több címre egyszerre Windows CMD-ben

Bevezetés a Ping parancs többcímű használatába

A hálózati hibaelhárítás során gyakran szükség van arra, hogy egyszerre több eszköz elérhetőségét ellenőrizzük. Windows környezetben a ping parancs alapértelmezés szerint egyetlen célcímet kezel, de számos módszer létezik arra, hogy egyszerre több IP-címet vagy akár egy teljes alhálózatot is leteszteljünk. A rendszergazdák és haladó felhasználók számára elengedhetetlen, hogy ismerjék ezeket a technikákat, mert jelentősen felgyorsíthatják a diagnosztikai folyamatokat. Ez a cikk részletesen bemutatja a Windows parancssor (CMD) és a PowerShell lehetőségeit, valamint a harmadik féltől származó eszközöket, amelyekkel párhuzamosan pingelhetünk több címet. A leírások között kiemelt figyelmet kap a batch fájlok használata, a PowerShell Test-Connection parancsa, illetve a dedikált grafikus felületek. A gyakorlati példák segítenek abban, hogy a mindennapi munkában azonnal alkalmazható tudást szerezzen az olvasó.

Hagyományos parancssori módszerek több IP cím pingelésére

A Windows parancssorban legegyszerűbben a for ciklus segítségével pingelhetünk egy IP-tartományt. Ez a módszer szekvenciálisan dolgozza fel a címeket, de nem nyit külön ablakokat. A következő példa a 192.168.0.1 és 192.168.0.254 közötti összes címet ellenőrzi:

for /L %i in (1,1,254) do ping -n 1 -w 20 192.168.0.%i | find "Reply"

Ping parancs több címre egyszerre Windows CMD-ben - 1

Ez a parancs minden egyes címre egyetlen ICMP-kérést küld, húsz ezredmásodperces időtúllépéssel, és csak azokat a sorokat jeleníti meg, amelyekben a "Reply" szó szerepel. Így gyorsan láthatjuk, mely eszközök érhetők el a helyi hálózaton. A for ciklus használata rendkívül rugalmas: ha más alhálózatot szeretnénk tesztelni, egyszerűen módosítjuk a kezdőcímet és a maszkot.

Egy másik lehetőség, hogy egyszerre több konkrét IP-címet adunk meg a ping parancsnak szóközökkel elválasztva. Bár a parancs ebben az esetben is egymás után hajtja végre a kéréseket, kényelmesebb, mintha egyenként gépelnénk be őket. A szintaxis a következő:

ping 8.8.8.8 1.1.1.1 8.8.4.4

Ping parancs több címre egyszerre Windows CMD-ben - 2

Ez a parancs először a Google DNS-ét (8.8.8.8), majd a Cloudflare-t (1.1.1.1), végül a Google másodlagos DNS-ét (8.8.4.4) pingeli. Az eredmények egymás után jelennek meg a parancssorban. Bár ez nem párhuzamos végrehajtás, a mindennapi gyors ellenőrzésekhez elegendő lehet. A Microsoft hivatalos dokumentációja szerint a ping parancs több IP-címet is elfogad argumentumként, de a működés mindig szekvenciális.

Az alábbi lista összefoglalja a leggyakoribb parancssori módszereket a többcímű pingeléshez:

1. For ciklus IP-tartományon: for /L %i in (1,1,254) do ping -n 1 -w 20 192.168.0.%i | find "Reply"
2. Több konkrét IP egy sorban: ping 8.8.8.8 1.1.1.1 8.8.4.4
3. Batch fájl használata: a fenti ciklus mentése .bat kiterjesztésű fájlba, majd futtatása
4. Folyamatos pingelés egy címre: ping -t 8.8.8.8 (nem párhuzamos, de hasznos teszteléshez)

Ping parancs több címre egyszerre Windows CMD-ben - 3

A fenti módszerek mindegyike a hagyományos parancssoron alapul, és nem igényel telepítést. A tapasztalt felhasználók gyakran kombinálják ezeket a find, a sort és a timeout parancsokkal, hogy a kimenetet szűrjék és naplózzák. A batch fájlokkal automatizálhatjuk a hálózati ébresztő csomagok küldését vagy az IP-címek időszakos ellenőrzését.

PowerShell-lel párhuzamos pingelés

A PowerShell modernebb és hatékonyabb megoldásokat kínál a hálózati kapcsolatok tesztelésére. A Test-Connection parancsmag a hagyományos ping helyettesítésére született, és képes párhuzamosan lekérdezni több számítógépet. Az alapvető szintaxis a következő:

Test-Connection -ComputerName 8.8.8.8, 1.1.1.1, 8.8.4.4 -Count 1

Ping parancs több címre egyszerre Windows CMD-ben - 4

Ez a parancs egyszerre küld egy-egy ICMP-kérést a megadott címekre, és az eredményeket egy táblázatos formában jeleníti meg. A -Count paraméterrel szabályozhatjuk, hány kérést küldjünk címenként. A Test-Connection sokkal gyorsabb, mint a szekvenciális ping, mert a kérések párhuzamosan futnak. Emellett a parancsmag további paramétereket is támogat, például a -TimeToLive, a -BufferSize vagy a -Delay.

Ha valóban folyamatos párhuzamos pingelést szeretnénk, a PowerShell a Start-Job segítségével valósítható meg. Minden egyes IP-címhez külön háttérfeladatot indítunk, amely egy végtelen ciklusban pingeli a címet. Az alábbi példa két cím folyamatos ellenőrzését mutatja:

$IP1 = "8.8.8.8"
$IP2 = "1.1.1.1"
Start-Job -ScriptBlock { param($ip) while($true) { ping -n 1 $ip | Out-Null; Start-Sleep -Seconds 2 } } -ArgumentList $IP1
Start-Job -ScriptBlock { param($ip) while($true) { ping -n 1 $ip | Out-Null; Start-Sleep -Seconds 2 } } -ArgumentList $IP2

Ping parancs több címre egyszerre Windows CMD-ben - 5

Ezek a feladatok a háttérben futnak, és az eredményeket a Receive-Job parancs segítségével kérhetjük le. A párhuzamos feladatok kezelése lehetővé teszi, hogy valós időben nyomon kövessük több eszköz elérhetőségét anélkül, hogy külön ablakokat kellene nyitogatnunk. A PowerShell háttérfeladatai azonban erőforrás-igényesek lehetnek, ezért nagy hálózatok esetén érdemes korlátozni a párhuzamos feladatok számát.

Az alábbi táblázat összehasonlítja a hagyományos parancssor és a PowerShell párhuzamos pingelési lehetőségeit:

Eszköz | Párhuzamosság | Automatizálhatóság | Kimenet formája
CMD for ciklus | Nincs (szekvenciális) | Batch fájlokkal | Egyszerű szöveg
CMD több IP egy sorban | Nincs (szekvenciális) | Korlátozott | Egyszerű szöveg
PowerShell Test-Connection | Igen (párhuzamos) | Magas (szkriptekkel) | Táblázatos objektum
PowerShell Start-Job | Igen (valódi párhuzam) | Magas (szkriptekkel) | Feladatokból lekérdezhető

A táblázatból jól látszik, hogy a PowerShell mind párhuzamosságban, mind automatizálhatóságban felülmúlja a hagyományos parancssort. A PowerShell-szkriptek menthetők és újra felhasználhatók, ami nagy hálózati környezetben jelentős időmegtakarítást eredményez.

Harmadik fél eszközei: PingInfoView és társai

Azok számára, akik nem szeretnének parancssorral dolgozni, számos ingyenes grafikus eszköz áll rendelkezésre. A NirSoft által fejlesztett PingInfoView az egyik legismertebb ilyen program. Ez a kis segédprogram lehetővé teszi, hogy egy listába gyűjtsük a pingelni kívánt hosztneveket vagy IP-címeket, majd egyszerre, párhuzamosan indítsuk el a lekérdezéseket. Az eredményeket egy táblázatban láthatjuk, amely tartalmazza a válaszidőt, a csomagvesztést és az állapotot. A PingInfoView használata rendkívül egyszerű: a felhasználó beírja a címeket, beállítja a pingelés gyakoriságát és időtúllépését, majd elindítja a tesztet. A program folyamatosan frissíti az adatokat, így valós időben követhetjük a hálózat állapotát.

A NirSoft PingInfoView ingyenesen letölthető, és nem igényel telepítést. Az eszköz kiválóan alkalmas akár több száz IP-cím egyidejű monitorozására, és a naplózási funkcióval az eredményeket fájlba is menthetjük. A grafikus felület áttekinthető, és a színkódok segítenek gyorsan azonosítani a problémás eszközöket. A PingInfoView mellett más hasonló eszközök is léteznek, például a Free Ping Tool vagy a ColaSoft Ping Manager, de a NirSoft megoldása a legnépszerűbb a rendszergazdák körében.

A harmadik fél eszközei azoknak ajánlottak, akik nem akarnak parancsorokat tanulni, vagy akiknek nagy mennyiségű címet kell folyamatosan ellenőrizniük. A grafikus felület előnye, hogy az eredményeket azonnal áttekinthetjük, és a hibás eszközökre kattintva további diagnosztikai lépéseket tehetünk. Ugyanakkor ezek az eszközök nem minden esetben helyettesítik a parancssor rugalmasságát, különösen akkor, ha a pingelést más folyamatokkal kell összekapcsolni. A tapasztalt felhasználók gyakran kombinálják a grafikus eszközöket a PowerShell-szkriptekkel, hogy a legjobb eredményt érjék el.

Folyamatos pingelés és speciális esetek

A folyamatos pingelés, azaz a -t kapcsoló használata nem párhuzamos, de gyakran alkalmazzák egyetlen kapcsolat stabilitásának ellenőrzésére. A ping -t 8.8.8.8 parancs addig küldi a csomagokat, am

ping Windows CMD hálózat parancssor több címre diagnosztika
Figyelem Tájékoztató jellegű tartalom, a parancsok használata a rendszered beállításaitól függhet.
Szerző

Stefano Barcellos

Közreműködő a(z) Visite Barbados oldalon.

« Előző bejegyzés
Asztali widgetek: Hasznos eszközök a képernyőn

Kapcsolódó bejegyzések