使用 Linux 命令 curl 和 telnet 测试接口连通性

摘要:接口可用性诊断利器curl和Telnet。

综述

  Linux 中的命令 curl 是利用 URL 语法在命令行模式下工作的开源文件传输工具,它可以被用于测试API接口,查看响应头和发出HTTP请求。在本文章,分享如何使用cURL测试 ip和端口号是否可用、接口或者域名的连通性。Telnet命令的语法与此类似。

curl

  在《curl ifconfig.me 查看Linux服务器公网IP地址》中,小编楼兰胡杨为老铁们介绍了使用 curl ifconfig.me查看服务器公网IP,本节介绍如何验证当前服务是否可以调用其它远程服务。cURL 语法格式如下 :

curl ip:port
or
curl hostName

  因为一个域名可能指向多个 IP 地址,所以是输入 IP 地址还是域名,请根据自己需要选择。

说明:

  • ip:被测试主机的ip地址
  • port:是端口,比如8080
  • hostName:域名,譬如https://www.cnblogs.com

  如果是域名访问,会返回对应主页的相关信息。可以使用 curl -I -X GET 来测试远程机器的连通性,-X 选项指定与远程服务器通信时将使用哪种HTTP请求方法,这里指定为GET。返回结果很精简:

/# curl -I -X GET https://www.cnblogs.com
------- 以下为响应结果 -------
HTTP/2 200 
date: Thu, 24 Nov 2022 03:24:22 GMT
content-type: text/html; charset=utf-8
vary: Accept-Encoding
age: 4
cache-control: public,max-age=30
strict-transport-security: max-age=2592000; includeSubDomains; preload

  使用此命令之前,可以先输入 curl -V 看下是否能够查询到curl的版本号,如果查到类似如下所示的版本信息,则可以使用curl去检测服务可用性。

curl 7.58.0 (x86_64-pc-linux-gnu) xxx
Release-Date: 2019-01-21
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IDN xxx

telnet

  telnet 命令支持两种模式:命令模式和会话模式,虽然telnet支持许多命令,但大部分情况下,我们只是使用它查看目标主机是否打开了某端口。

  语法:

telnet ip port

  • ip 被测试的服务器ip
  • port 测试的端口

  Demo:

telnet 10.10.10.6 211

结束语

  人情早晚有用完的时候,只有自己拥有足够的实力,才能赢得别人的尊重。更何况没有人欠我们人情呢!

posted @ 2022-11-27 15:18  楼兰胡杨  阅读(6743)  评论(0编辑  收藏  举报