网络连通性批量检测工具
一、背景介绍
企业网络安全防护中,都会要求配置物理网络防火墙以及主机防火墙,加强对网络安全的防护。云改数转之际,多系统上云过程中都会申请开通大量各类网络配置,针对这些复杂且庞大的网络策略开通配置,那么在网络配置前、后会有一些痛点:
1、策略配置前,针对无需处理的策略(源和目的网络已经联通),没有手段提前批量探测一下,不仅工作量增加,经常导致策略重复添加。
2、策略配置后,运维人员处理完成,不能及时便捷的探测网络连通性,无法及时验证开通效果,给业务上云工作带来很大的困扰,急需一个便利的批量端口探测工具。
3、telnet作为网络端口连通性探测工具,针对已开通防火墙网络权限的探测会很快返回,但对于网络不通的,会等待60s才能超时返回,效率太低。
二、工具描述
1、针对telnet自身短板(网络超时需要60s返回结果),用c语言重新编译telnet,加入超时闹钟alarm自定义设置(目前设置5s超时返回),大大提升探测效率,对应工具名“telnetplus”
2、针对业务申请的一对多、多对多和多对一各种的网络策略,规定策略内容填写梳理成一条一条IP+PORT记录,格式为1.1.1.1|22(IP|PORT) ,对应文件名“telnet.list”
3、通过调用telnetplus命令,遍历IP+PORT,并将结果进行分类汇总,输出到指定文件,程序名“telnetconn.sh”
三、实现过程
1、telnet改版的工具,已放到下载资源中
https://download.csdn.net/download/vincent0920/88689118
2、将telnetplus命令文件拷贝到/usr/bin目录下
3、将telnetconn.sh和telnet.list拷贝到同一个目录下面
telnet.list
#hosts
192.168.163.6|22
192.168.163.7|22
192.168.163.8|1521
192.168.163.9|22
192.168.163.10|3306
192.168.163.134|3306
telnetconn.sh
#!/bin/bash
#########################Detail#############################
# 1. This shell is used to check destnation ip + port can #
# connect usually. #
# 2. Three result file will be created: telnet_succ.log & #
# telnet_fail.log & telnet_tmout.log #
# 3. Input file telnet_list.txt's format: 10.10.10.10|22 #
############################################################RESDIR=result
TELNET_LIST=$1
TMOUT=5###check result dir exist###
if [ ! -d $RESDIR ];thenmkdir $RESDIR
fi###bak result file###
mv $RESDIR/telnetfull_result.log $RESDIR/telnetfull_result.log`date +%Y%m%d`
mv $RESDIR/telnet_result.log $RESDIR/telnet_result.log`date +%Y%m%d`
mv $RESDIR/telnet_fail.log $RESDIR/telnet_fail.log`date +%Y%m%d`
mv $RESDIR/telnet_succ.log $RESDIR/telnet_succ.log`date +%Y%m%d`
mv $RESDIR/telnet_tmout.log $RESDIR/telnet_tmout.log`date +%Y%m%d`
mv $RESDIR/telnet_refused.log $RESDIR/telnet_refused.log`date +%Y%m%d`
touch $RESDIR/telnet_result.log
touch $RESDIR/telnetfull_result.log
touch $RESDIR/telnet_fail.log
touch $RESDIR/telnet_succ.log
touch $RESDIR/telnet_tmout.log
touch $RESDIR/telnet_refused.log###begin telnetfull###
for line in `cat $TELNET_LIST |grep -v ^# |grep -v ^$ `
do###get remote ip#########ip=`echo $line | awk 'BEGIN{FS="|"} {print $1}'` ###get remote port####### port=`echo $line | awk 'BEGIN{FS="|"} {print $2}'`###get local ip##########local_ip=`ifconfig | grep "134." | awk '{print $2}' | tr -d "addr:"`###begin telnet###telnetfull $ip $port $TMOUT >> $RESDIR/telnetfull_result.log###find succ record into telnet_succ.log#####res=`tail -1 $RESDIR/telnetfull_result.log|awk '{print $5}'`if [ $res = failed ];thennohup telnet $ip $port >> $RESDIR/telnet_result.log 2>&1nohup telnet $ip $port > $RESDIR/telnet_tmp.log 2>&1resf=`grep telnet $RESDIR/telnet_tmp.log|awk '{print $7}'`echo $resfif [ $resf = refused ];thenecho "local_ip:$local_ip remote_ip:$ip | $port | refused" >> $RESDIR/telnet_refused.log elseecho "local_ip:$local_ip remote_ip:$ip | $port | No route to host" >> $RESDIR/telnet_fail.logfielif [ $res = success ];thenecho "local_ip:$local_ip remote_ip:$ip | $port | success" >> $RESDIR/telnet_succ.logelif [ $res = timeout ];thenecho "local_ip:$local_ip remote_ip:$ip | $port | timeout" >> $RESDIR/telnet_tmout.log fidone
4、执行命令sh telnetconn.sh telnet.list
执行结束后,在result子目录下面生成七个结果文档:

