如何Ping特定端口?

ping是用于解决网络和系统相关问题的工具和命令。ping命令通常使用ICMP协议,并检查远程系统是否在没有TCP或UDP的情况下启动或关闭。ping端口是一个用于检查远程端口的术语,如果远程端口是开放且可访问的,则可以是TCP或UDP。

null

为什么要Ping特定端口?

ping特定端口被不同的用户和管理员用来检查远程服务。Linux管理员、Windows管理员、网络管理员、应用程序开发人员、数据库管理员一般通过ping特定端口来识别和解决问题。下面我们将列出ping特定端口的一些最流行的原因。

  • 应用程序无法连接数据库服务。
  • 如果防火墙已正确配置为允许或拒绝特定端口。
  • 检查远程SNMP服务是否正常运行。
  • 在攻击远程端口之前,请检查端口是否已启动并正确响应。

使用telnet命令Ping特定端口

ping远程端口的最常用和最基本的工具是telnet命令。Telnet是一种通过命令行连接远程系统的工具和协议。Telnet通过命令行工作,并提供对remte Telnet服务器的简单访问。Telnet命令使用TCP协议,首先尝试连接远程端口,这对于检查远程端口非常有用。

默认情况下,没有为Linux和Windows系统安装telnet。在像Ubuntu、Debian、Mint、Kali这样的Linux系统中,您可以像下面这样安装telnet命令。

$ sudo apt install telnet

对于Windows操作系统,telnet客户端是通过Windows功能提供的,但默认情况下不启用。所以你应该打开telnet客户端功能。下面的教程介绍如何在Windows操作系统中安装telnet客户端。

或者,您可以使用第三方工具,如Putty for telnet命令,但这并不像预期的那样实用。

用于ping远程端口的telnet命令的语法如下所示。telnet命令只使用最流行的传输协议TCP协议。因此只有TCP端口可以用telnet命令ping,而不能用于UDP端口。

telnet IP PORTtelnet DOMAIN PORT
  • 知识产权 用于指定远程系统。
  • 港口 是远程系统端口号,是从9到65000的数字。

让我们用telnet命令ping远程HTTP端口,提供端口号80。我们将ping google.com TCP端口号80,如下所示。

$ telnet google.com 80

输出如下所示,telnet将尝试连接远程系统端口号80,当连接建立时,e将看到消息“ 已连接到google.com。

Trying 172.217.18.110...
Connected to google.com.
Escape character is '^]'.

get /
HTTP/1.0 400 Bad Request
Content-Type: text/html; charset=UTF-8
Referrer-Policy: no-referrer
Content-Length: 1555
Date: Thu, 12 Nov 2020 01:57:34 GMT

<!DOCTYPE html>
<html lang=en>
  <meta charset=utf-8>
...
图片[1]-如何Ping特定端口?-yiteyi-C++库
用telnet Ping指定端口

或者,我们可以尝试用IP地址ping远程端口。我们只需要用下面的IP地址更改域名。

$ telnet 172.217.18.110 80

我们做了一个ping端口的例子,结果很成功,但是如果ping端口不工作,会输出什么呢。在下面的示例中,我们将ping端口号89,该端口已关闭,不会回复ping请求。

$ telnet google.com 89
Trying 172.217.18.110...
Trying 2a00:1450:4001:809::200e...
telnet: Unable to connect to remote host: Network is unreachable

输出如下所示,其中“ 正在尝试172.217.18.110… “将显示超时行,然后显示” telnet:无法连接到远程主机:无法访问网络 “将显示消息。

图片[2]-如何Ping特定端口?-yiteyi-C++库
用telnet Ping指定端口

使用nc(netcat)命令Ping特定端口

这个 数控 或者用它的名字 网络猫 是安全专业人员用于远程连接和管理的工具。类似于telnet命令 数控 命令可用于ping远程系统的特定端口号。

nc命令是由诸如Ubuntu、Debian、Mint、Kali等Linux发行版提供的,可以如下安装。

$ sudo apt install netcat

对于Windows操作系统,nc命令和可执行文件可以从其中一个位置下载 https://github.com/diegocr/netcat .

nc命令的语法与telnet命令非常相似。但区别在于 -五 -z轴 应指定参数。这个 -v参数 用于详细输出,以便查看日志或状态信息,如已连接或未连接。这个 -z参数 用于检查或扫描指定远程端口的扫描模式。

nc -vz DOMAIN PORTnc -vz IP PORT
  • 这个 是远程系统域名。
  • 这个 知识产权 是远程系统IP地址。
  • 这个 港口 是要ping的远程系统端口号。

让我们用下面的nc命令ping google.com的HTTP端口。

$ nc -vz goole.com 80
Connection to goole.com 80 port [tcp/http] succeeded!

我们可以看到连接成功,这意味着远程端口号80响应ping请求。我们也可以使用远程系统的IP地址。

$ nc -vz 172.217.18.110 80

在下面的示例中,我们将ping google.com域名pot number 89。

