نوشتن اسکریپت Ping Sweep در بش (BASH) :: Mr Python | مستر پایتون

نوشتن اسکریپت Ping Sweep در بش (BASH)

  • ۷۰۴

نوشتن اسکریپت اسکن سیستم های LIVE در شبکه در بش (BASH)

 

درود به همه !

سلام دوستان . امروز اومدم یه اسکریپت خیلی باحال دیگه رو باهم برسی کنیم .

این اسکریپت رو با نام PING SWEEP میشناسنش . کارش اینه که میاد کل رنج آی پی های شبکه رو اسکن میکنه و آی پی های لایو و فعال رو توی شبکه شناسایی میکنه . (روش های بهتری هم غیر PING SWEEP هست )

این اسکریپت رو میخوایم با بش (BASH) بنویسیم .

خب بزارید یه توضیح بدیم که طرز کار اسکریپت چیه ؟ خب این اسکریپت از ابزار PING برای تشخیص لایو بودن آی پی ها در شبکه استفاده میکنه . همینطور که میدونید PING یکی از ابزار های پرکاربرد شبکه هست که معمولا برای عیب یابی دیوایس های شبکه ازش استفاده میکنن . طرز کار ابزار پینگ به این صورته که وقتی شما یه آی پی رو پینگ میکنید سیستم شما یه سری پکت ICMP میفرسته به سیستم هدف و سپس اگه سیستم هدف روشن باشه (همچنین ICMP رو بلاک نکرده باشه)  برای شما یه سری ریپلای هایی میفرسته که نشون میده اون آی پی زندس و داره به ما جواب میده . حالا ما از همین مکانیزم برای تشخیص فعال بودن آی پی ها استفاده میکنیم . یعنی کل رنج آی پی های شبکه رو دونه به دونه پینگ میکنیم هر کدوم جواب برای ما فرستادند یعنی فعالن .

 

خب بریم سراغ اسکریپت . یه فایل بش اسکریپت میسازیم و سورس زیر رو میریزیم داخلش :

 

#!/bin/bash
# MrPython.blog.ir
for host in $(seq 254)
do
    ping -c 1 192.168.1.$host | grep "bytes from" | cut -d " " -f4 | cut -d ":" -f1
done

 

همونطور که میبینید اسکریپت خیلی ساده ایه . اولین خط سورس که شبانگ رو زدیم که مشخص میکنه این اسکریپت با چه مفسری اجرا بشه . ما گفتیم با مفسر خود بش اجرا بشه . دومین خط هم که بماند ....

 

از سومین خط بخش اصلی اسکریپت شروع میشه . ما یه حلقه فور نوشتیم که اعداد ۱ تا ۲۵۴ رو هر بار میزاره به جای اکتت (بخش) آخر آی پی که من در زیر بخش آخر آی پی رو ایکس میزارم . خودمونی بگم این اعداد رو یکی یکی میزاره جای x 

192.168.1.x

 

و به این صورت هر کدوم از آی پی ها که جوابی برای ما بر میگردونه یعنی اون زندس و با ترکیبی از دستورات grep  و cut ، آی پی اون سیستم رو روی ترمینال نشون میدیم .

 

البته نکته اینجاس که اسکریپت بسته به پیکربندی های شبکه فرق میکنه . الان network id شبکه من 192.168.1.0 هستش شاید از شما مثلا 10.0.0.0 باشه یا ... و همچنین سابنت ماسک من 255.255.255.0 هستش (سابنت ماسک یه جورایی محدوده ی آی پی های شبکه رو مشخص میکنه) بنابراین فقط اکتت آخر آی پی تغییر میکنه . پس با توجه به شبکه خودتون اسکریپت رو میتونید تغییر بدید .

 

خب اینم از این اسکریپت

 

پست بعدی در مورد چی باشه ؟‌ اگه بحث خاصی مد نظرتونه که میخواید توی پست بعدی روش بحث کنیم داخل بخش نظرات این مطلب بگید  .

 

یا حق !

 

 

نظرات: (۰) هیچ نظری هنوز ثبت نشده است
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی