วันเสาร์ที่ 12 สิงหาคม พ.ศ. 2566

Scan Ip ง่ายๆ ด้วย shell,python

 ในเครื่องจิ๋วๆ อาจจะไม่มี Tool อะไร มาก ใช้ shell

#!/bin/sh

echo "Scanning network 192.168.1.1/24"

for i in $(seq 1 254); do

  host="192.168.1.$i"

  ping -c 1 -t 100 $host > /dev/null 2>&1

  if [ $? -eq 0 ]; then

    echo "$host is up"

  fi

done

echo "Scan complete"

ใน Windows ใช้ .bat
@echo off
echo Scanning network 192.168.1.1/24

for /l %%i in (1,1,254) do (
  ping -n 1 -w 100 192.168.1.%%i > nul
  if %errorlevel% equ 0 echo 192.168.1.%%i is up
)

echo Scan complete

ที่จะลงได้ ใช้ python อาจจะง่ายสุด

from multiprocessing.dummy import Pool

import subprocess


def ping(host):

    command = ['ping', '-c', '1', '-t', '100', host]  # 100 ms timeout

    if subprocess.call(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE) == 0:

        print(host, 'is up')


def scan_host(i):

    host = '192.168.1.' + str(i)

    ping(host)


def scan_network(network):

    print('Scanning network', network)

    pool = Pool(50)  # 50 concurrent threads

    pool.map(scan_host, range(1, 255))

    pool.close()

    pool.join()


scan_network('192.168.1.1/24')


ไม่มีความคิดเห็น:

แสดงความคิดเห็น