Linux / Windows 服务器端口检测 | ping IP + Port 测试
注:本文为 “Linux / Windows 服务器端口检测” 相关文章合辑。
未整理去重。
Windows 如何确认服务器上程序端口是否正常(ping、tcping)
三希已于 2023-05-22 18:08:06 修改
方式 1:ping 命令
ping 命令说明
ping 命令是一个使用频率极高的网络诊断工具,适用于 Windows、Unix 和 Linux 等多种操作系统。它是 TCP/IP 协议的一部分,主要用于判断本地主机与另一台主机之间能否交换数据报。通过分析返回的信息,能够推断 TCP/IP 参数的设置是否正确以及网络运行是否正常。需要注意的是,仅成功与另一台主机进行一次或两次数据报交换,并不能确凿证明 TCP/IP 配置是正确的;只有成功执行大量的数据报交换操作,才能较为确信 TCP/IP 配置的正确性。以下以 Windows 系统为例,详细介绍 ping 命令的基本使用方法。
ping 命令使用
通过快捷键 win+R
调出运行命令框,输入 cmd
并点击“确定”,将会弹出 DOS 窗口。
点击“确定”
ping baidu.com
ping 163.com
ping 192.168.3.166
综上所述,使用 ping 命令时的格式为(需注意 ping 后面需紧跟一个空格):
ping IP
地址或主机域名;ping IP
地址或主机域名 + 命令参数;ping
命令参数 +IP
地址或主机域名。
ping 命令参数说明
查看 ping 命令帮助:
ping /?
输入上述命令后,可以看到如下图所示的打印信息,能够清晰了解每个参数的含义。
ping 163.com -t
该命令会持续进行 ping 操作,直至按下 Ctrl+C
组合键停止。
ping 163.com -t -l 1024
其中,-l
参数用于定义发送数据包的大小,默认情况下为 32 字节,利用该参数最大可定义到 65500 字节,在实际工作中较为常用。
方式 2:telnet 命令
安装
安装入口 1
使用 WIN + R
快捷键,输入 OptionalFeatures
。
安装入口 2
打开“控制面板”。
点击“卸载程序”。
点击“启用和关闭 windows 功能”。
点击“确定”即可完成安装。
如何确认安装成功:
使用 win + R
组合键,输入 cmd
打开命令行终端,输入 telnet
,若出现下图所示内容,则说明安装成功。
使用
- 开始
示例:
telnet 192.168.31.100 8080
若显示如下信息,则证明端口已开启:
若出现下图所示内容,则说明服务器 192.168.3.101
上的端口 80 不通。
- 退出
先按下 CTRL+]
,再输入 quit
即可退出 telnet,重新回到 cmd
命令行。
- 参数说明
常用命令:
open : 使用 openhostname 可以建立到主机的 Telnet 连接。
close : 使用命令 close 命令可以关闭现有的 Telnet 连接。
display : 使用 display 命令可以查看 Telnet 客户端的当前设置。
send : 使用 send 命令可以向 Telnet 服务器发送命令。支持以下命令:
ao : 放弃输出命令。
ayt : “Are you there” 命令。
esc : 发送当前的转义字符。
ip : 中断进程命令。
synch : 执行 Telnet 同步操作。
brk : 发送信号。
quit : 退出 telnet。
命令缩写:
c - close 关闭当前连接
d - display 显示操作参数
o - open hostname [port] 连接到主机 (默认端口 23)。
q - quit 退出 telnet
set - set 设置选项 (键入'set ?' 获得列表)
sen - send 将字符串发送到服务器
st - status 打印状态信息
u - unset 解除设置选项 (键入'set ?' 获得列表)
?/h - help 打印帮助信息
方式 3:tcping 命令
跟其他命令对比
ping:ping 命令是大家熟知的网络命令,属于网络层的 ICMP 协议,其功能仅能检查 IP 的连通性或网络连接速度,无法检测 IP 的端口状态。
telnet:telnet 命令属于应用层的协议,主要用于远程登录,也可用于检测 IP 的端口状态。然而,其功能存在一定局限性,仅能检测某一时刻的 IP 端口状态,无法查看 ping 值,也不具备实时监控的能力。
tcping:tcping 命令使用传输层协议,不仅可以检测 IP 端口状态,还能够查看 ping 值,并且即使源地址禁止使用 ping 命令,也可以通过 tcping 来监控服务器的网络状态。
下载
- tcping.exe - ping over a tcp connection
https://elifulkerson.com/projects/tcping.php
下载 tcping.exe
文件,该文件大小不足 300KB。
将文件放置到 c:windowssystem32
和 C:WindowsSysWOW64
目录下,即可在任意文件路径下运行 tcping 命令。
在命令行中输入 tcping
,若出现帮助文档,则说明安装命令成功。
使用 WIN+R
组合键打开 cmd
命令行:
tcping 163.com
Port is open
表示端口处于开启状态,time=xx.xxms
表示网络延迟值。
实时监控服务器某个端口状态举例:
tcping.exe -t -d --tee d:/tcpping.log 163.com 80
-t
表示持续发送数据包,直至按下 ctrl+c
停止
-d
表示在每行前面显示详细的日期和时间
--tee
表示将结果输出到指定位置
监测不通的端口举例:
tcping.exe -t -d --tee d:/tcpping.log 163.com 81
检查服务器端口是否开启
勤于奋于 2024-05-17 10:50:01 发布
检查服务器上的端口是否开启,可以通过以下几种方法来实现,具体的方法选择取决于所使用的操作系统以及访问服务器的方式。
方法 1: netstat
netstat
命令可以显示网络连接、路由表、接口统计、伪装连接及多播成员等信息。
在 Linux 上
- 查看所有端口:
sudo netstat -tuln
- 查看特定端口(例如,检查是否有服务在监听 80 端口):
sudo netstat -tuln | grep ':80'
在 Windows 上
- 打开命令提示符。
- 输入以下命令查看所有端口:
netstat -an
- 查看特定端口(例如,检查是否有服务在监听 80 端口):
netstat -an | findstr :80
方法 2: ss
ss
是一个替代 netstat
的工具,它能够提供更丰富的信息,并且运行速度更快。
在 Linux 上
- 查看所有端口:
sudo ss -tuln
- 查看特定端口(例如,检查是否有服务在监听 80 端口):
sudo ss -tuln | grep ':80'
方法 3: lsof
lsof
命令可以显示哪些进程正在监听哪些端口。
在 Linux 上
- 查看所有端口:
sudo lsof -i -P -n
- 查看特定端口(例如,检查是否有服务在监听 80 端口):
sudo lsof -i -P -n | grep ':80'
方法 4: 使用 nmap
进行端口扫描
nmap
是一个网络探测工具,可用于检查服务器上的开放端口。
- 安装
nmap
(如果尚未安装):
sudo apt-get install nmap # 在 Debian/Ubuntu 上
sudo yum install nmap # 在 CentOS/RHEL 上
- 扫描特定服务器的端口:
nmap -p 80 <server_ip>
- 扫描特定范围内的所有常见端口:
nmap <server_ip>
示例
假设要检查 Linux 服务器上是否有服务在监听 8080 端口,可以使用以下命令:
使用 ss
sudo ss -tuln | grep ':8080'
使用 netstat
sudo netstat -tuln | grep ':8080'
方法 5: Telnet(适用于简易检测)
Telnet 是一种简单的网络协议,在调试和测试网络连接时非常有用。
- 尝试连接到指定端口:
telnet <server_ip> 8080
如果连接成功,则说明端口 8080 是开启的。
总结
使用上述方法可以帮助检查服务器上的端口是否开启。
其中,最常用且简单的方法可能是 ss
或 netstat
;对于更详细的扫描和检测需求,可以使用 nmap
。
根据具体的需求和环境,选择合适的工具即可。
Linux telnet 命令详解
posted @ 2018-07-14 12:46 小 a 玖拾柒
telnet 命令通常用于远程登录操作。telnet 程序是基于 TELNET 协议的远程登录客户端程序。
Telnet 协议是 TCP/IP 协议族中的一员,是 Internet 远程登陆服务的标准协议和主要方式。
它为用户提供了在本地计算机上完成远程主机工作的能力。
在终端使用者的计算机上运行 telnet 程序,并使用该程序连接到服务器。
终端使用者可以在 telnet 程序中输入命令,这些命令会在服务器上运行,如同直接在服务器的控制台上输入一样,从而实现本地对服务器的控制。
要开始一个 telnet 会话,必须输入用户名和密码来登录服务器。
常见命令参数
Usage: telnet [-8] [-E] [-L] [-S tos] [-a] [-c] [-d] [-e char] [-l user] [-n tracefile] [-b hostalias ] [-r] [host-name [port]]
常见命令展示
安装服务
yum``install``telnet –y
启动服务
service xinetd restart
查看远方服务器 ssh 端口是否开放:
telnet 192.168.25.133 22
测试服务器端口是否打开
ITIRONMAN 于 2019-04-28 14:10:07 发布
1、telnet
命令:telnet ip port
2、curl
命令:curl ip:port
3、ssh
命令:ssh -v -p port username@ip
4、nc
命令:nc -v -w 1 ip -z port
或 nc -nzv ip port
- 命令参数含义
在nc
(netcat)命令中:
-v
选项用于显示详细的输出信息,例如连接过程中的各种状态消息等。
-w
选项用于设置连接超时时间,比如-w 1
表示将超时时间设定为 1 秒。
-z
选项表示仅扫描监听的端口,不发送任何数据,适用于端口扫描场景。
-n
选项表示不进行 DNS 解析,直接使用 IP 地址,这样能够加快连接速度。 - 两者的区别
DNS 解析方面:
nc -v -w 1 ip -z port
未禁止 DNS 解析,如果ip
是主机名,系统会进行 DNS 查找以获取对应的 IP 地址。
nc -nzv ip port
明确禁止了 DNS 解析,直接将输入的ip
作为 IP 地址来处理。当用户确定输入的是 IP 地址,或者不想等待可能因网络或 DNS 服务器问题而耗时的 DNS 解析过程时,使用-n
参数可以加快连接速度。
超时设置方面:
nc -v -w 1 ip -z port
设置了 1 秒的连接超时时间(-w 1
),如果在 1 秒内未能完成端口检查操作(如建立连接等),该操作就会停止。
nc -nzv ip port
没有明确设置超时时间,它会采用nc
命令的默认超时时间或者其他与系统相关的超时设置来确定连接等待时长。
5、wget
命令:wget ip:port
via:
-
windows 如何确认服务器上程序端口是否正常(ping、tcping)_ping 端口 - CSDN 博客 三希已于 2023-05-22 18:08:06 修改
https://blog.csdn.net/zengliguang/article/details/130447035 -
检查服务器端口是否开启怎么查看_查看端口是否开放的命令 - CSDN 博客 勤于奋于 2024-05-17 10:50:01 发布
https://blog.csdn.net/nhm_share/article/details/138999214 -
Linux telnet 命令详解 - 小a玖拾柒 - 博客园 posted @ 2018-07-14 12:46 小 a 玖拾柒
https://www.cnblogs.com/ftl1012/p/telnet.html -
测试服务器端口是否打开的几种办法_怎么测试端口是否开放 - CSDN 博客 ITIRONMAN 于 2019-04-28 14:10:07 发布
https://blog.csdn.net/qq_23953717/article/details/89636934