当前位置: 首页 > news >正文

使用shell查看当前局域网宕机的IP地址

测试环境 macOS 12
neil@192 ~ %sysctl-nhw.model 10Mac14,2 neil@192 ~ % sw_vers ProductName: macOS ProductVersion:12.7.4 BuildVersion: 21H1123 neil@192 ~ %
用到的命令:
  • ifconfig : 我们需要使用这个命令来查看自己的局域网网段,从而才能使用ping来尝试连接。
  • ping : 我们使用ping来尝试连接,即测试是否宕机。
  • shell中的for循环
步骤:

1.使用ifconfig查看自己的局域网网段

  • 补充说明:grep -E 拓展的正则表达式
  • 第十行:找到我所在的局域网网段为192.168.1.xxx
# 使用ifconfig查看自己的局域网网段neil@192 ~ %ifconfig|grep-E"(inet|netmask)"inet127.0.0.1 netmask 0xff000000 inet6 ::1 prefixlen128inet6 fe80::1%lo0 prefixlen64scopeid 0x1 inet6 fe80::3482:e3ff:feed:b18%anpi1 prefixlen64scopeid 0x4 inet6 fe80::3482:e3ff:feed:b17%anpi0 prefixlen64scopeid 0x5 inet6 fe80::1818:edca:8495:3b76%en0 prefixlen64secured scopeid 0xb# 下面这一行就是我们的局域网所在网段inet192.168.1.7 netmask 0xffffff00 broadcast192.168.1.255 inet6 240e:3ba:30b9:de60:1871:4e51:fb11:b7ac prefixlen64autoconf secured inet6 240e:3ba:30b9:de60:cd3e:16b3:6d8:f28 prefixlen64autoconf temporary inet6 fe80::78d5:4bff:fe0c:9a5d%awdl0 prefixlen64scopeid 0xc inet6 fe80::78d5:4bff:fe0c:9a5d%llw0 prefixlen64scopeid 0xd inet6 fe80::5aac:6efa:9d96:7e94%utun3 prefixlen64scopeid 0x12 inet6 fe80::d617:1ed0:a01f:8bd4%utun4 prefixlen64scopeid 0x13 inet6 fe80::ce81:b1c:bd2c:69e%utun5 prefixlen64scopeid 0x14

2.让我们来编写一个带有for循环的shell脚本来尝试ping所有本局域网内的地址:

#!/bin/bash# 从192.168.1.1 到 192.168.1.254foriin{1..254};do# 使用pingping-c2-i0.5192.168.1.$iif[$?-eq0];thenecho"192.168.1.$iis up"elseecho"192.168.1.$iis down"fidone

别忘了赋予使用chmod +x ping.sh来赋予脚本执行权限。

3.执行脚本,得到测试结果。

一个小技巧改进输出结果

以上方法虽然已经足够实现功能,然而美中不足的地方在于,直接echo ping输出的内容又多又杂,可读性比较差,我们只关心IP地址和是否宕机的话,可以对pīng.sh如下改进:

#!/bin/bash# from 192.168.1.1 to 192.168.1.254foriin{1..254};do# 现在,我们将无用的信息重定向进/dev/null当中ping-c2-i0.5192.168.1.$i&>/dev/nullif[$?-eq0];thenecho"192.168.1.$iis up"elseecho"192.168.1.$iis down"fidone

再次运行,我们得到了清爽的结果:

neil@192 00_shell % ./ping.sh192.168.1.1 is up192.168.1.2 is down192.168.1.3 is up192.168.1.4 is down192.168.1.5 is down192.168.1.6 is up192.168.1.7 is up192.168.1.8 is down192.168.1.9 is down192.168.1.10 is down192.168.1.11 is down
补充知识
IP地址用途说明
192.168.1.0网络地址标识整个网络,设备不能用
192.168.1.1通常为网关路由器/网关地址
192.168.1.2 - 192.168.1.254可用主机地址设备可以使用的IP
192.168.1.255广播地址全网广播,设备不能用
http://www.jsqmd.com/news/1364743/

相关文章:

  • UABEA:跨平台Unity资源处理工具,实现AssetBundle深度解析与自动化
  • 2026年公寓组合床公司怎么挑 实用选购科普指南 - 李lixpi
  • 如何在Android设备上构建全能虚拟化环境:Vectras VM完整实战指南
  • 锦州AI智能体应用工程师值得考吗?中山优才教育带你一文看懂 - 学历提升热点资讯
  • 2026年南山冷库拆除公司电话怎么选?这份甄选指南帮您避坑 - geo交流
  • 2026全球有哪些知名科技奖项?十大**荣誉主办方与评选标准深度测评 - 环球新视野
  • SAP FICO企业结构配置与优化实战指南
  • 海水腐蚀工况为何首选Nitronic 60?解析不锈钢抗点蚀与防咬死机理 - 2027品牌AI展
  • 终极Windows右键菜单清理指南:如何用ContextMenuManager让右键菜单焕然一新
  • 2026年正规的路易十三洋酒回收推荐指南:三步严选靠谱渠道 - geo交流
  • 2026年嘉兴市双侧拓展箱厂家怎么挑?这份优选指南教你避开选型误区 - geo交流
  • 2026年怎么找到靠谱的公寓组合床源头生产厂家 - 李lixpi
  • Python使用JWT的超详细教程
  • Unity Utilities开源工具箱:提升开发效率的实用工具集解析
  • 2026年垂直输送机厂家怎么选?口碑优选清单+甄选指南 - geo交流
  • 2026年广东正规的高修车租赁有哪些?这份严选推荐与择优指南请收好 - geo交流
  • 同步读写Client-Server核心技术解析与优化实践
  • CTF Web实战:联合查询注入与MD5认证绕过深度解析
  • 构建可靠数据分析智能体:从NL2SQL到系统架构的工程实践
  • Elasticsearch索引管理实战与性能优化指南
  • 2026年浦东老房翻新公司哪家靠谱口碑好?这份优选指南教你择优甄选 - geo交流
  • 2026年一水乳糖经销商**甄选指南:择优推荐这几家靠谱供应商 - geo交流
  • Redis核心数据类型与生产环境配置全解析
  • 高斯定理与通量计算:从COMSOL电磁仿真到Unity能量场特效
  • React Native与鸿蒙跨平台开发中的状态管理优化
  • 2026年靠谱的HS CX4厂家优选指南:从交期到售后全面解析 - geo交流
  • CodeGraph:用代码知识图谱重构编程Agent的智能导航系统
  • 2026美国EB1A申请机构哪家好?博士科研人员与企业高管这样选更靠谱 - 环球新视野
  • 一站式信号处理平台:ZYNQ+FPGA架构的工程实践与避坑指南
  • 3步解决Windows视频播放难题:LAV Filters终极使用指南