2013-06-06 3 views
0

J'essaie de scanner le port disponible sur mon réseau à la maison. Mais j'ai eu quelques problèmes et erreurs. Quelqu'un peut-il me dire ce que la question va à mon scriptL'analyse du réseau a échoué

Voici mon script

#!/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) 

Et voici mon erreur

Port vérification 1 sur localhost tentative de connexion à localhost sur le port 1. La connexion à localhost sur le port 1 a échoué avec l'erreur suivante: [Errno 10061] Aucune connexion n'a pu être établie car la machine cible l'a refusée activement scan_server retourné le port de vérification Faux 2 sur localhost

tentative de connexion à localhost sur le port 2. Connexion à localhost sur le port 2 a échoué avec l'erreur suivante: [Errno 10061] Aucune connexion n'a pu être établie car la machine cible activement refusé il scan_server retourné le port de vérification Faux 3 sur localhost

tentative de connexion à localhost sur le port 3. connexion à localhost sur le port 3 a échoué avec l'erreur suivante: [Errno 10061] Aucune connexion n'a pu être établie car la machine cible activement refusé scan_server retourné Faux Port vérification 4 sur localhost

tentative de connexion à localhost sur le port 4. Connexion à localhost sur le port 4 a échoué avec l'erreur suivante: [Errno 10061] Aucune connexion n'a pu être établie car la machine cible activement refusé scan_server retourne faux port de vérification 5 sur localhost

tentative de connexion à localhost sur le port 5. connexion à localhost sur le port 5 a échoué avec l'erreur suivante: [Errno 10061] pourrait être Aucune connexion parce que la machine cible a activement refusée scan_server retourné Faux vérification du port 6 sur localhost

tentative de connexion à localhost sur le port 6.

Répondre

5

Il n'y a pas d'erreur. Votre machine locale (celle que vous numérisez) n'a rien à écouter sur ces ports, donc la connexion est refusée.

Je ne suis pas sûr de ce que vous entendez par «ports disponibles». Le système d'exploitation refusera les connexions sur n'importe quel port qui ne possède pas lié à. Sur les systèmes d'exploitation de type Linux, il y a un appel système nommé bind qui enregistre un programme comme ayant l'intention d'écouter sur ce port. La grande majorité des ports de votre machine seront 'disponibles' dans le sens où rien ne leur est lié.

Voici a reference of commonly used ports.

+0

Je suis désolé pour erreur. Je veux dire par l'échec de la tentative de connexion. En fait, j'essaie de trouver le protocole qui fonctionne sur chaque hôte qui se connecte à mon réseau. J'ai trouvé un script pour rechercher le port pour localhost. Mais je ne savais pas comment obtenir tous les autres ports de l'hôte. http: // codepad.org/HpzcVyet ceci est mon script pour scanner le port sur mon hôte local – topfer19

+0

J'ai expliqué pourquoi vous obtenez cet échec dans ma réponse. Cependant, si c'est ce que vous essayez de faire, utilisez simplement [nmap] (http://nmap.org) plutôt que d'essayer de l'écrire vous-même. – Chris

Questions connexes