查询内核arp缓存中与ip地址对应的mac地址

arpreq的Python项目详细描述


https://travis-ci.org/sebschrader/python-arpreq.svg?branch=masterhttps://img.shields.io/pypi/v/arpreq.svg?maxAge=2592000https://img.shields.io/pypi/pyversions/arpreq.svg?maxAge=2592000https://img.shields.io/pypi/implementation/arpreq.svg?maxAge=2592000https://img.shields.io/pypi/wheel/arpreq.svg?maxAge=2592000https://img.shields.io/pypi/l/arpreq.svg?maxAge=2592000

PythonC扩展,用于查询内核ARP缓存的MAC地址 给定的IP地址。

用法

arpreq模块公开一个函数arpreq,它将 将给定的IPv4地址解析为MAC地址。

IP地址只有在相同的情况下才能解析为MAC地址 子网作为您的计算机。

假设您当前的机器有地址192.168.1.10,并且 另一台地址为192.168.1.1的计算机位于同一子网上:

>>>importarpreq>>>arpreq.arpreq('192.168.1.1')'00:11:22:33:44:55'

如果IP地址不能解析为MAC地址,则不返回任何地址。

>>>arpreq.arpreq('8.8.8.8')isNoneTrue

IP地址也可以指定为int或富IP地址数据类型 共同的ipaddripaddressnetaddr模块。

>>>arpreq.arpreq(0x7F000001)'00:00:00:00:00:00'>>>importnetaddr>>>arpreq.arpreq(netaddr.IPAddress('127.0.0.1'))'00:00:00:00:00:00'>>>importipaddr# on Python 2>>>arpreq.arpreq(ipaddr.IPv4Address('127.0.0.1'))'00:00:00:00:00:00'>>>importipaddress>>>arpreq.arpreq(ipaddress.IPv4Address(u'127.0.0.1'))'00:00:00:00:00:00'

支持的平台

这个扩展只在linux上测试过,但是它应该在 任何支持SIOCGARPioctl的平台,实际上 每个bsd、linux和mac操作系统。

更改日志

V0.3.3(2017-05-03)

  • 禁用PYPY3上的PEP-489
  • 在pypy3上禁用pymodule\u getstate
  • 提供Debian软件包

V0.3.2(2017-05-03)

  • 支持点对点VETH对(参见6)
  • 接受python 2上的unicode对象和python 3上的bytes对象(请参见5)
  • 一些测试改进

V0.3.1(2016-07-06)

  • 不要使用private pyerr chaineexceptions(debian jessie上的中断)

v0.3.0(2016-06-26)

  • 在Python3.5+上使用PEP 489多阶段扩展模块初始化
  • 如果模块初始化失败,请关闭套接字
  • 代码清理

V0.2.1(2016-06-26)

  • 修复内存集溢出

v0.2.0(2016-06-09)

  • 提供python轮子
  • 支持int和富IP地址对象作为IP地址参数
  • 在arpreq期间释放gil
  • 添加单元测试
  • 重新创建mac字符串
  • 重新构造模块初始化

V0.1.0(2015-11-28)

  • 初始版本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java我想从HTML字符串中提取图像URL和文本。以下是我的要求   java jersey@PathParam:如何传递包含多个斜杠的变量   Java如何精确地显示double,而它不能用二进制科学符号精确地表示?   没有显式类型信息属性的具体类反序列化上的java Jackson对象映射器“缺少类型id”   java将图像转换为BuffereImage   具有相同名称的java线程   缓冲区类中的java Rewind()和flip()方法   继承类中的Java类泛型NullPointerException   创建自己的Java异常子类   java预期结果为<0>而不是日期   JAVAClassCastException:安卓。小装置。ImageButton无法强制转换为安卓。小装置。文本框   java如何在Selenium网格中阻止Chrome RemoteWebDriver中的任何URL   Java日期验证   java JDK版本问题(ASM5无法创建注释扫描程序异常)   datetime Java更改字符串日期格式?   读取事件时,java位置始终为空   java暂停后,恢复下载文件在IE中不工作,如果是大型加密文件(例如10Gb),在Chrome中工作正常   java JorgeCastilloPrz的AndroidFillableLoaders库SVGPath问题   linux在JRE中运行java编译类,错误:无法找到或加载主类