windows下测试TCP/UDP端口连通性

一、简介

最近调试项目的时候有需要测试UDP连接,所以顺便研究了一下。

MaQaQ:省流,不介意下载工具的话就直接拉到最后看Advanced Port Scanner。

二、TCP

1、telnet(需要开启telnet功能)

控制面板 -> 程序 -> 启用或关闭 Windows功能 -> Telnet client
cmd 指令:telnet ip port,如 telnet 192.168.2.2 8888

成功会直接从cmd切换成telnet的窗体:

失败会在cmd提示:

2、ssh

cmd 指令:ssh -v -p port ip,如ssh -v -p 8888 192.168.2.2

成功会在cmd显示详情:

失败会在cmd提示time out:

3、curl

cmd 指令:curl -v ip:port,如curl 192.168.2.2:8888(-v指令用于显示详情,可以不加,但加上会更直观)

成功会在cmd显示详情:

失败会在cmd提示Fail

三、UDP

1、PowerShell(测试失败,仅供尝试)

win+x管理员打开PowerShell,执行:

复制代码
$udpClient =New-Object System.Net.Sockets.UdpClient
$udpclient.Connect("192.168.2.3",8880)
$data = [System.Text.Encoding]::ASCII.GetBytes("Test")
$udpClient.Send($data,$data.Length)

可以新建个文档存起来,比如testUdp.ps1,然后执行:powershell -ExecutionPolicy Bypass -File 文档路径

测试了一下,不管连不连通都是一样的返回结果(数字4,应该是发送字节数),没有深究,直接弃用。

2、PortQryV2

PortQryV2是微软提供的工具,可以测TCP/UDP,微软官网下载地址:Download PortQry Command Line Port Scanner Version 2.0 from Official Microsoft Download Center,也可以从在网盘下载,链接: https://pan.baidu.com/s/1_5ZC-m-b8PJh8F-D8sgflg?pwd=tup3 提取码: tup3,官方使用说明:使用 PortQry 命令行工具 - Windows Server | Microsoft Learn

下载得到PortQryV2.exe,双击打开后解压即可:

然后cmd进入到解压后文件夹的目录下,运行指令:portqry -n 服务器IP地址 -p UDP -e 端口号,PortQryV2默认为模式为TCP,所以需要指定-p UDP,如下所示:

测试发现:

① PortQryV2仅在本地能测出端口关闭:

② 如果是另一台服务器(2.89)测试本机(2.2),则无法判断是否有进程监听:

③ 如果本机监听了端口+同时向测试机发送数据,那么远程测试机可以得到确定的LISTENIING状态,否则都是第②种状态:

另外补充指令:

portqry -local 用于查询本机所有TCP/UDP端口

portqry -n 192.168.2.2 -r 1:65535 用于查询指定服务器的所有TCP端口

3、netcat

官网下载:netcat 1.11 for Win32/Win64,网盘:https://pan.baidu.com/s/1wuwd5qTRc2FxCaNgFnjsHg?pwd=s6yb 提取码: s6yb,这个解压的时候会被杀软识别到,记得关掉杀软或者手动去隔离区捞回来。

同样是cmd进入到解压后文件夹的目录下,输入指令:nc -u -v -z 目标IP地址 目标端口(-u -v -z也可以直接合并成-uvz),如下:

如果是测试远端服务器的话,要等久一点,本地的结果出来比较快。而且这个不管是否有发送数据,都会检测出来open,所以无法检测到是否有进程监听了端口。

4、Advanced Port Scanner

官网下载: Advanced Port Scanner ,网盘:https://pan.baidu.com/s/1-geIj2AqvYHzhskJfZQRPA?pwd=h3sp 提取码: h3sp,安装的时候如果想修改文件夹位置记得勾上高级设置。

这个是带图形化界面的,操作比较简单,可以批量查询,填上IP跟端口号即可:

这个如果UDP没有在发送数据,就检测不到。

四、总结

1、Advanced Port Scanner比较直观,tcp跟udp都能测;

2、如果不想用工具,tcp用ssh或者curl都行,udp就根据情况吧

相关推荐
大数据魔法师17 分钟前
Redis(一) - Redis安装教程(Windows + Linux)
linux·windows·redis
电手31 分钟前
微软承认Win11出现极端错误,只能强制关机或重装系统
windows·microsoft·电脑
noravinsc2 小时前
windows上rabbitmq服务激活后 15672无法打开
windows·分布式·rabbitmq
Mr.Java.4 小时前
Windows安装Ollama并指定安装路径(默认C盘)
windows
专注代码七年4 小时前
WINDOWS 清理垃圾的 批处理bat脚本
windows
逝水年华QAQ5 小时前
告别混乱与重装烦恼,一款Windows 软件管理神器!
windows·后端
李少兄6 小时前
【Java基础】Java集合遍历方式
java·开发语言·windows
x-cmd7 小时前
[250416] GitHub Action 新升级,支持 Windows on Arm
arm开发·windows·github·github action
.m13 小时前
5款电脑健康状况监测软件
windows
MobiCetus18 小时前
Linux Kernel 7
linux·运维·服务器·windows·ubuntu·centos·gnu