本文概述
在项目团队中工作时, 一项艰巨的任务是尽管不存在服务, 但仍执行必要的连通性测试。
在DMZ环境中进行迁移或新建项目时, 通常必须这样做。
让我们以一个实时示例为例-你正在进行迁移, 并且必须确保特定端口上的应用程序” A”与” B”之间存在连接。
好。你可以执行telnet, 这很简单, 但是” B”何时没有任何服务在运行呢?在这种情况下, 你需要端口监听器来提供帮助。
如果你遇到类似情况或觉得这对你的工作有益, 那么这里有几种在Windows或UNIX平台上实现此目标的方法。
在Windows OS中创建后监听器
要在Windows中的特定端口上具有端口监听器, 可以使用”端口监听器”实用程序。
Windows 95至Windows 10可以免费使用此实用程序。
- 从此处以zip或exe格式下载Post Listener
- 在本指南中, 我将下载exe格式
- 双击下载的postlistener.exe文件
- 它将提示你选择要提取文件的位置, 单击解压缩
- 在此示例中, 转到提取文件的路径;我在c:listener
- 双击监听器以启动该实用程序
- 输入你要测试的端口号, 然后单击开始
- 在上面的示例中, 我从5500开始监听端口, 现在该验证端口是否正在运行。
打开命令提示符并运行netstat以验证端口5500是否正在侦听
是的, 现在我已经在Windows中成功创建了端口监听器。
在Linux OS中创建后监听器
在Linux中, 此过程略有不同。在这里, 我们将使用netcat(nc)命令启动监听器。
- 要安装nc, 可以使用yum命令
yum install nc
- 安装完成后, 使用以下命令在后台将端口监听器启动为5500。
nc –l 5500 &
- 为了验证, 让我们使用netstat命令
[[email protected] ~]# netstat -anlp |grep 5500
tcp 0 0 0.0.0.0:5500 0.0.0.0:* LISTEN
21085/nc
[[email protected] ~]#
所以在这里, 我已经成功侦听了端口5500。在Linux上这样做会更舒适, 不是吗?
使用Python创建端口监听器
以上两个示例仅限于OS。如何拥有可以在Windows或UNIX上运行的python脚本呢?
好吧, 我发现了以下适用于Windows和Linux的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命令运行它, 如下所示
[[email protected] ~]# python portlistener.py
Socket created
Socket bind complete
Socket now listening
有兴趣学习Python吗?查看此在线课程。
我希望以上过程可以帮助你创建用于连接测试的端口监听器。
评论前必须登录!
注册