看了其他的回答,几乎都用现有的工具,直接扫描,这里我已python为例,搜索一下局域网内所有活动IP,基本原理就是ping,对返回的结果进行分析,从而判断对应ip是否活动,代码很简单,实验环境win10 python3.6 pycharm5.0,主要内容如下:
1.获取本机系统类型,如果是windows系统,则ping命令使用参数n,如果是Linux等系统,则使用参数c,代码如下:
2.构建ping命令,这里先判断系统类别,选择对应参数,ping1次,对取回的结果进行分析,如果返回结果为空,则对应ip没有活动,如果TTL生存时间大于等于
0,则对应ip活动,打印出活动的ip,代码如下:
3.最后,就是ping局域网内所有的ip,这里为了快速获取,开启了多个线程同时执行,代码如下:程序运行结果如下,已经成功扫描出局域网内活动的ip:至此,我们就完成了利用python获取局域网内活动的ip。总的来说,整个过程不难,原理很简单,只要你有一定的python基础,稍微熟悉一下流程,很快就能掌握的,当然,相对于直接用现有软件来扫描,麻烦了很多,就当一个小实验吧,玩玩,如果是Linux系统的话,可以直接使用fping命令,就能完成对局域网内所有ip的扫描,这里我就不详细介绍了,感兴趣的可以到网上搜搜相关资料和教程,希望以上分享的内容能对你有所帮助吧。
搜索局域网内的所有IP地址,软件有很多,不过最简单的方式还是命令行方式,命令ARP,无需安装软件。想起十几年前,我负责管理学校学生私人电脑机房,那时候上网速度还是比较慢,打开一个新浪网页进度条要走好久。一根网线上百个人使用,由于是放学时间,电脑是自己的,每个人都想上网速度快,可入机房的总带宽只有那么可怜的一点。于是同学们就各显神通,使用攻击软件,扫描局域网的所有IP,进行ARP攻击,让局域网其他人上不了网,自己可以上网。这是一个自由的机房,机房圈子只有那么大,你ARP攻击跟室友说,室友又跟其他班级老乡说,老乡就告诉了他的所有老乡,最后大家都知道了,机房上演各种攻防大戏。有攻击就有防御,由于攻击软件不太方面说,那是大家防御软件,一个电脑都安装几个的,看的就是谁电脑配置高,安装的防御就多,防住的人,并且还可以上线QQ,玩传奇。防不住的人,只能玩单机。机房当时最受欢迎的,就是这2款,这2款其实,都形成了一种迷信,一个是拿着一把伞,心里认为有个保护伞,保护着电脑。另外瑞星是一个狮子,大家心里总感觉有头狮子在电脑中巡逻,现在看来,其实有没那头狮子在哪动来动去,其实都一样,只是个心里安慰。当时其实真正好用的是这款,单机,并且占用cpu资源小。我给很多人推荐过,基本安装这款大部分人都能上网了。说回正题,不知道题主搜索局域网所有ip,是否想做攻击行为,如果不是,是自家的路由器,登陆路由器web控制台,一眼就能看到局域网所有IP地址,完全没必要在公用局域网内扫描人家设备IP。不管你是window电脑还是*unx系列系统有个命令,叫ARP。这里以我电脑mac做示例,一眼看到局域网其他同伴IP:arp-aarp(选项)(参数)-a:显示arp缓冲区的所有条目;-H:指定arp指令使用的地址类型;-d:从arp缓冲区中删除指定主机的arp条目;-D:使用指定接口的硬件地址;-e:以Linux的显示风格显示arp缓冲区中的条目;-i:指定要操作arp缓冲区的网络接口;-s:设置指定的主机的IP地址与MAC地址的静态映射;-n:以数字方式显示arp缓冲区中的条目;-v:显示详细的arp缓冲区条目,包括缓冲区条目的统计信息;-f:设置主机的IP地址与MAC地址的静态映射。这个命令window下面也支持当然,除了路由器、arp命令,你也可以用工具,或者自己用代码实现,这里给下原理流程。不管你用什么语言写这个代码,流程应该都差不多步骤获取当前局域网段(例如192.168.1.1-255)循环ping这255个IP的每一个IP判断TTL或时间,存在即是一个活跃IP打印出来开发语言可以限制目前流行的Java、Python、Go等都可以。
cmd命令arp-a了解一下
抓包是最靠谱最准确的方式。在交换机上配置一个镜像端口,然后用wireshark抓包。或者用超级嗅探狗来检测,都可以实现。超级嗅探狗里面还有一个网络扫描插件,也可以扫描局域网客户机列表。
所有连接到网络中的设备都需要一个IP地址,IP地址是网络通信的前提基础。是不可绕过的一个参数,同时获得的还有对应的子网掩码默认网关还有可能有DNS。当一个设备和另一个设备进行通讯的时候,如果你指定的目的地址和你获得的IP地址是同一个网段(利用子网掩码运算),就会向全网广播ARP请求,所有连接在该网络的同网段的设备都会收到该广播,但是只有被请求IP地址的设备才会回应。所以扫描局域网IP地址的软件,利用的就是ARP广播请求来获得局域网中已在使用的IP地址的。自己也可以用拼命领来逐个的获取IP地址,当然会比较慢。比如AdvancedIPScanner,Lansee,NetworkScanner等!