İç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, ICMP (Internet Control Message Protocol-Internet Kontrol Mesaj Protokolü) protokol komutudur. Internet Katmanında IP paketinin veri bölümünde çalışıp, sorunları haberleşen birimlere bildirerek bir geri besleme mekanizması oluşturur. ICMP genel olarak; TTL süresi dolduğu zaman paketin sahibine bildirim yapma, herhangi bir durumda yok edilen paket hakkında geribildirim sağlama, hata oluşumlarında geribildirim sağlama; paket, başka bir yoldan gideceği zaman geribildirim sağlama gibi görevler üstlenir. Sorun çözümü için sıkça kullanılan Ping ve Tracert komutları, ICMP Echo Request ve ICMP Echo Reply mesajları ile çalışır. Yani Ping işleminde; Ping'in, Ping atılan PC'ye geri yollanması, yani Echo yapan (Ping Atan) PC'ye Echo Reply yollaması gerekmektedir.
TCP/IP protokol takımında Internet Protokolü (IP), bilgisayarlar arasında veya ağ geçitlerinde hata raporlama, hata düzeltme ya da durum bildirme yeteneklerine sahip değildir. Connectionless (bağlantısız) bir protokol olan IP, Kullanıcı Veri bloğu Protokolü (UDP) üstünden iki uç nokta arasında bağlantı kurulup kurulmadığıyla ilgilenmez. Aşağıdaki komut yardımıyla Network ortamınızda belirleyeceğiniz bir IP bloğu üzerindeki tüm IP adreslerini tek seferde Ping'leyip, boşta olan IP adreslerini bulabilir ve dilerseniz bir dosyaya yazdırabilirsiniz.

1- Aşağıdaki döngü komutu, ör. 10.10.10.0 Network ID'sine ait olan tüm IP adreslerini tek tek Ping'leyecek, sonuçlarını ise benim belirlediğim bir dizin altındaki TXT dosyasına yazacaktır.

For /L %i in (1,1,254) do Ping -n 1 -w 250 10.10.0.%i>> c:\Users\fboyan\Documents\IPaddresses.txt

ip adresleri toplu ping atma

ip adresleri toplu ping atma

ip adresleri toplu ping atma

2- Aynı işlemi, Ping sonucunu bir dosyaya yazdırmadan sadece ekran çıktısı olarak alabilirsiniz.

For /L %i in (1,1,254) do Ping -n 1 -w 250 10.10.0.%i

ip adresleri toplu ping atma

3- Aynı işlemi, Ping sonucunun istatistik bilgilerini çekmeden ve bir dosyaya yazdırmadan, sadece yapılan Echo Request'lere dönen Echo Reply'ları listeleyebiliriz. FIND parametresi ise, filtreleme yapmak için kullanılmaktadır ve "Reply" ile Echo Request paketlerine dönen Echo Reply paketlerini görüntüler.

For /L %i in (1,1,254) do Ping -n 1 -w 250 10.10.0.%i | FIND /i "Reply"

ip adresleri toplu ping atma

Döngü komutunda kullanılan parametre detayları ise aşağıdaki gibidir.

• for:
Döngü komutudur. Ping işlemleri bir döngüye bağlı olarak ilerler.
• /L:
Loop parametresidir. for dögüsü, bu parametre ile tetiklenecektir.
• %i:
Bir değişken değeridir. "i" yerine başka bir değer de girilebilir. Buradaki değişken değeri, komut satırında belli noktalarda referans olarak kullanılır.
• (1,1,254):
Ping'lenecek IP Adresleri 1'den başlar, 1'er, 1'er ilerler ve 254'e kadar devam eder. Buradaki sayısal değerler, isteğe bağlı olarak değiştirilebilir.
• -n:
IP başına Ping'leme işleminin ne kadar tekrarlanacağını belirlediğimiz parametre. Parametre verilmezse, varsayılan olatak 32 bit'lik 4 paket yollayacaktır. -n parametresinden sonra bir sayı değeri belirterek, kaç tane 32 bit'lik Ping paketi yollacağımızı belirlemiş oluruz.
• -w:
Dönen her bir Echo (Ping) Reply paketinin milisaniye cinsinden Timeout süresini belirler.
• 10.10.0.%i:
Buradaki %i, (1,1,254) ile belirlediğiniz üçüncü bölümdeki 10.10.0.1-10.10.0.254 aralığındaki her bir IP adresine referans olacak kısı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 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 en önde gelen entegratör firması olan Data Market bünyesinde Senior Cloud Engineer olarak çalışıyorum. Ek olarak, 2015 yılında Network Akademi bünyesinde Sistem ve Network Uzmanlık eğitimleri vermeye başladım ve 2017 yılında da eğitmenlik tecrübemi, Microsft Certified Trainer (MCT) ünvanı ile taçlandırdım. Eğitmenlik serüvenime 2021 yılından beri Bilge Adam bünyesinde MCT ünvanı ile 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.