İçerikleri sosyal medya üzerinden paylaşarak daha fazla kişiye ulaşmasına yardımcı olabilirsiniz.




Kategori: Network
Fırat Boyan 26.12.2017 5

Bir IP Aralığına CMD Komutu İle Toplu Ping Atma

Ping, bir Network üzerindeki iki cihaz arasında iletişimi test etmek için kullanılan temel bir ağ tanılama aracıdır. Ping, ICMP (Internet Control Message Protocol) ICMP ECHO_REQUEST mesajları göndererek çalışır. Hedef cihaz bu mesajı aldığında, ICMP ECHO_REPLY mesajı ile yanıt verir. Bu sayede, bir cihazın başka bir cihaza erişebilir olup olmadığını ve iletişim kurmanın ne kadar sürdüğünü ölçebiliriz. Ping komutu, Network'teki cihazların durumunu kontrol etmek, bağlantı sorunlarını teşhis etmek ve gecikme sürelerini ölçmek için yaygın olarak kullanılır.

ICMP, yani Internet Control Message Protocol, Network cihazları arasındaki iletişimi sağlamak ve Network durumunu raporlamak için kullanılır. ICMP, hata mesajları ve Network bilgilerini iletmek amacıyla kullanılırken, IP (Internet Protocol) veri paketlerini kaynak ve hedef arasında taşımak için kullanılır. ICMP, IP'nin bir parçası olarak çalışır, yani ICMP mesajları IP paketleri içinde taşınır. Bu iki protokol arasındaki temel fark, ICMP'nin Network sorunlarını raporlamak ve çözmek için, IP'nin ise veri iletimini sağlamak için kullanılmasıdır.

Bir IP aralığına toplu ping atma, bir dizi IP adresine ardışık ping komutları göndererek bu adreslerin erişilebilirliğini test etme sürecidir. Bu işlem, büyük Network'lerde çok sayıda cihazın durumunu hızlıca kontrol etmek için oldukça faydalıdır. CMD (Command Prompt) kullanarak bu işlemi gerçekleştirmek mümkündür ve çeşitli yöntemlerle otomatikleştirilebilir.

Ping Komutu Çalışma Prensibi

Ping komutu, belirli bir IP adresine ICMP ECHO_REQUEST paketleri gönderir ve karşı tarafın ICMP ECHO_REPLY paketleriyle yanıt vermesini bekler. Komutun çıktısında, gönderilen paket sayısı, alınan yanıt sayısı, kayıp oranı ve Round-Trip Time - RTT (gidiş-dönüş süresi) gibi bilgiler yer alır. Bu bilgiler, Network'ün durumu hakkında önemli ipuçları sağlar. Örneğin, yüksek kayıp oranı veya uzun RTT süreleri, Network'te bir sorun olduğuna işaret edebilir.

Bir IP aralığına CMD üzerinden toplu ping atma işlemi için basit bir Batch script kullanabiliriz. Bu script, belirtilen IP aralığındaki her IP adresine ping atar ve sonuçları ekrana yazdırır. İşte bu işlemi gerçekleştiren örnek bir Batch script:

@echo off
for /L %%i in (1,1,254) do (
ping -n 1 10.10.10.%%i >nul
if not errorlevel 1 echo 10.10.10.%%i is reachable
)
pause

Bu script, 10.10.10.1 ile 10.10.10.254 arasındaki tüm IP adreslerine ping atar ve erişilebilir olanları ekrana yazdırır. İşleyiş şu şekildedir:

@echo off: Bu komut, script'in çalıştırılması sırasında komut satırında gereksiz bilgilerin görüntülenmesini engeller.

for /L %%i in (1,1,254): Bu döngü, 1'den 254'e kadar olan sayıları iteratif olarak kullanır ve her bir değeri %%i değişkenine atar.

ping -n 1 10.10.10.%%i >nul: Bu komut, %%i değişkeninin değeriyle belirtilen IP adresine bir adet ping paketi gönderir ve çıktıyı >nul ile devre dışı bırakır (yani ekranda göstermez).

if not errorlevel 1 echo 10.10.10.%%i is reachable: Bu koşul, ping komutu başarılı olursa (errorlevel 0 ise) belirtilen IP adresinin erişilebilir olduğunu ekrana yazdırır. "errorlevel 1" değeri, ping komutunun başarısız olduğunu gösterir. "if not errorlevel 1" ifadesi, errorlevel değeri 1 değilse (yani 0 ise) anlamına gelir ve ping başarılı olursa belirtilen IP adresinin erişilebilir olduğunu gösterir.

pause: Bu komut, script'in çalışmasını durdurur ve ekranda kalmasını sağlar, böylece sonuçları inceleyebilirsiniz.

Toplu Ping Atma Avantajları

Toplu ping atma işlemi, büyük Network'lerde çok sayıda cihazın durumunu hızlıca kontrol etmek için kullanılır. Bu yöntem, Network yöneticilerine aşağıdaki avantajları sağlar:

Erişilebilirlik Kontrolü: Belirli bir IP aralığındaki cihazların erişilebilir olup olmadığını hızlıca kontrol edebilir.

