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变量)。请注意,进行网络扫描应当遵守相关法律法规和组织的网络使用政策,确保你有合法合理的理由执行此类操作,并尽量避免在生产环境中造成不必要的干扰。

相关推荐
~光~~2 小时前
【嵌入式linux学习】Cache 策略:Write-Through / Write-Back + Allocation
linux·学习·spring
峥无2 小时前
Linux NPTL线程:创建/终止/等待/分离/栈布局内核原理|线程下篇
linux·运维·线程
元岳数字人小元2 小时前
数字人私有化部署:企业级AI数字场景长效落地优选方案
运维·人工智能·开源·人机交互·交互
Thneonl3 小时前
全集群钟差 300 毫秒会发生什么:证书悄悄过期,日志倒流
运维·后端
是jin奥3 小时前
Ubuntu 访问 Windows 共享目录
linux·运维·ubuntu
Gauss松鼠会3 小时前
【GaussDB】破除gaussdb ugin索引支持中文模糊查询的迷思-字符序
java·运维·服务器·网络·数据库·gaussdb·经验总结
科技象限3 小时前
数据防泄密系统怎么选?看它怎么把几道防线叠成网
运维·安全·网络安全·安企神
Mr_韩3 小时前
子网路由实战:无需公网 IP,异地直接访问家庭内网全部设备
运维·网络·物联网·nas
星恒随风3 小时前
Linux基础IO万字详解:从文件描述符fd到重定向、FILE缓冲机制及MiniShell升级
linux·运维·笔记·学习·状态模式