shell 局域网IP探活脚本

Linux Shell脚本是一种编程方式,它允许用户通过编写一系列命令和控制结构来自动化系统任务。Shell脚本通常以.sh为扩展名,使用诸如Bash、Zsh、Ksh等Shell解释器来执行。以下是一个简单的Shell脚本示例,该脚本用于展示如何遍历局域网的一个子网,并尝试ping每个IP地址以检测活动

复制代码
#!/bin/bash

# 设置要扫描的子网
SUBNET="192.168.1."
# 设置IP地址范围,例如,从1到254
for IP_SUFFIX in {1..254}
do
    # 构建完整的IP地址
    IP="$SUBNET$IP_SUFFIX"
    # 使用ping命令,仅发送一个包(-c 1),不显示详情(-q),并检查返回值
    PING_RESULT=$(ping -c 1 -q $IP 2>&1)
    # 检查ping的结果,如果成功则打印IP地址
    if [[ $? -eq 0 ]]; then
        echo "$IP is alive"
    fi
done

# 注意:在实际使用中,确保你有权限执行此类网络扫描,并且不会违反网络策略或法律。

bash如何使用这个脚本:

  1. 首先,你需要有权限在你的Linux系统上创建和执行脚本。

  2. 打开一个文本编辑器,复制上面的脚本内容并保存为一个文件,例如scan_lan.sh。

  3. 给予脚本执行权限: chmod +x scan_lan.sh

bash4. 运行脚本: ./scan_lan.sh

bash这个脚本会逐个尝试ping 192.168.1.1 到 192.168.1.254 之间的所有IP地址,并打印出能够响应的设备IP。请根据你的实际网络环境修改子网部分(SUBNET变量)。请注意,进行网络扫描应当遵守相关法律法规和组织的网络使用政策,确保你有合法合理的理由执行此类操作,并尽量避免在生产环境中造成不必要的干扰。

相关推荐
17(无规则自律)16 分钟前
【CSAPP 读书笔记】第一章:计算机系统漫游
linux·c语言·arm开发·嵌入式硬件·学习·ubuntu
李少兄19 分钟前
深入解析 Nginx 413 Request Entity Too Large 错误
运维·nginx
青主创享阁21 分钟前
玄晶引擎:基于多模态大模型的全流程AI自动化架构设计与落地实践
运维·人工智能·自动化
天才奇男子30 分钟前
LVS原理及部署
linux·运维·云原生·wpf·lvs·linux chrony
学习3人组32 分钟前
Docker run 挂载本地两个目录到容器内的写法(核心规则+实操示例)
运维·docker·容器
梁洪飞36 分钟前
内核启动卡死在Starting kernel ...,没有任何打印如何定位
linux·arm开发·嵌入式硬件·arm
321.。44 分钟前
深入理解 Linux 线程封装:从 pthread 到 C++ 面向对象实现
linux·开发语言·c++
EmbedLinX1 小时前
Linux内核之文件系统:从VFS到实际存储的运作机制
linux·服务器·c语言·c++
实心儿儿1 小时前
Linux —— 进程概念 - 初识进程
linux·运维·服务器
weixin_462446231 小时前
Linux/Mac 一键自动配置 JAVA_HOME 环境变量(含 JDK 完整性校验)
java·linux·macos