Q: Linux 命令行,一键 ping 整个局域网和一键检测局域网中所有 IP 的 8080
Posted on 2025-12-10 08:11 三年三班王小朋 阅读(9) 评论(0) 收藏 举报任务 1:一键 ping 整个局域网(如 192.168.1.0/24)中的所有 IP 地址
方案 A:使用 ping(基础 Bash)
for i in {1..254}; do (ping -c1 -W1 192.168.1.$i >/dev/null && echo "192.168.1.$i is alive") & done; wait
方案 B:使用 fping(更快,需安装)
fping -a -g 192.168.1.0/24 2>/dev/null
方案 C:使用 nmap(推荐,结果清晰)
nmap -sn 192.168.1.0/24 -oG - | awk '/Up/{print $2 " is alive"}'
任务 2:一键检测局域网中所有 IP 的 8080 端口是否开放
方案 A:使用 Bash 内建 /dev/tcp
for i in {1..254}; do (ip=192.168.1.$i; timeout 1 bash -c "echo >/dev/tcp/$ip/8080" 2>/dev/null && echo "$ip:8080 open") & done; wait
方案 B:使用 netcat(nc)
for i in {1..254}; do (ip=192.168.1.$i; nc -z -w1 $ip 8080 && echo "$ip:8080 open") & done; wait
方案 C:使用 nmap(最可靠)
nmap -p 8080 --open -T4 192.168.1.0/24 -oG - | awk '/8080\/open/{print $2 ":8080 open"}'
方案 D:先 ping 通再扫 8080(减少无效探测)
for ip in $(nmap -sn 192.168.1.0/24 -oG - | awk '/Up/{print $2}'); do (nc -z -w1 $ip 8080 && echo "$ip:8080 open") & done; wait
安装依赖说明(如需)
-
安装 nmap(Debian/Ubuntu):
sudo apt install nmap -
安装 fping(Debian/Ubuntu):
sudo apt install fping -
安装 netcat(通常已预装,若无):
sudo apt install netcat-openbsd # 或 netcat-traditional
浙公网安备 33010602011771号