Linux系统有时候需要测试某个端口的连通性,用户可以参考如下方法来测试。

一、telnet法

elnet 协议是 TCP/IP 协议族中的一员,是 Internet 远程登陆服务的标准协议和主要方式。
telnet为用户提供了在本地计算机上完成远程主机工作的能力,因此可以通过telnet来测试端口的连通性。

1.1 telnet 软件包安装

1)检测 telnet 包是否安装

rpm -qa | grep telnet

2)未安装,则安装 telnet 软件包

yum install telnet

3)检测安装包是否安装成功

rpm -qa | grep telnet
telnet-0.17-66.el7.x86_64

1.2 telnet用法格式

telnet ip port

说明:
ip:是测试主机的ip地址
port:是端口,比如80

1.3 应用

1)连接一个存在的端口,连接成功

telnet 10.198.25.126 5546
Trying 10.198.25.126…
Connected to 10.198.25.126.
Escape character is ‘^]’.

2)连接一个不存在的端口,连接被拒绝

telnet 10.198.25.126 1234
Trying 10.198.25.126…
telnet: connect to address 10.198.25.126: Connection refused

3)连接一个不存在的网络,出现超时

telnet 10.198.25.13 6
Trying 10.198.25.13…
telnet:connected to 10.198.25.126: Connection timed out

二、ssh法

SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,在linux上可以通过ssh命令来测试端口的连通性,具体用法格式如下:

ssh -v -p port username@ip
或者ssh -v -p port ip

说明:
-v 调试模式(会打印日志).
-p 指定端口
username:远程主机的登录用户
ip:远程主机
如果远程主机开通了相应的端口,会有建立成功的提示。
如果远程主机没有开通相应的端口,则如下图所示
在这里插入图片描述

应用

ssh -v -p 9215 1.1.1.1
OpenSSH_7.4pl, OpenSSL 1.0.2k-fips 26 Jan 2017
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 58: Applying options for *
debug1: Connecting to 1.1.1.1 [1.1.1.1] port 9215.
debug1: Connection established. //出现该行表示连接成功

连接一个不存在的端口

ssh -v -p 92 1.1.1.1
ssh: connect to host 1.1.1.1 port 92: Connection refused

三、curl法

curl是利用URL语法在命令行方式下工作的开源文件传输工具。也可以用来测试端口的连通性,具体用法:

curl ip:port

说明:
ip:是测试主机的ip地址
port:是端口,比如80
如果远程主机开通了相应的端口,都会输出信息,如果没有开通相应的端口,则没有任何提示,需要CTRL+C断开。

四、wget方法

wget是一个从网络上自动下载文件的自由工具,支持通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理。wget名称的由来是“World Wide Web”与“get”的结合,它也可以用来测试端口的连通性具体用法:

wget ip:port

说明:
ip:是测试主机的ip地址
port:是端口,比如80
如果远程主机不存在端口则会一直提示连接主机。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