一個腳本來 ping 一組 IP 並僅返回線上資訊?

一個腳本來 ping 一組 IP 並僅返回線上資訊?

我需要一個腳本來 ping 一組 ip 並返回線上 IP,例如它會回顯 10.10.10.10上線

10.10.10.11上線

10.10.10.15上線

無需使用任何軟體包或第三方實用程式!

有什麼幫助嗎?

答案1

不需要腳本。地圖安裝nmap可以為你做。

例如,要掃描 10.10.10.0/24 網絡,請執行下列操作

nmap -sn 10.10.10.0/24

這將根據對 ICMP 回顯請求(稱為「ping」)的回應來報告主機正在執行。輸出範例:

Starting Nmap 5.21 ( http://nmap.org ) at 2014-01-30 00:40 CET
Nmap scan report for 10.10.10.1
Host is up (0.0061s latency).
Nmap scan report for 10.10.10.2
Host is up (0.00071s latency).
Nmap scan report for android (10.10.10.112)
Host is up (0.0087s latency).
Nmap scan report for laptop (10.10.10.134)
Host is up (0.00037s latency).
Nmap scan report for 10.10.10.151
Host is up (0.00094s latency).
Nmap scan report for 10.10.10.203
Host is up (0.00060s latency).
Nmap done: 256 IP addresses (6 hosts up) scanned in 3.41 seconds

答案2

下面的腳本將在子網路 ips 中循環並僅傳回 online 的結果:

#!/bin/bash

is_alive_ping()
{
  ping -c 1 $1 > /dev/null
  [ $? -eq 0 ] && echo Node with IP: $i is Online.
}

for i in 10.1.1.{1..255} 
do
is_alive_ping $i & disown
done

注意更改 10.1.1。對於您的子網,1..255 告訴腳本從 10.1.1.1 開始並循環告訴 10.1.1.255

執行:

./ping_scan.sh

相關內容