gpt4 book ai didi

c - 如何在 linux 上从 c 中的 icmp 回复中提取 mac 地址

转载 作者:太空狗 更新时间:2023-10-29 15:33:35 24 4
gpt4 key购买 nike

我试图在发送原始数据包后找出交换环境中机器的 mac 地址。我正在尝试执行 traceroute 命令。我想知道当我收到 ICMP 超时消息时如何提取该机器的 mac 地址。我是网络编程的新手,所以很困惑什么套接字调用可以帮助我提取 mac 地址。

谢谢。

最佳答案

不,您不能从 ICMP 回复中提取 MAC 地址。

只能确定您旁边的链接机器的 MAC 地址。在 ICMP(tracert) 中,您可以找到目标或中间机器的 IP 地址。

如果你想检测 MAC 地址,你应该使用适用于本地网络而不是 Internet 的 ARP 协议(protocol)。

ICMP 协议(protocol)在 IPv4 header 之后开始[ 1 ]和MAC地址与物理/链路层有关。在低层中,MAC 地址将从顶层透明,例如网络(IP)或传输,...

要确定 MAC 地址,您应该使用原始套接字或 PCAP SDKs访问较低层的网络编程。 (我再说一遍,这些在互联网上没有用)

关于c - 如何在 linux 上从 c 中的 icmp 回复中提取 mac 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7820407/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com