网络连通性测试
ping
在Linux上,你可以使用Shell脚本编写一个for循环来ping一个网段的地址。下面是一个简单的示例:
#!/bin/bashsubnet="192.168.0"for ((i=1; i<=255; i++)); doip="$subnet.$i"ping -c 1 -W 1 $ip >/dev/null 2>&1if [ $? -eq 0 ]; thenecho "$ip is reachable."elseecho "$ip is unreachable."fi
done
解释一下上述脚本的内容:
subnet变量指定了目标网段,这里以 “192.168.0” 为例。- 使用 for 循环遍历 1 到 255 之间的数字,形成完整的 IP 地址。
- 在循环内部,使用
ping命令对每个 IP 地址进行一次 ping 测试。 -c 1参数表示只发送一个 ICMP 回显请求包,-W 1参数表示等待 1 秒钟的超时时间。/dev/null 2>&1用于将ping命令的输出和错误信息重定向到空设备,这样不会在终端显示。- 检查
ping命令的退出状态,如果为 0 表示目标地址可达,输出 “is reachable.”,否则输出 “is unreachable.”。
你可以根据需要修改脚本中的目标网段和其他参数。将上述脚本保存为一个文件(例如 ping_subnet.sh),然后在终端中运行 bash ping_subnet.sh 执行脚本。它将循环ping指定网段内的地址,并显示每个地址的可达性。
telnet
在Linux上,你可以使用Shell脚本编写一个for循环来telnet一个网段的地址并检查是否通。下面是一个示例:
#!/bin/bashsubnet="192.168.0"for ((i=1; i<=255; i++)); doip="$subnet.$i"timeout 1 telnet $ip 22 >/dev/null 2>&1if [ $? -eq 0 ]; thenecho "$ip is reachable."elseecho "$ip is unreachable."fi
done
上述脚本的功能类似前面的ping脚本,但这里使用telnet命令来测试目标地址的可达性。脚本尝试在每个IP地址的22端口上进行telnet连接(这里假设使用SSH连接),并设置1秒钟的超时时间。
subnet变量指定了目标网段,例如 “192.168.0”。- 使用for循环遍历1到255之间的数字,形成完整的IP地址。
- 在循环内部,使用
timeout命令来限制telnet命令的执行时间,避免长时间等待。 - telnet命令的返回状态用于判断目标地址的可达性,如果返回状态为0,则表示连接成功,输出 “is reachable.”,否则输出 “is unreachable.”。
你可以根据需要修改脚本中的目标网段和端口号。将脚本保存为一个文件(例如telnet_subnet.sh),然后在终端中运行 bash telnet_subnet.sh 执行脚本。它将循环telnet指定网段内的地址,并显示每个地址的可达性。
打印
以下是将联通和不通的地址分别打印到两个文本文件的修改示例:
#!/bin/bashsubnet="192.168.0"reachable_file="reachable.txt"
unreachable_file="unreachable.txt"# 清空文本文件
> "$reachable_file"
> "$unreachable_file"for ((i=1; i<=255; i++)); doip="$subnet.$i"timeout 1 telnet $ip 22 >/dev/null 2>&1if [ $? -eq 0 ]; thenecho "$ip is reachable." >> "$reachable_file"elseecho "$ip is unreachable." >> "$unreachable_file"fi
done
在上述脚本中,我们添加了两个变量 reachable_file 和 unreachable_file,用于指定联通地址和不通地址的输出文件名。
reachable_file变量指定了联通地址的输出文件名,例如 “reachable.txt”。unreachable_file变量指定了不通地址的输出文件名,例如 “unreachable.txt”。
在循环中,我们通过使用重定向 >> 将结果追加到相应的文件中。如果地址联通,则将结果追加到 reachable.txt 文件中;如果地址不通,则将结果追加到 unreachable.txt 文件中。
脚本运行后,它将生成两个文本文件,其中一个包含联通地址的列表,另一个包含不通地址的列表。你可以根据需要修改输出文件的名称和路径。
请确保脚本所在的目录有写入文件的权限,或者根据需要修改文件的路径以确保正确写入文件。
相关文章:
网络连通性测试
ping 在Linux上,你可以使用Shell脚本编写一个for循环来ping一个网段的地址。下面是一个简单的示例: #!/bin/bashsubnet"192.168.0"for ((i1; i<255; i)); doip"$subnet.$i"ping -c 1 -W 1 $ip >/dev/null 2>&1if [ $…...
AntDB-S流式数据库体验
本文作者:彭冲老师,上一篇彭老师体验了亚信刚发布的社区版AntDB-T数据库,文章如下: AntDB-T交易型数据库体验 本文继续体验AntDB-S流式数据库的,AntDB-S目前还未开放社区版,可以联系AntDB小助手进行体验。…...
CentOS 和 Windows 上添加和删除路由
在 CentOS 上添加和删除路由 要在 CentOS 上添加和删除路由,你可以使用 ip 命令或修改网络配置文件。以下是使用 ip 命令的方法: 添加路由: ip route add <目标网络> via <网关> dev <接口>例如: ip route add 192.168.10.0/24 via 192.168.1.1 dev eth…...
2023年电大秋季招生截止日期 什么时候开始报名
2023年电大网上报名时间为3月份和9月份截止报考,电大每年可以报考两次,春季开始报名时间为12月份左右开始,秋季报名时间预计在6月份左右开始。 2023电大网上报名时间是什么时候 电大报名分为春季和秋季两个季节,一般春季招生时间为…...
滑动窗口问题
给定一个大小为 n≤106 的数组。 有一个大小为 k的滑动窗口,它从数组的最左边移动到最右边。 你只能在窗口中看到 k 个数字。 每次滑动窗口向右移动一个位置。 以下是一个例子: 该数组为 [1 3 -1 -3 5 3 6 7],k为 3。 窗口位置最小值最…...
电子合同网页预览盖章效果实现
电子合同在现在应用越来越广,需求也就随之产生。 本篇文章主要记录两种网页盖章效果实现方式,自己记录一下, 也给需要的人提供一点思路和帮助。 效果 目录 JqueryCSS实现 原理 1.设置印章图片并隐藏 2.标记盖章位置元素 3.获取目标元素位…...
棋盘覆盖问题
文章目录 棋盘覆盖程序设计程序分析棋盘覆盖 【问题描述】 在一个2k x 2k ( 即:2^k x 2^k )个方格组成的棋盘中,恰有一个方格与其他方格不同,称该方格为一特殊方格,且称该棋盘为一特殊棋盘。在棋盘覆盖问题中,要用图示的4种不同形态的L型骨牌覆盖给定的特殊棋盘上除特殊方…...
[CISCN2023]unzip
[CISCN2023]unzip 环境搭建 1.html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title> </head> <body><form method"post" action"1.php" en…...
基于Html5的在线资料库的设计与实现(asp.NET,SQLServer)
在线资料库系统采用.NET开发平台进行开发,开发工具采用Microsoft Visual Studio 2010集成开发环境,后台编程语言采用C#编程语言来进行编程开发,数据库我们采用当下流行的SQL Server 2008数据库管理系统来存放平台中的数据信息,整个…...
【Vue】二:Vue核心处理---计算属性 监视属性
文章目录 1.计算属性示例2. 监听属性3.补充 1.计算属性示例 实际上计算属性与methods中定义方法基本上没有什么区别,只是计算属性基于响应式依赖缓存,只要数据没有发生改变,计算属性从缓存中取值,只有当数据发送改变,才…...
【Web服务器集群】Nginx网站服务
文章目录 一、Nginx 概述1.什么是 Nginx2.Nginx 的特点3.Nginx 应用场景 二、Nginx 服务基础1.编译安装 Nginx 服务1.1 布置环境1.2 安装依赖包1.3 创建运行用户、组1.4 编译安装 2.Nginx 的运行控制2.1 检查配置文件2.2 启动、停止 Nginx2.3 日志分割以及升级 Nginx 服务2.4 添…...
开始第一个vue项目,环境搭建+html项目运行
【用vue.js,通过script标签导入】 1. 搭建vue脚手架 安装node js安装cnpm(淘宝源) 【vue】在windows中搭建vue开发环境(全网最详细)_vue环境搭建_一起来学吧的博客-CSDN博客2a 2. 官网下载地址: 安装 …...
Redis 的数据类型和命令帮助
文章结构 Redis 数据类型1. Redis全局命令(跟key有关系,而跟value无关)2. StringsGetting and setting StringsManaging counters 3. Lists(L)Basic commandsBlocking commands 4. Sets(S)Basic commands 5. Hashes(H)Basic commands 6. Sort…...
【C++11】智能指针
什么是智能指针: 智能指针是一个类,用来存储指向动态分配对象的指针,负责自动释放动态分配的对象,防止堆内存泄漏。动态分配的资源,交给一个类对象去管理,当类对象声明周期结束时,自动调用析构函…...
三、Go的常用命令以及Go的执行原理
Go的执行原理以及Go的命令 一、Go的源码文件 Go 的源码文件分类: 如上图,分为三类: 1、命令源码文件: 声明自己属于 main 代码包、包含无参数声明和结果声明的 main 函数。 命令源码文件被安装以后,GOPATH 如果…...
ESP32 CAM 模块和 OpenCV 的二维码扫描器
概述 该项目是关于使用 ESP32 CAM 模块和 OpenCV 设计的二维码扫描仪或阅读器。我们将使用 ESP32 摄像头模块和 python 库开发一个程序和设备,我们可以用它来扫描二维码。使用 ESP32 CAM,项目变得更便宜。 QR 码现在已经成为我们日常生活的一部分,因为我们几乎在任何地方都…...
多链路传输技术在火山引擎 RTC 的探索和实践
动手点关注 干货不迷路 传统的数据传输方式大多是利用一个链路、选择设备的默认网卡进行传输,使用这种方式实现实时音视频通话时,如果默认网络出现问题(如断网、弱网等),用户的通信就会发生中断或者卡顿,影…...
在Flask中构建API接口
重定向行为 斜杠 以下两个路由的不同之处在于是否使用尾部的斜杠。 第一个路由的URL尾部有一个斜杠,看起来就像一个文件夹,访问一个没有斜杠结尾的URL时,Flask会自动进行重定向,在结尾加上一个斜杠。 第二个路由的URL没有尾部…...
Postgres vs MySQL
主要区别及示例 简而言之,Postgres 和 MySQL 之间的主要区别实际上归结为主索引和辅助索引的实现方式以及数据的存储和更新方式。 让我们进一步探讨这个问题。 但首先... 基础知识 索引是一种数据结构(主要是 B 树),允许通过…...
02.IP地址以及静态路由配置
文章目录 IP地址IP地址分类IPV4地址(32位)IPV4地址的分类特殊IP地址 VLSM --- 可变长子网掩码(子网划分)CLDR --- 无类域间路由(汇总)配置静态路由的基础配置静态路由的拓展配置 IP地址 IP地址分类 IPV4(32位二进制构成) — 点分十进制IPV6(128位二进制构成) — 冒分十六进制…...
在github上快速接入taotoken大模型api的python调用教程
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在GitHub上快速接入Taotoken大模型API的Python调用教程 对于希望快速集成大模型能力的开发者而言,找到一个统一、便捷的…...
将Taotoken作为统一AI网关整合进企业现有微服务架构的实践思路
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 将Taotoken作为统一AI网关整合进企业现有微服务架构的实践思路 在构建以AI能力驱动的现代应用时,中型及以上的企业常面…...
Mapbox Studio Classic核心功能解析:CartoCSS与矢量瓦片技术详解
Mapbox Studio Classic核心功能解析:CartoCSS与矢量瓦片技术详解 【免费下载链接】mapbox-studio-classic 项目地址: https://gitcode.com/gh_mirrors/ma/mapbox-studio-classic Mapbox Studio Classic是一款强大的桌面地图设计工具,专为创建专业…...
ChatGPT自动回复失效真相:微信API接口变更后,必须重写的4段核心Prompt代码(含防封逻辑)
更多请点击: https://intelliparadigm.com 第一章:ChatGPT公众号运营技巧 在微信生态中,将ChatGPT能力深度融入公众号运营,需兼顾合规性、用户体验与自动化效率。微信官方明确禁止直接调用外部AI接口响应用户消息(如透…...
CVE-2026-35397深度解析:Jupyter Server路径遍历漏洞,CVSS 8.8高危威胁数据科学全生态
一、引言:数据科学基础设施的"心脏出血" Jupyter生态是全球数据科学与AI开发领域的事实标准,据Stack Overflow 2026年开发者调查显示,超过87%的数据科学家和AI工程师日常使用Jupyter Notebook/Lab进行代码开发、数据分析和模型训练…...
UI-TARS Desktop 深度解析:字节跳动 34K Star 的多模态 AI Agent 栈
🖥️ UI-TARS Desktop 深度解析:字节跳动 34K Star 的多模态 AI Agent 栈 字节跳动 Bytedance 出品 | 34.3K GitHub Stars | Apache 2.0 | 超越 Claude Computer Use 🔥 前言:当 AI 学会操作电脑 2025 年 1 月,字节跳…...
中文分词与词频统计全流程实战 | 全网独家复现,Python零基础落地篇 引入jieba分词优化+多策略词频统计,助力文本挖掘、舆情分析、学术研究高效落地
目录 一、核心前言(明确价值,避开踩坑) 1.1 实战意义 1.2 技术选型说明 1.3 前置准备(零基础必看) 二、核心原理(极简理解,无需深入) 2.1 中文分词原理 2.2 词频统计原理 三、全流程代码实现(零基础可复制,全程注释) 3.1 工程化目录结构(必看,避免路径错…...
WarcraftHelper:魔兽争霸3终极优化指南 - 5大方案让你的经典游戏焕发新生
WarcraftHelper:魔兽争霸3终极优化指南 - 5大方案让你的经典游戏焕发新生 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 你是否还在为《魔…...
Taotoken用量看板与成本分析功能,如何帮助团队控制大模型支出
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Taotoken用量看板与成本分析功能,如何帮助团队控制大模型支出 对于任何将大模型能力集成到产品开发流程中的团队而言&a…...
保姆级教程:用NumPy手搓一个逻辑回归,搞定西瓜书3.0α数据集分类
从零实现逻辑回归:用NumPy解析西瓜数据集分类问题在机器学习入门阶段,理解算法原理与代码实现之间的桥梁至关重要。本文将以周志华《机器学习》中的西瓜数据集3.0α为例,带你用纯NumPy实现逻辑回归模型,避开框架封装,直…...
