检测特定IP端口是否可达

目录


背景

日常工作中经常需要判定某个IP的端口是否可达,之前一直使用telnet工具,但今天遇到在某特定的设备上没有该工具(软件源里也没有,无法安装)的问题,于是以此契机稍微研究了下其他的检测方式,整理在此。

方法

方法一:使用nmap

首先确保计算机已安装nmap。

然后在终端或者控制台下执行nmap命令:

bash 复制代码
nmap -p <端口号> <设备IP地址>

将<端口号>替换为要检测的端口号,将<设备IP地址>替换为局域网内其他设备的实际IP地址。例如:

bash 复制代码
nmap -p 80 192.168.1.100

查看nmap的输出结果,如果端口是开放的,将看到类似以下的输出:

bash 复制代码
PORT   STATE SERVICE
80/tcp open  http

如果端口是关闭的,将看到以下输出:

bash 复制代码
PORT   STATE  SERVICE
80/tcp closed http

方法二:使用telnet

首先确保计算机已安装telnet客户端。

打开终端或控制台,输入以下命令:

bash 复制代码
telnet <设备IP地址> <端口号>

将<设备IP地址>替换为局域网内其他设备的实际IP地址,将<端口号>替换为要检测的端口号。例如:

bash 复制代码
telnet 192.168.1.100 80

查看telnet的输出结果。如果端口是开放的,将看到类似以下的输出:

bash 复制代码
Trying 192.168.1.100...
Connected to 192.168.1.100.
Escape character is '^]'.

如果端口是关闭的,将看到以下输出:

bash 复制代码
Trying 192.168.1.100...
telnet: Unable to connect to remote host: Connection refused

注意:

  • telnet方法可能不如nmap方法准确,因为telnet客户端可能无法检测非telnet服务的端口。在这种情况下,建议使用nmap
  • 上述两种方式在Windows、Mac和Linux上都适用,只需要安装相应的软件包(nmap或telnet)即可,安装方式不赘述
相关推荐
迎風吹頭髮3 小时前
UNIX下C语言编程与实践58-UNIX TCP 连接处理:accept 函数与新套接字创建
c语言·网络·unix
猫头虎7 小时前
如何查看局域网内IP冲突问题?如何查看局域网IP环绕问题?arp -a命令如何使用?
网络·python·网络协议·tcp/ip·开源·pandas·pip
hello_25010 小时前
动手模拟docker网络-bridge模式
网络·docker·桥接模式
武文斌7710 小时前
项目学习总结:LVGL图形参数动态变化、开发板的GDB调试、sqlite3移植、MQTT协议、心跳包
linux·开发语言·网络·arm开发·数据库·嵌入式硬件·学习
爱吃喵的鲤鱼10 小时前
仿mudou——Connection模块(连接管理)
linux·运维·服务器·开发语言·网络·c++
爱吃小胖橘11 小时前
Unity网络开发--超文本传输协议Http(1)
开发语言·网络·网络协议·http·c#·游戏引擎
萧鼎11 小时前
Python schedule 库全解析:从任务调度到自动化执行的完整指南
网络·python·自动化
7哥♡ۣۖᝰꫛꫀꪝۣℋ12 小时前
网络层--数据链路层
网络·tcp/ip·智能路由器
_清浅12 小时前
计算机网络【第四章-网络层】
网络·计算机网络·智能路由器
沐浴露z13 小时前
【深入理解计算机网络08】网络层之IPv4
网络·计算机网络·网络编程·信息与通信·408