3 种检查远端埠号是否开启的方法


除了在 Linux 的主机外, 在其他类型的主机也经常需要检查埠号是否有开启埠号, 例如要测试主机的服务是否正常。

以下是分别用 nc, nmap 及 telnet 测试埠号是否有开启的方法。

nc (netcat)

nc 的意思是 netcat, nc 可以读取经过 TCP 及 UDP 的网络连线资料, 是一套很实用的网络除错工具。

在 CentOS 用 yum 安装 nc:

/linux/install-nc

  • # yum install nc

如果只是单纯检查埠号是否有开启, 可以用以下指令, 以下指令会测试 192.168.1.10 的 port 80 是否开启:

/linux/nc

  • $ nc -zvw3 192.168.1.10 80

如果埠号有开启, 会回传类似以下内容:

Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connected to 192.168.1.10:80.
Ncat: 0 bytes sent, 0 bytes received in 0.01 seconds.

如果没有开启, 会回传以下内容:

Ncat: No route to host.

nmap

nmap (Network Mapper) 是另一个可以检查埠号的工具, 检查语法是这样:

在 CentOS 用 yum 安装 nmap:

/linux/install-nmap

  • # yum install nmap

用 nmap 检查 port 80 是否开启:

/linux/nmap

  • $ nmap 192.168.1.10 -p 80

如果埠号有开启, 会回传以下内容:

Starting Nmap 6.40 ( http://nmap.org ) at 2019-03-27 15:42 HKT
Nmap scan report for 192.168.1.10
Host is up (0.00042s latency).
PORT STATE SERVICE
80/tcp open http

Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds

如果没有开启, 会有以下输出:

Starting Nmap 6.40 ( http://nmap.org ) at 2019-03-27 15:45 HKT
Nmap scan report for 192.168.1.10
Host is up (0.00045s latency).
PORT STATE SERVICE
80/tcp filtered http

Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds

Telnet

Telnet 是另一个可以检查埠号的工具.

在 CentOS 用 yum 安装 Telnet:

/linux/install-telnet

  • # yum install telnet

用 Telnet 检查 port 80 是否开启:

/linux/telnet

  • $ telnet 192.168.1.10 80

如果埠号有开启, 会有以下输出:

Trying 192.168.1.10…
Connected to 192.168.1.10.
Escape character is ‘^]’.
^CConnection closed by foreign host.

要离开 Telnet 按 “Ctrl + C” 键.

如果埠号没有开启, 会出现以下结果:

$ telnet 192.168.1.10 80
Trying 192.168.1.10…
telnet: Unable to connect to remote host: Connection refused

Leave a Reply