文章
问答
冒泡
Mac上使用Python脚本扫描局域网内所有活动的主机
""""
    不同平台,实现对所在内网端的ip扫描。有时候需要知道所在局域网的有效ip,但是又不想找特定的工具来扫描。
    使用方法 python ip_scaner.py 192.168.1.1
    (会扫描192.168.1.1-255的ip)
"""

import platform
import sys
import os
import time
import _thread

def ping_ip(ip_str):
    cmd = ["ping", "-c", "1", ip_str]
    output = os.popen(" ".join(cmd)).readlines()
    flag = False
    for line in list(output):
        if not line:
            continue
        if str(line).upper().find("TTL") >= 0:
            flag = True
            break
    if flag:
        print("ip: %s is ok ***" % ip_str)


def find_ip(ip_prefix):
    for i in range(1, 256):
        ip = "%s.%s" % (ip_prefix, i)
        _thread.start_new_thread(ping_ip, (ip,))
        time.sleep(0.3)


if __name__ == "__main__":
    print("start time %s" % time.ctime())
    cdg = sys.argv[1:]
    args = "".join(cdg)
    ipf = ".".join(args.split(".")[:-1])
    find_ip(ipf)
    print("end time %s" % time.ctime())
python

关于作者

小乙哥
学海无涯,回头是岸
获得点赞
文章被阅读