Network Sorunlarının Tespiti: Erişilemeyen cihazlar veya yüksek gecikme süreleri, Network'teki potansiyel sorunları işaret edebilir.

Otomasyon: Batch script kullanarak bu işlemi otomatikleştirerek zamandan tasarruf edilebilir.

Raporlama: Sonuçlar kaydedilerek Network sağlığı hakkında raporlar oluşturulabilir.

Batch script, CMD üzerinde çalıştırılabilen basit metin dosyalarıdır. Bu dosyalar, çeşitli komutları ardışık olarak çalıştırarak otomatik işlemler gerçekleştirebilir. Yukarıdaki örnekte, bir IP aralığına toplu ping atma işlemi bir Batch script ile gerçekleştirilmiştir. Bu script, belirli bir IP aralığındaki her IP adresine bir adet ping paketi gönderir ve başarılı olanları ekrana yazdırır. Bu, büyük Network'lerde çok sayıda cihazın durumunu hızlıca kontrol etmek için oldukça faydalıdır.

Sonuç olarak, bir IP aralığına CMD üzerinden toplu ping atma işlemi, Network yöneticileri için etkili bir araçtır. Ping komutunun temelleri ve Batch script kullanımıyla bu işlem otomatikleştirilebilir ve Network sağlığı hakkında hızlı ve doğru bilgiler elde edilebilir. Bu yöntem, Network'teki cihazların erişilebilirliğini kontrol etmek, bağlantı sorunlarını teşhis etmek ve genel Network performansını izlemek için kullanışlı bir çözümdür.

Faydalı olması dileğiyle...


Her türlü görüş ve önerilerinizi aşağıdaki yorum panelinden bırakabilir, kafanıza takılanları veya merak ettiklerinizi sorabilirsiniz.



Yazar Hakkında

firatboyan.com


1985 yılında Alanya'da doğdum. İlk, orta ve lise öğrenimimi Alanya'da tamamladım. Liseden mezun olduktan sonra Akdeniz Üniversitesi Bilgisayar Teknolojisi Ön Lisans programına yerleştim ve bu programdan mezun oldum. Ön Lisans programından mezun olduktan bir süre sonra Dikey Geçiş Sınavı (DGS) ile İstanbul Teknik Üniversitesi (İTÜ) Bilgisayar Mühendisliği Lisans programına yerleştim.

2003 yılından beri Bilgi Teknolojileri sektöründe Sistem ve Network alanlarında çalışıyorum. Bir çok firma bünyesinde onlarca farklı projelerde yer alarak bu alanda yıllar içinde ciddi bir bilgi birikimi ve deneyimler kazandım. Bilgi Teknolojileri sektöründeki profesyonel çalışma hayatımın uzunca bir dönemini entegratör firma bazında, ağılıklı olarak Microsoft ürünleri üzerine danışman olarak sürdürüyor ve yüksek seviyeli projeler geliştiriyorum. Uzunca bir süredir de Türkiye'nin önde gelen entegratör firmalarından olan Data Market bünyesinde Senior Cloud Engineer olarak çalışıyorum.

Ek olarak, 2015 yılında Network Akademi bünyesinde Microsoft Certified Trainer (MCT) ünvanı ile Sistem ve Network Uzmanlık eğitimleri vermeye başladım. Sistem ve Network Uzmanlığı alanındaki eğitmenlik serüvenime Network Akademi bünyesinde devam etmekteyim.

YORUMLAR
Bu makaleye 5 yorum yapıldı.
Her türlü görüş ve önerilerinizi aşağıdaki yorum panelinden bırakabilir, kafanıza takılanları veya merak ettiklerinizi sorabilirsiniz.


750 karakter yazabilirsiniz.
Captcha
Güvenlik kodunu BÜYÜK harflerle giriniz.
* Yorumlar, onaylandıktan sonra yayınlanmaktadır.
* E-posta, yorum onay bildirimi için gereklidir. Yayınlanmaz.


30.01.2022 Fahrettin Usta
Merhabalar Fırat bey; Öncelikle paylaşımınız için teşekkür ederim. for /L %i in (1,1,254) do Ping -n 2 -w 250 10.25.1.%i C:\Users\firat.boyan\Desktop\ipaddresses.txt komutunu bat dosyası formatında çalıştırma imkanımız varmıdır? varsa nasıl yazmalıyız.

30.01.2022 Fırat Boyan
Merhaba Fahrettin, for /f "tokens1" %a in ('type "C:\Users\FIRATB\Desktop\ipaddresses.txt"') DO @ping -n 4 -w 250 %a komutu denersen çalışacaktır.


17.03.2020 Ebru Demiryürek
Bilgiler için teşekkürler.
25.12.2019 tuncay karaca
merhaba; makale oldukça faydalı Fırat bey. Bir sorum olacak FIND den önce ki karakter tam olarak ne dir?

25.12.2019 Fırat Boyan
Merhaba, FIND'den önceki karakter, alt gr ve Z'nin solundaki büyük küçük işratine aynı anda basılarak oluşturulan ve işereti. Pipeline olarak da geçer ve birden çok komutun ardışık biçimde işlemesine olanak sağlar.