Networking 网络扫描失败

Networking 网络扫描失败,networking,python-2.7,Networking,Python 2.7,我尝试在家中扫描网络上的可用端口。但是我遇到了一些问题和错误。有人能告诉我我的剧本是怎么回事吗 这是我的脚本 #!/usr/bin/env python import socket, sys from optparse import OptionParser def scan_server(address, port): s = socket.socket() print "Attempting to connect to %s on port %s." %(address, po

我尝试在家中扫描网络上的可用端口。但是我遇到了一些问题和错误。有人能告诉我我的剧本是怎么回事吗

这是我的脚本

#!/usr/bin/env python 

import socket, sys
from optparse import OptionParser 

def scan_server(address, port): 
s = socket.socket() 
 print "Attempting to connect to %s on port %s." %(address, port) 
 try: 
     s.connect((address, port)) 
     print "Connected to server %s on port %s." %(address, port) 
     return True 
 except socket.error, e: 
     print "Connecting to %s on port %s failed with the following error: %s" %(address, 
     port, e) 
     return False

if __name__ == '__main__': 
 parser = OptionParser() 
 parser.add_option("-a", "--address", dest="address", default="localhost",      
 parser.add_option("-p", "--port", dest="port", help="PORT for server", metavar="PORT") 
 (options, args) = parser.parse_args() 
 if options.port == 'all': 
     print 'checking all ports...' 
 for x in range(1,65536): 
     print 'checking port %s on %s' %(x, options.address) 
     check = scan_server(options.address, x) 
     print 'scan_server returned %s' %(check) 
 else: 
     options.port = int(options.port) 
     print 'options: %s, args: %s' %(options, args) 
     check = scan_server(options.address, options.port) 
     print 'scan_server returned %s' %(check) 
     Ssys.exit(not check)
这是我的错误

正在检查本地主机上的端口1 正在尝试连接到端口1上的本地主机。 连接到端口1上的本地主机失败,出现以下错误:[Errno 10061]无法建立连接,因为目标计算机主动拒绝它 扫描服务器返回False 正在检查本地主机上的端口2

正在尝试连接到端口2上的本地主机。 连接到端口2上的本地主机失败,出现以下错误:[Errno 10061]无法建立连接,因为目标计算机主动拒绝它 扫描服务器返回False 正在检查本地主机上的端口3

正在尝试连接到端口3上的本地主机。 连接到端口3上的本地主机失败,出现以下错误:[Errno 10061]无法建立连接,因为目标计算机主动拒绝它 扫描服务器返回False 正在检查本地主机上的端口4

正在尝试连接到端口4上的本地主机。 连接到端口4上的本地主机失败,出现以下错误:[Errno 10061]无法建立连接,因为目标计算机主动拒绝它 扫描服务器返回False 正在检查本地主机上的端口5

正在尝试连接到端口5上的本地主机。 连接到端口5上的本地主机失败,出现以下错误:[Errno 10061]无法建立连接,因为目标计算机主动拒绝它 扫描服务器返回False 正在检查本地主机上的端口6


正在尝试连接端口6上的本地主机。

没有错误。您的本地机器(您正在扫描的机器)在这些端口上没有任何侦听内容,因此连接被拒绝

我不知道你所说的“可用端口”是什么意思。操作系统将拒绝任何未绑定内容的端口上的连接。在类似Linux的操作系统上,有一个名为
bind
的系统调用,它将程序注册为打算在该端口上侦听。您机器上的绝大多数端口都是“可用”的,因为它们没有任何绑定


给你

没有错误。您的本地机器(您正在扫描的机器)在这些端口上没有任何侦听内容,因此连接被拒绝

我不知道你所说的“可用端口”是什么意思。操作系统将拒绝任何未绑定内容的端口上的连接。在类似Linux的操作系统上,有一个名为
bind
的系统调用,它将程序注册为打算在该端口上侦听。您机器上的绝大多数端口都是“可用”的,因为它们没有任何绑定


给你

对不起,我弄错了。我的意思是尝试连接失败。实际上,我正试图找出连接到我的网络的每台主机上运行的协议。我找到了一个脚本来搜索localhost的端口。但我不知道如何获得主机的所有其他端口。这是我在本地主机上扫描端口的脚本。我在回答中解释了为什么会出现这种错误。然而,如果这就是你想要做的,就用它,而不是自己写。我为这个错误感到抱歉。我的意思是尝试连接失败。实际上,我正试图找出连接到我的网络的每台主机上运行的协议。我找到了一个脚本来搜索localhost的端口。但我不知道如何获得主机的所有其他端口。这是我在本地主机上扫描端口的脚本。我在回答中解释了为什么会出现这种错误。然而,如果这就是你想要做的,那就用它,而不是自己写。