免责声明: 本文档可能包含第三方产品信息,该信息仅供参考。阿里云对第三方产品的性能、可靠性以及操作可能带来的潜在影响,不做任何暗示或其他形式的承诺。
概述
本文主要介绍在Linux系统的ECS实例中,如何测试TCP和UDP端口的连通性。
详细信息
阿里云提醒您:
- 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
- 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
- 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。
以下是测试TCP和UDP端口连通性的详细内容:
测试TCP端口连通性
以下是使用Telnet工具和Python自带的Web服务器以测试端口连通性的方法介绍。
Telnet测试端口连通性
在ECS实例中,执行以下命令,使用telnet工具测试端口的连通性。
telnet [$Host] [$Port]
说明:
- [$Host]是目标服务器IP地址。
- [$Port]是待测试端口号。
- 可执行以下命令,测试22端口连通性。
telnet 127.0.0.1 22若成功连接,会显示类似以下信息。不同Linux系统环境下,显示可能有所不同,但通常若包含Connected to ...
信息,则说明连接成功。Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
SSH-2.0-OpenSSH_5.3
创建新的监听端口测试
以下是使用Python自带的Web服务器临时创建新的监听端口进行测试的详细内容。执行以下命令,测试端口。
python -m SimpleHTTPServer [$Port]
系统显示类似如下。
Serving HTTP on 0.0.0.0 port 123 ...
说明:启动的Web服务是单线程,以当前目录为根目录为例,一次只能接受一个请求用于测试。测试完成后按Ctrl+C键终止进程。
测试UDP端口连通性
以下是通过nc程序测试UDP端口连通性的详细内容:
- 执行以下命令,检查系统是否安装了nc程序。
which nc
若系统返回类似如下,则说明已安装nc程序。/usr/bin/nc
说明:如果nc未被安装,根据操作系统的不同, 使用yum或apt-get等工具进行安装。
- 在服务端执行以下命令,监听某个需要测试的端口,比如1234。
nc -uvlp 1234
系统返回类似如下。Ncat: Version 6.40 ( http://nmap.org/ncat )
Ncat: Listening on :::1234
Ncat: Listening on 0.0.0.0:1234 - 在客户端上执行以下命令,连接服务端需要测试的端口,比如1234。
nc -u [$Host] 1234
- 连接成功后,在客户端上输入测试字符,比如abc,确认服务端同步回显。如果服务端未同步回显,则说明端口连通性异常。
适用于
- 云服务器 ECS