首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ping响应是否包含MAC地址?

ping响应是否包含MAC地址?
EN

Stack Overflow用户
提问于 2016-11-05 03:27:00
回答 3查看 3.7K关注 0票数 1

我正在尝试使用esp8266来查找在同一子网上注册的ip地址以及它们在家庭自动化项目中的mac地址。ping响应是否包含设备的MAC地址,或者是否可以通过本地网络请求该地址。

EN

回答 3

Stack Overflow用户

发布于 2016-11-05 13:32:31

在*nix系统上,您可以运行arping <some-ip>来获取同一网络上的机器的MAC地址(当然,只有那些无需通过网络路由就可以获取数据包的机器)。

正如rodolk建议的那样,您可以运行pcap并查看以太网帧。以太网帧包含源MAC、目的MAC和以太网类型。如下所示:

代码语言:javascript
运行
复制
uint8_t  ether_dhost[ETHER_ADDR_LEN];    /* destination MAC address */
uint8_t  ether_shost[ETHER_ADDR_LEN];    /* source MAC address */
uint16_t ether_type;                     /* packet type ID */

您可以嗅探数据包并解析以太网报头,或者您可以运行arping,我认为这应该可以满足您的目的。

票数 3
EN

Stack Overflow用户

发布于 2016-11-05 03:50:42

Ping未显示MAC地址。它只是简单地告诉你服务器是否在线。您可以在windows上使用"nbtstat -a ip“命令来执行此操作。

票数 0
EN

Stack Overflow用户

发布于 2016-11-05 09:21:30

如果您在给定IP地址(第3层)的情况下尝试获取MAC地址(第2层),则可以使用RARP。否则,如果您使用ping,在第3层您将无法访问ping响应的MAC地址。但是,您可以使用pcap来嗅探网络,使用适当的pcap筛选器读取ping回复,并从到达的以太网帧中获取MAC地址。您还可以使用数据包套接字来获取第2层帧。pcap应该是有用的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40430423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档