检测IP和端口状态

Posted by Alei Blog on July 19, 2017

场景

在服务器上部署中间件和数据库的时候,经常遇到无法连接的问题,如何判断是部署有问题,还是IP和端口没有开通访问?

工具

telnet命令已经是过去式,因为不安全,Windows系统已经默认不安装。 nmap是一款好用的工具,可以扫描ip和端口。 无论是Windows,还是Linux,都可以安装nmap。

安装

  • 下载地址https://nmap.org/download.html
  • Windows,可以下载自安装文件,比如nmap-7.50-setup.exe;也可以下载二进制.zip文件,比如nmap-7.50-win32.zip,解压缩后手动添加path
  • Linux,可以下载新版本安装,也可以直接从仓库安装nmap

使用

  • 检查某个ip,开放了哪些端口
$ nmap 111.13.101.209
 
Starting Nmap 7.40 ( https://nmap.org ) at 2017-07-20 13:54 China Standard Time
Nmap scan report for 111.13.101.209
Host is up (0.022s latency).
Not shown: 998 filtered ports
PORT    STATE SERVICE
80/tcp  open  http
443/tcp open  https
 
Nmap done: 1 IP address (1 host up) scanned in 13.25 seconds
  • 检查某个ip的某个端口是否开放
$ nmap 111.13.101.209 -p 8080
 
Starting Nmap 7.40 ( https://nmap.org ) at 2017-07-20 13:55 China Standard Time
Nmap scan report for 111.13.101.209
Host is up (0.023s latency).
PORT     STATE    SERVICE
8080/tcp filtered http-proxy
 
Nmap done: 1 IP address (1 host up) scanned in 8.85 seconds

说明

  • 端口状态state为filtered,表示被防火墙过滤了
  • 端口状态state为open,表示可以正常访问
  • 端口状态state为closed,表示可以访问,但是服务没启动