最后检查telnetfull_result.log:所有telnet遍历结果

最后,如果觉得本文对你有帮助,欢迎点赞、收藏、评论!
There are many things that can not be broken!
相关文章:
网络连通性批量检测工具
一、背景介绍 企业网络安全防护中,都会要求配置物理网络防火墙以及主机防火墙,加强对网络安全的防护。云改数转之际,多系统上云过程中都会申请开通大量各类网络配置,针对这些复杂且庞大的网络策略开通配置,那么在网络配…...
2023高级人工智能期末总结
1、人工智能概念的一般描述 人工智能是那些与人的思维相关的活动,诸如决策、问题求解和学习等的自动化; 人工智能是一种计算机能够思维,使机器具有智力的激动人心的新尝试; 人工智能是研究如何让计算机做现阶段只有人才能做得好的…...
Oracle数据库迁移所有文件到新挂载磁盘路径
主要步骤: 1、停掉服务, 2、关闭数据库shutdown immediate 3、移动数据文件到新的位置。 4、启动到mount状态,如果也移动了ctl,需要启动到nomount下,生成参数文件。 5、alter database rename 文件名 to 新位置&a…...
基于YOLOv7算法的高精度实时安全背心目标检测识别系统(PyTorch+Pyside6+YOLOv7)
摘要:基于YOLOv7算法的高精度实时安全背心目标检测系统可用于日常生活中检测与定位安全背心,此系统可完成对输入图片、视频、文件夹以及摄像头方式的目标检测与识别,同时本系统还支持检测结果可视化与导出。本系统采用YOLOv7目标检测算法来训…...
Mac——VsCode使用格式化工具进行整理和格式化
1. 打开VSCode编辑器。 2. 点击左下角⚙️图标,打开设置 3. 进入设置后,你会看到一个搜索框,在搜索框中输入 format on save 来查找相关设置项。 4. 在设置列表中找到 Editor: Format On Save 选项,勾选它以启用在保存文件时自动格…...
73.乐理基础-打拍子-还原号、临时变音记号在简谱中的规则
上一个内容:72.乐理基础-打拍子-加延音线的节奏型-CSDN博客 下图中1-13,就是四几拍中所有可能出现的节奏型,以及它们的组合方式,需要练习,可以买一本视唱书去练习,搜乐谱练习,自己写节奏型根据…...
一款超酷的一体化网站测试工具:Web-Check
Web-Check 是一款功能强大的一体化工具,用于发现网站/主机的相关信息。用于检查网页的工具,用于确保网页的正确性和可访问性。它可以帮助开发人员和网站管理员检测网页中的错误和问题,并提供修复建议。 它只需要输入一个网站就可以查看一个网…...
MockServer简单使用记录
下载源码 下载git源码:git clone https://github.com/mock-server/mockserver.git 通过执行文件编译成jar包 ./mvnw clean package 可能会报错。 启动命令 java -jar ./mockserver-netty-jar-with-dependencies.jar -serverPort 1080 -proxyRemotePort 80 -pro…...
AI+金融:大模型引爆金融科技革命
仅供机构投资者使用 证券研究报告|行业深度研究报告 AI金融:大模型引爆金融科技革命 “AI应用”系列(二) 华西计算机团队 2023年7月28日 分析师:刘泽晶 联系人:刘波 SAC NO:S1120520020002 邮箱:…...
数据库(二)实验一:MySQL数据库的C/S模式部署
实验要求 在云服务器上启动两个实例Server和Client,并实现两个实例之间的免密ssh登录。在Server和Client上分别安装MySQL,在Server上创建数据库和用户,在Client上远程连接Server的数据库。 实验内容 创建两个云服务器实例 在腾讯云购买两个…...
RLHF几大常用框架实践对比(trlx、deepspeedchat、colossalaichat)
原文:RLHF几大常用框架实践对比(trlx、deepspeedchat、colossalaichat) - 知乎 目录 收起 一、RLHF的作用 二、实践效果 三、怎么做 1、框架 2、算法 3、数据 4、调参 一、RLHF的作用 从InstructGPT的论文中看,RLHF目的…...
Oracle/Myql批量操作
前言:在oracle中使用insert into values (),(),()多种方式都不能成功,记录正确的批量方法 注意:oracle有自己实现批量的方法,mysql适用的,oracle不一定适用 <insert id"insertTaskImportOpen" parameterType"l…...
关于一个web站点的欢迎页面
- 什么是一个web站点的欢迎页面? - 对于一个webapp来说,我们是可以设置它的欢迎页面的。 - 设置了欢迎页面之后,当你访问这个webapp的时候,或者访问这个web站点的时候,没有指定任何“资源路径”,这个时候…...
1050. 鸣人的影分身(dp划分)
题目: 1050. 鸣人的影分身 - AcWing题库 输入样例: 1 7 3输出样例: 8 思路: 代码: #include<iostream> using namespace std; const int N20; int f[N][N]; int main() {int T,m,n;cin>>T;while(T--)…...
51单片机点灯入门教程——2. 呼吸灯效果
基本说明 本章使用芯片:STC8H8K64U核心板 芯片手册:点此查看 Keil 开发环境配置:点此查看 本章学习内容:利用库函数,开发C程序,实现呼吸灯效果。 代码实例 需求:使用串口来控制呼吸灯效果&…...
shell脚本实现九九乘法表
9*9乘法表 判断服务是否开启 1.查看80端口是否被监听 [rootlocalhost ~]# ss -an | grep 80 tcp LISTEN 0 128 *:80 *:* 2.查看80端口/httpd服务是否开启 [rootlocalhost ~]# n…...
CAAC无人机操作证考证报名流程及白底证件照片制作方法
在这个无人机技术日新月异的时代,拥有一张CAAC民用无人机操作证不仅意味着你能够合法地在天空翱翔,也象征着你对飞行技术的尊重和对规章制度的遵守。如果你怀揣着成为无人机飞行员的梦想,那么,让我们一起揭开CAAC民用无人机操作证…...
RPC介绍
什么是RPC RPC是远程过程调用(Remote Procedure Call)的缩写形式。在学校学编程,我们写一个函数都是在本地调用就行了。但是在互联网公司,服务都是部署在不同服务器上的分布式系统。 SAP(System Applications and Products/企业管…...
23 导航栏
效果演示 实现了一个响应式的导航栏,当鼠标悬停在导航栏上的某个选项上时,对应的横条会从左到右地移动,从而实现了导航栏的动态效果。 Code <div class"flex"><ul><li>1</li><li>2</li><l…...
express框架搭建后台服务
express 1. 使用express创建web服务器:2. 中间件中间件分类: 3.解决跨域问题:1. CORS2.JSONP 1. 使用express创建web服务器: 1. 导入express2. 创建web服务器3. 启动web服务器// 1. 导入express const express require(express)/…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?
论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...
【项目实战】通过多模态+LangGraph实现PPT生成助手
PPT自动生成系统 基于LangGraph的PPT自动生成系统,可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析:自动解析Markdown文档结构PPT模板分析:分析PPT模板的布局和风格智能布局决策:匹配内容与合适的PPT布局自动…...
苍穹外卖--缓存菜品
1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...
数据链路层的主要功能是什么
数据链路层(OSI模型第2层)的核心功能是在相邻网络节点(如交换机、主机)间提供可靠的数据帧传输服务,主要职责包括: 🔑 核心功能详解: 帧封装与解封装 封装: 将网络层下发…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
【HTML-16】深入理解HTML中的块元素与行内元素
HTML元素根据其显示特性可以分为两大类:块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...
QT: `long long` 类型转换为 `QString` 2025.6.5
在 Qt 中,将 long long 类型转换为 QString 可以通过以下两种常用方法实现: 方法 1:使用 QString::number() 直接调用 QString 的静态方法 number(),将数值转换为字符串: long long value 1234567890123456789LL; …...
用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...
