首页 > 其他分享 >如何优雅的使用telnet测试端口连通性

如何优雅的使用telnet测试端口连通性

时间:2023-08-23 14:15:02浏览次数:44  
标签:... 连通性 character 端口 101.199 telnet 97.65

telnet命令是TELNET协议的用户接口,它支持两种模式:命令模式和会话模式,虽然telnet支持许多命令,但大部分情况下,我们只是使用它查看目标主机是否打开了某端口(默认是23)。
如何优雅的使用telnet测试端口连通性如何优雅的使用telnet测试端口连通性

其执行结果有两种: 端口未打开
$ telnet 101.199.97.65 62715
Trying 101.199.97.65...
telnet: connect to address 101.199.97.65: Connection refused

此时,命令已退出。

端口已打开
$ telnet 101.199.97.65 62715
Trying 101.199.97.65...
Connected to 101.199.97.65.
Escape character is '^]'.

此时命令未退出。
根据提示Escape character is '^]'.可知退出字符为'^]'(CTRL+])。此时输入其它字符不能使其退出,CTRL+C都不行。输入CTRL+]后会自动执行,进入命令模式:

^]
telnet>

此时再运行quit才会真正退出。

telnet> quit
Connection closed.

其中,Escape character可以自定义,使用参数-e:

$ telnet -e p 101.199.97.65 62715   #使用p字符
Telnet escape character is 'p'.
Trying 101.199.97.65...
Connected to 101.199.97.65.
Escape character is 'p'.
p
telnet> quit
Connection closed.

即便如此,退出telnet还是麻烦。那么,更进一步,如果出现在脚本中应该如何(优雅地)退出telnet呢?

方案

其实可以这样:

输出结果后立即退出
$ echo "" | telnet 101.199.97.65 62715

Trying 101.199.97.65...
Connected to 101.199.97.65.
Escape character is '^]'.
Connection closed by foreign host.  #已成功连通端口并自动退出
$ echo "" | telnet 101.199.97.65 62715
Trying 101.199.97.65...
telnet: connect to address 101.199.97.65: Connection refused #端口未开放
输出结果后延迟退出

sleep 2使得telnet输出结果后,停留2秒后退出命令模式。

$ sleep 2 | telnet 101.199.97.65 62715

Trying 101.199.97.65...
Connected to 101.199.97.65.
Escape character is '^]'.
Connection closed by foreign host.

使用这种方式可以将标准输出和标准错误重定向到文件中,通过分析文件的内容来判断端口打开状态。

原文来自:http://www.linuxidc.com/Linux/2017-06/145164.htm

本文地址:https://www.linuxprobe.com/telnet-test-port.html编辑:张宏宇,审核员:冯振华

本文原创地址:https://www.linuxprobe.com/telnet-test-port.html

标签:...,连通性,character,端口,101.199,telnet,97.65
From: https://www.cnblogs.com/linuxpro/p/17651439.html

相关文章

  • 端口隔离-二层隔离
    需求1、将pc1与pc2规划到vlan10中2、vlan1与vlan2不能相互访问(阻止ARP)3、同时能够访问vlan10中的主机知识储备默认为:隔离类型为:双向隔离隔离模式:二层隔离配置步骤第一步:系统视图port-isolatemodel2//二层隔离第二步:接口视图下,将需要隔离端口分为一组intg0/0/1port-iso......
  • webman:配置端口/日志等(v1.5.7)
     一,文档地址:https://www.workerman.net/doc/webman/others/security.htmlhttps://www.workerman.net/doc/webman/request.htmlhttps://www.workerman.net/doc/webman/config.html说明:刘宏缔的架构森林—专注it技术的博客,网站:https://blog.imgtouch.com原文: https://b......
  • 宝塔面板如何用一IP不同端口创建不同的网站(“您添加的站点已存在”)
    问题描述玩宝塔面板的时候,一开始没有云服务器,需要在本地虚拟机里搭建各种网站,想在本地服务器下搭建多个站点,但是总会遇到“您添加的站点已存在”这个现象。问题原因及解决办法出现这个问题的原因大概有三个。(1)你的新网站和原来一模一样,而且原来的网站没有删除,这样的删除原......
  • sokit使用方法,检测TCP和UDP端口响应。
    输入IP和端口sokit中文版下载链接:https://github.com/sinpolib/sokit/releases/download/v1.3.20111130/sokit-1.3-win32-chs.zip......
  • telnet:Login incorrect
      问题描述:telnet服务端和客户端的telnet服务均正常,并且防火墙也是关闭的,但是根据提示输入用户名和密码后,还是无法连接连接到telnet客户端,如下图,提示:Loginincorrect(登录不正确),但是用户名和密码是完全正确的;解决办法:查看telnet客户端日志: cat/var/log/secure看到......
  • netty实现同一个端口接收并解析多种解析
    1、背景项目需求,一个端口既能接收tcp协议数据又能接收http协议数据并解析,如果简单使用javasocket也能做到,但是当客户端使用post请求发送的是二进制文件时,socket将无法解析,因为无法判断二进制文件的开始和结束。由于netty有现成的解析http协议的工具包,所以使用netty可极大方便实......
  • Mac下 Docker 动态添加端口
    开始发现开放的端口不够用了,但是还不想重新创建容器咋整①查看containerid不管是使用dockerps,dockerps-a,dockerinspectcontainerName哪种方式先获得容器的id这里我使用inspectdockerinspectmnginx|grepId返回的信息如下:"Id":"27b898aa3e89054dfa5b8c898b0......
  • 29、telnet远程访问的安全分析
    在telent远程访问协议中,可以通过wireshark抓取报文,就会看到用户名和密码,说明在网络中传输有风险。而使用ssh远程访问协议,抓取报文时就会加密显示。所以平时使用ssh远程访问网络设备安全性更可靠。1、搭建虚拟环境测试拓扑如下: 2、路由器配置AR1配置如下:<Huawei>Aug21202......
  • 计算机端口
    User我想现在服务器上打开jupyterlab,然后在我的本地电脑在浏览器上使用服务器,你建议用哪个端口ChatGPT如果你打算在服务器上运行JupyterLab并通过本地浏览器访问它,使用SSH隧道是一个很好的选择。JupyterLab默认在8888端口上运行,但是你可以选择其他端口,如果默认端口......
  • CH32V003的输入/输出端口
    GPIO端口是处理器与外部设备打交道的基础,为了更好地应用它,下面就对CH32V003的通用输入输出端口(GPIO)的寄存器结构及用法做详细深入地讨论。CH32V003是一个32位的处理器,但它的GPIO端口并不是把32个引脚都引出来,而是根据芯片型号及其封装的不同,分别引出来了18个(CH32V003F4P6、CH32V00......