arp脚本的两种方法
来源:互联网 发布:淘宝店一件代发可靠吗 编辑:程序博客网 时间:2024/06/06 18:34
第一种是使用arping工具:
#!/usr/bin/env pythonimport subprocessimport sysimport redef arping(ipaddress = "192.168.1.1"): p = subprocess.Popen("/usr/sbin/arping -c 2 %s" % ipaddress, shell = True, stdout = subprocess.PIPE) out = p.stdout.read() result = out.split() for item in result: if ":" in item: print itemif __name__ == "__main__": if len(sys.argv) > 1: for ip in sys.argv[1:]: print "arping", ip arping(ip) else: arping()
这种方法依赖于特定平台的工具,整体就是使用了一个系统调用。
第二种是使用scapy,这种方法可以实现平台无关化
#!/usr/bin/env pythonfrom scapy import srp,Ether,ARP,confimport sysdef arping(iprange="192.168.1.1/24"): conf.verb = 0 ans,unans = srp(Enter(dst="ff:ff:ff:ff:ff:ff")/ARP(pdst=iprange), timeout=2) collection = [] for snd, rcv in ans: result = rcv.sprintf(r"%ARP.psrc% %Ether.src%").split() collection.append(result) return collectionif __name__ == "__main__": if len(sys.argv) > 1: for ip in sys.argv[1:]: print "arping", ip print arping(ip) else: print arping()
0 0
- arp脚本的两种方法
- LoadRunner录制WAP脚本的两种方法
- ant 脚本里面启动、停止tomcat的两种方法
- Python获得脚本当前绝对路径的两种方法
- [PostgreSQL] PG客户端调用sql脚本的两种方法
- 让shell脚本在后台运行的两种方法
- 第三讲、Jmeter的两种脚本录制方法
- linux 建立自启动脚本的两种方法
- ARP与ARP脚本
- ARP脚本
- arp脚本
- arp脚本
- ARP脚本
- arp脚本
- ARP脚本
- arp脚本
- arp脚本
- arp脚本
- dhtmlXGrid 同一个列表区,不同列显示
- jboos性能优化
- 更改文件的所有者 和 所属用户组
- explan_显示oracle执行计划的方法汇总
- 堆排序算法 总结
- arp脚本的两种方法
- android.database.sqlite.SQLiteConstraintException: error code 19: constraint failed错误原因
- VC++ ADO 连接 mysql
- STL 之remove,remove_if,remove_copy,remove_copy_if
- MQ、JMS以及ActiveMQ 关系的理解
- 清软国际课程体系
- OSM导入PostGreSQL数据库
- [转载]iOS6新特征:UICollectionView官方使用示例代码研究
- 关于 ComboBox 的下拉框的显示问题。