ポートが占有されているかどうかPython-モニター

#!は/ usr / binに/ envをPythonの
# - * -コーディング:UTF-8 - * -

インポートソケット、時間、スレッド
socket.setdefaulttimeout(3) 設定されているデフォルトのタイムアウト

DEF  socket_port (IP、ポート):
    "" "
    入力IPとポート番号、ポートが占有スキャンするかどうかを判断し
    、 ""」
    :試してみる
        場合は、ポート> = 65535:
            印刷  U 'ポートスキャン終了'を
        S = socket.socket(はsocket.AF_INET、socket.SOCK_STREAM)
        結果= s.connect_ex((IP 、ポート))
        結果IF == 0:
            lock.acquire()
            IP、プリントUを':'、ポート、U 'ポートが占有'
            (lock.release)を
    除い:
        プリント  U 'ポートスキャンの異常'を

デフ  ip_scan (IP):
    "" "
    IP、スキャンIP-0から65534までのポートを入力
    """
    試してみる:
        プリント  Uは%IP 'スキャンS%始まり'
        (= START_TIME time.timeを)
        私のための  範囲内(0、:65534)
            thread.start_new_thread( socket_port、(IPは、INT(I)))
        印刷  U:%(time.time() - START_TIME) 'で、ポートスキャンが完了した合計時間を%2F。'
#raw_input( "コピーを押して終了します")
    を除い:
        印刷  U」をスキャンエラーIP '

IF __name__ __ == ' __main__ ':
    URL = raw_input('あなたが入力スキャンするIP:「)
    ロックthread.allocate_lock =()
    ip_scan(URL)      

おすすめ

転載: www.cnblogs.com/jcjone/p/12158434.html
おすすめ