$ nc -vz goole.com 89
nc: connect to goole.com port 89 (tcp) failed: Connection refused

正如我们看到的结果,我们将得到 连接被拒绝 表示remtoe端口不响应ping的消息。

使用nmap Ping特定端口

nmap是一种用于扫描远程系统端口和服务的安全工具。nmap还可以用于ping特定端口。Nmap可以安装在Linux发行版上,如Ubuntu、Debian、Mint和Kali,如下所示。

$ sudo apt install nmap

对于Windows操作系统,请使用官方的nmap站点Windows下载部分,如下所示。

https://nmap.org/download.html

端口ping的nmap命令的语法如下所示。

nmap -p PORT_RANGE TARGET
  • 端口U范围 是远程端口号或协议名称。端口号范围也可以是端口号的范围。
  • 目标 是域名或IP地址。目标也可以是包括多个顺序IP地址的IP范围。

让我们举一个nmap-to-ping远程端口的例子。我们将为端口号提供-p参数,参数为80,远程系统为google.com。

$ nmap -p 80 google.com

nmap是ping指定远程端口的最快工具。命令将在2秒内执行,并提供有关远程端口的详细输出,如下所示。“线” 80/tcp开放http 简单地表示远程端口号80响应ping。

Starting Nmap 7.80 ( https://nmap.org ) at 2020-11-11 18:27 PSTNmap scan report for google.com (172.217.18.110)Host is up (0.036s latency).Other addresses for google.com (not scanned): 2a00:1450:4001:809::200erDNS record for 172.217.18.110: zrh04s05-in-f110.1e100.netPORT STATE SERVICE80/tcp open httpNmap done: 1 IP address (1 host up) scanned in 0.28 seconds
图片[3]-如何Ping特定端口?-yiteyi-C++库
用nmap Ping指定端口

或者,我们可以指定要ping端口的远程系统的IP地址。

$ nmap -p 80 172.217.18.110

如前所述,nmap命令可以用一个命令ping多个端口和IP地址。其他工具如nc、telnet不能用一个命令ping多个端口。在下面的示例中,我们将ping 80到90之间的端口号。

$ nmap -p 80-90 google.com

输出如下所示,其中打开的端口将以打开状态列出。

Starting Nmap 7.80 ( https://nmap.org ) at 2020-11-11 18:32 PSTNmap scan report for google.com (172.217.18.110)Host is up (0.039s latency).Other addresses for google.com (not scanned): 2a00:1450:4001:809::200erDNS record for 172.217.18.110: fra16s42-in-f14.1e100.netPORT STATE SERVICE80/tcp open http81/tcp filtered hosts2-ns82/tcp filtered xfer83/tcp filtered mit-ml-dev84/tcp filtered ctf85/tcp filtered mit-ml-dev86/tcp filtered mfcobol87/tcp filtered priv-term-l88/tcp filtered kerberos-sec89/tcp filtered su-mit-tg90/tcp filtered dnsix
图片[4]-如何Ping特定端口?-yiteyi-C++库
用nmap Ping多个指定端口

在PowerShell中使用测试连接Ping特定端口

Windows操作系统提供了强大的命令行界面PowerShell及其最新版本。PowerShell提供了很多有用的命令,比如 测试网络连接 . testnetconnection可以方便地ping指定的远程端口,并提供详细信息。对于Windows系统,Test NetConnection是telnet命令的首选工具。Test NetConnection命令默认用于PowerShell和Windows,因此不需要额外的安装过程。

Test NetConnection命令的语法如下所示。

Test-NetConnection TARGET -p PORT
  • 目标 是端口ping的IP地址或域名。
  • 港口 是远程系统端口号。

我们将使用Test NetConnection命令来测试google.com端口号80。

PS> Test-NetConnection google.com -p 80

使用Test NetConnection命令ping远程端口的输出如下所示。我们可以看到那个远程系统 计算机名 , 远程地址 , 远程端口 , 接口IAS , 源地址 , TCPTECT成功 提供信息。

ComputerName : google.comRemoteAddress : 172.217.18.110RemotePort : 80InterfaceAlias : Ethernet0SourceAddress : 192.168.142.130TcpTestSucceeded : True
图片[5]-如何Ping特定端口?-yiteyi-C++库
使用PowerShell测试NetConnection Ping端口

让我们为google.com的端口号89做另一个测试。

PS> Test-NetConnection google.com -p 80

输出如下所示,这意味着ping端口失败。对于失败的ping端口操作 PingRelyDetails(RTT)公司 , TcpTest成功 提供。

WARNING: TCP connect to (172.217.18.110 : 89) failedComputerName : google.comRemoteAddress : 172.217.18.110RemotePort : 89InterfaceAlias : Ethernet0SourceAddress : 192.168.142.130PingSucceeded : TruePingReplyDetails (RTT) : 46 msTcpTestSucceeded : False
图片[6]-如何Ping特定端口?-yiteyi-C++库
使用PowerShell测试NetConnection Ping端口

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享