内网的主机都是自动分配ip地址,有时候需要查看下有那些ip在使用,就写了个简单的脚本。

linux和windows下都可以用,用多线程来ping1-255所有的地址,效率不高,2分钟左右。 先凑合和用吧。

#-*- coding: utf-8 -*-
#author: orangleliu  date: 2014-11-12
#python2.7.x  ip_scaner.py'''
不同平台,实现对所在内网端的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 threaddef get_os():'''get os 类型'''os = platform.system()if os == "Windows":return "n"else:return "c"def ping_ip(ip_str):cmd = ["ping", "-{op}".format(op=get_os()),"1", ip_str]output = os.popen(" ".join(cmd)).readlines()flag = Falsefor line in list(output):if not line:continueif str(line).upper().find("TTL") >=0:flag = Truebreakif flag:print "ip: %s is ok ***"%ip_strdef find_ip(ip_prefix):'''给出当前的127.0.0 ,然后扫描整个段所有地址'''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()commandargs = sys.argv[1:]args = "".join(commandargs)    ip_prefix = '.'.join(args.split('.')[:-1])find_ip(ip_prefix)print "end time %s"%time.ctime()

是应用的时候: python ip_scaner.py 192.168.31.1 就会扫描 1-255所有的ip地址了。

D:\CodeHouse\python\tools>python ip_scaner.py 10.0.1.38
start time Wed Nov 12 18:50:58 2014
ip: 10.0.1.1 is ok ***
ip: 10.0.1.2 is ok ***
ip: 10.0.1.24 is ok ***
ip: 10.0.1.38 is ok ***
ip: 10.0.1.39 is ok ***
end time Wed Nov 12 18:52:16 2014

就这样。

本文出自 “orangleliu笔记本” 博客,转载请务必保留此出处http://blog.csdn.net/orangleliu/article/details/41048173

作者: orangleliu

[PythonCode]扫描局域网的alive ip地址相关推荐

  1. Linux下使用nmap扫描局域网存活的IP

    Linux下使用nmap扫描局域网存活的IP [root@z05 ~]# nmap -sP 192.168.0.0/24|grep 192. mass_dns: warning: Unable to ...

  2. Android 获取局域网内网IP地址

    Android 获取局域网内网IP地址 废话 上代码 完事 废话 拿局域网IP一般用在tcp通讯或udp通讯上,下次再整理下这类通讯的框架 上代码 /*** 网络工具* 获得局域网IP地址* @aut ...

  3. 计算机被篡改ip地址,windows7系统下局域网电脑被篡改IP地址如何解决

    局域网中很多用户都会喜欢共享一台打印机,但是有时候会遇到计算机ip被篡改的情况,导致无法正常使用网络打印机,那么要怎么办呢,接下来小编就给大家讲解一下windows7系统下局域网电脑被篡改IP地址的具 ...

  4. python扫描局域网端口和ip_python实现扫描局域网指定网段ip的方法

    一.问题由来 工作的局域网中,会接入很多设备,机器人上的网络设备就2个了,一个巨哥红外,一个海康可见光.机器人还有自身的ip. 有时候机器人挂的多了,设备维修更换中,搞来搞去就不记得ip是什么,用自带 ...

  5. php如何扫描局域网ip,python实现扫描局域网指定网段ip的方法

    一.问题由来 工作的局域网中,会接入很多设备,机器人上的网络设备就2个了,一个巨哥红外,一个海康可见光.机器人还有自身的ip. 有时候机器人挂的多了,设备维修更换中,搞来搞去就不记得ip是什么,用自带 ...

  6. 关于局域网计算机ip地址设置,在win7系统局域网内设置ip地址的方法

    局域网是指在某一区域内由多台计算机互联成的计算机组,当windows7系统设备连接进局域网时,为了方便区分,要在局域网内设置ip地址,这该怎么操作?我们可以通过控制面板来设置,下文小编告诉大家在win ...

  7. 查看局域网内所有ip地址

    查看局域网内所有ip地址 在dos下使用命令:arp -a

  8. 使用 NetworkInterface 获得本机在局域网内的 IP 地址

    转载于: https://segmentfault.com/a/1190000007462741 1.问题提出 在使用 Java 开发网络程序时,有时候我们需要知道本机在局域网中的 IP 地址.很常见 ...

  9. 扫描局域网的所有ip

    两种方法,直接上代码 using System; using System.Collections.Generic; using System.Linq; using System.Net; usin ...

最新文章

  1. Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT.
  2. JavaWeb总结(六)—Session
  3. 如何更科学的进行SEO优化?保持排名稳定
  4. python简单的小程序_初学python的一些简单程序(1)
  5. opencv 通过颜色提取显示屏数字
  6. 电量模块MODBUS RTU寄存器解读
  7. Boost:bind绑定的回归测试
  8. C语言之理解(*(void (*)())0)()和signal函数
  9. springcloud config服务端配置(一)
  10. flutter 输入框限制输入 数字、小数
  11. stm32的串口DMA空闲中断接收不等长数据,stm32F1的usart1-DMA-IDLE收发
  12. TSC条码打印机C#例程(tsclib.dll调用)
  13. 【数据结构的魅力】001.认识复杂度二分法异或运算
  14. Python 之 函数基础
  15. 服务器安装Ubuntu Server 18.04及磁盘分区
  16. 如何将LaTeX公式拷贝到Word中
  17. 很全的zencart 模板修改
  18. js php活动倒计时,js活动倒计时实现思路?
  19. 天田AMADA数控折弯机触摸屏维修RGM21003主机电路板维修
  20. Poco C++库简介

热门文章

  1. subprocess execv() arg 2 must contain only strings
  2. Android存储空间讲解
  3. 三个相同的字组成重字读法
  4. 全程中文!谷歌发布机器学习速成课,完全免费(附视听评测)
  5. 声卡设备无法正常工作或初始化的原因和解决方法
  6. 2021集创赛获奖作品合集
  7. 5G遥测终端城市排水管网监测系统
  8. 通过HSDB来了解String值的真身在哪里
  9. 2020年6月程序员工资统计,平均14404元,我又拖后腿了!
  10. x64Dbg基础知识