测试UDP端口连通性

Linux使用netcat测试udp端口

Ubuntumacos下使用的nc命令是netcat.

# Ubuntu安装
apt install netcat -y

Centos7安装netcat–依赖epel源

Centos7默认的nc命令是nmap-ncat包提供的,并不是netcat,nmap-ncatbug:https://bugzilla.redhat.com/show_bug.cgi?id=1744561

# 查看nc符号连接指向的位置
readlink -f $(which nc)

在这里插入图片描述

要安装netcat包,先配置epel源: https://blog.csdn.net/omaidb/article/details/120393850

# 安装netcat
yum install netcat -y

!!注意: 安装后nc命令会变成netcat,不再是nmap-ncat.
建议卸载nmap-ncat

# 卸载nmap-ncat
yum autoremove nmap-ncat -y

查看nc符号连接指向的位置

# 查看nc符号连接指向的位置
readlink -f $(which nc)

在这里插入图片描述


netcat常用参数

参考: https://blog.konghy.cn/2020/04/03/linux-natcat/

参数释义
-k在当前连接结束后保持继续监听
-l用作端口监听,而不是发送数据
-n不使用 DNS 解析
-N在遇到 EOF 时关闭网络连接
-p指定源端口
-u使用 UDP 协议传输
-v(Verbose)显示更多的详细信息
-w指定连接超时时间
-z不发送数据

使用netcat创建TCP客户端和服务器

# 创建TCP服务器
## -l 监听地址 端口
nc -l 127.0.0.1 8080

# 客户端以TCP协议连接到服务端
nc 127.0.0.1 8080

测试tcp端口

# 测试百度的80端口是否畅通
## -v 详细信息
## -w 指定连接超时时间
nc -v -w 2 baidu.com 80

在这里插入图片描述


使用netcat创建UDP客户端和服务器

# 创建UDP服务器
## -l 监听地址 端口
## -u 使用udp协议
## -v 显示详情
nc -luv 0.0.0.0 8081

# 查看是否8081在UDP上被监听
netstat -antup

# 客户端以UDP协议连接到服务端
## -u 使用udp协议
## -v 显示详情
nc -uv 目的地IP 8080

在这里插入图片描述


测试udp端口

# netcat 测试udp端口
## -v 详细信息
## -u udp
nc -vu 114.114.114.114 53

在这里插入图片描述


windows使用netcat测试UDP端口

# 安装netcat工具
$ choco install netcat -y

参考: https://cloud.tencent.com/developer/article/1619766
Windows版nc不要使用-z参数,-z误导人

# 失败示例(括号中是?号)
## -v 显示详情
## -u 使用udp协议连接
C:>nc -vu 1.1.1.1 5555	

示例:

# 成功示例(括号中是协议名)
C:\windows\system32>nc -vu 1.1.1.1 5566

如上所示,如果返回结果中,端口号后面的括号中返回的是?号,则说明相应的UDP端口访问失败;
如果返回的是具体的协议类型,则说明相应的UDP端口访问正常。


Linux使用nmap测试udp端口


Centos7使用nmap扫描udp端口

使用前请安装最新版并更新特征库 https://blog.csdn.net/omaidb/article/details/120119433

# 使用nmap测试udp端口
nmap -sU 1.1.1.1 -p 5555 -Pn

STATEopen是正常打开的状态
STATEfiltered是被阻断或者没有打开的状态


Centos7使用nmap-ncat测试udp端口

使用如下指令测试目标服务器UDP端口的连通性:

# nmap-ncat和netcat测试UDP端口方法一致
# 测试5555的UDP端口
## -v 显示详情
## -u 使用udp协议连接
## -z 零I/O模式,仅报告连接状态
## -w 超时时间
nc -vuz -w 2 223.5.5.5 53
#回显
Connection to 223.5.5.5 53 port [udp/isakmp] succeeded!

如果返回succeeded,则说明相应的UDP端口访问正常
如果无任何返回信息,则说明相应的UDP端口访问失败
在这里插入图片描述


nmap-ncat测试udp数据传输是否正常

# 在服务端上开启8888端口
## -v 详情
## -u UDP协议
## -l 监听端口,而不是发送数据
## -p 指定源端口
nc -vulp 8888

# 在客户端上连接服务器的8888端口并发送数据
## -v 详情
## -u UDP协议
nc -vu 服务器地址 8888
## 连接后发送数据

在这里插入图片描述
在这里插入图片描述


Netcat发送文件到远端电脑

发送端的电脑上输入:

cat file | nc -l 1234

这个命令会将 file 的内容输出到本地的 1234 端口中,然后不论谁连接此端口,file 的内容将会发送到连接过来的 IP。

接收电脑上的命令:

nc host_ip 1234 > file

这条命令将连接发送端的电脑,接受 file 内容保存。

  • 13
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Telnet 是一种用于测试 TCP 连接的工具,不能直接用于测试 UDP 端口。但是,你可以使用其他工具来测试 UDP 端口的可用性,例如使用 `nc`(netcat)命令或使用 `nmap` 工具。 使用 `nc` 命令可以简单地检查 UDP 端口是否开放。以下是使用 `nc` 命令检测 UDP 端口的步骤: 1. 打开终端或命令提示符。 2. 运行以下命令来测试 UDP 端口: ``` nc -u -zv <主机名或IP地址> <端口号> ``` 替换 `<主机名或IP地址>` 和 `<端口号>` 为你要测试的实际值。 例如,要测试主机名为 `example.com` 的 UDP 端口 1234,命令将如下所示: ``` nc -u -zv example.com 1234 ``` 如果 UDP 端口开放,则将显示类似以下内容的输出: ``` Connection to example.com 1234 port [udp/*] succeeded! ``` 如果 UDP 端口关闭或不可访问,则将显示类似以下内容的输出: ``` nc: connect to example.com port 1234 (udp) failed: Connection refused ``` 使用 `nmap` 工具也可以检测 UDP 端口的可用性。以下是使用 `nmap` 工具检测 UDP 端口的步骤: 1. 打开终端或命令提示符。 2. 运行以下命令来测试 UDP 端口: ``` nmap -sU -p <端口号> <主机名或IP地址> ``` 替换 `<主机名或IP地址>` 和 `<端口号>` 为你要测试的实际值。 例如,要测试主机名为 `example.com` 的 UDP 端口 1234,命令将如下所示: ``` nmap -sU -p 1234 example.com ``` `nmap` 将扫描指定的 UDP 端口,并显示端口的状态。开放的端口将显示为 "open",关闭的端口将显示为 "closed"。 请注意,使用这些工具测试 UDP 端口时,需要确保防火墙或网络设备允许 UDP 流量通过。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

识途老码

赞赏是第一生产力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值