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就根据情况吧

相关推荐
谷咕咕6 小时前
windows下python3,LLaMA-Factory部署以及微调大模型,ollama运行对话,开放api,java,springboot项目调用
java·windows·语言模型·llama
kali-Myon11 小时前
解决 win+R 运行处以及文件资源管理器处无法使用 wt、wsl 命令打开终端
windows·wsl·path·regedit·wt
yubo050912 小时前
YOLO系列——实时屏幕检测
开发语言·windows·python
火车叼位13 小时前
Clink实战指南:让Windows开发者拥有Bash级别的命令行体验
windows
私人珍藏库13 小时前
[Windows] PDF 专业压缩工具 v3.6
windows·pdf
love530love15 小时前
EPGF 架构为什么能保持长效和稳定?
运维·开发语言·人工智能·windows·python·架构·系统架构
winkel_wang20 小时前
一个硬盘选MBR 还是GPT
windows·gpt·mbr
柱子jason1 天前
使用IOT-Tree Server通过MC协议连接三菱Q系列PLC
物联网·自动化·三菱plc·通信
小年糕是糕手2 天前
【C语言】C语言预处理详解,从基础到进阶的全面讲解
linux·c语言·开发语言·数据结构·c++·windows·microsoft
专注VB编程开发20年2 天前
c#vb.net动态创建二维数组
windows·c#·vb.net·二维数组