如何在Windows或Linux中创建端口监听器-便于连接测试
在项目团队中工作时,执行必要的连接性测试是一个具有挑战性的任务,尽管服务不存在。
当您在DMZ环境中进行迁移或新项目工作时,经常需要执行此操作。让我们举一个实时例子 – 您正在进行迁移,并且您必须确保应用程序“A”与特定端口上的“B”之间存在连接。
好的。这很简单,您可以执行telnet
,但当“B”没有任何运行的服务时,怎么办?这就是您需要端口监听程序来帮助您解决这个问题的地方。
如果您有类似的情况,或者觉得这对您的工作有益,那么以下是在Windows或UNIX平台上实现此目标的几种方法。
在Windows操作系统中创建端口监听程序
要在Windows上的特定端口上拥有端口监听程序,可以使用“端口监听程序”实用程序。
这个实用程序在Windows 95到Windows 10之间是免费提供的。
- 从here以zip或exe格式下载端口监听程序
- 在本指南中,我将下载exe格式
- 双击下载的postlistener.exe文件
- 它会提示您选择要提取文件的位置,单击解压缩
- 转到您提取文件的路径,在本示例中,我将其放在c:listener下
- 双击监听程序以启动该实用程序
- 输入您要测试的端口号,然后单击开始
- 在上面的示例中,我已经在5500上开始监听端口,并验证其是否正在运行。
打开命令提示符并运行netstat以验证端口5500是否正在监听
是的,现在我已经成功在Windows中创建了端口监听程序。
在Linux操作系统中创建端口监听程序
在Linux中,过程略有不同;在这里,我们将使用netcat(nc)命令来启动监听器。
- 要安装nc,可以使用yum命令
yum install nc
- 安装完成后,使用以下命令在后台启动端口监听程序(5500)
nc –l 5500 &
- 为了验证,我们使用netstat命令
[root@Chandan ~]# netstat -anlp |grep 5500 tcp 0 0 0.0.0.0:5500 0.0.0.0:* LISTEN 21085/nc [root@Chandan ~]#
所以我成功地监听了端口5500。在Linux中做到这一点稍微更容易,不是吗?
使用Python创建端口监听程序
上面的两个示例限于操作系统。如何使用一个可以在Windows或UNIX上工作的Python脚本呢?
好的,我找到了适用于Windows和Linux的below Python代码。创建一个名为portlistener.py的文件,其中包含以下代码
''' Simple socket server using threads
'''
import socket
import sys
HOST = '' # Symbolic name, meaning all available interfaces
PORT = 5500 # Arbitrary non-privileged port
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print 'Socket created'
#Bind socket to local host and port
try:
s.bind((HOST, PORT))
except socket.error as msg:
print 'Bind failed. Error Code : ' + str(msg[0]) + ' Message ' + msg[1]
sys.exit()
print 'Socket bind complete'
#Start listening on socket
s.listen(10)
print 'Socket now listening'
#now keep talking with the client
while 1:
#wait to accept a connection - blocking call
conn, addr = s.accept()
print 'Connected with ' + addr[0] + ':' + str(addr[1])
s.close()
保存该文件,并使用以下python命令运行它
[root@Chandan ~]# python portlistener.py Socket created Socket bind complete Socket now listening
对学习Python感兴趣吗?查看这个online course。
我希望以上步骤能帮助您创建用于连接性测试的端口监听程序。