加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

在Linux上使用C解析IP地址的MAC地址

发布时间:2020-12-14 01:48:17 所属栏目:Linux 来源:网络整理
导读:我需要生成一个包含目标MAC地址的以太网头,(因为libnfnetlink在预先路由发生之前只给出了IP头),外出接口号也是已知的,因此可以在正确的网络中进行查找. 从IP地址解析MAC地址的库/功能是什么? 解决方法 目前还不清楚为什么需要MAC地址,因为这通常是在较低级
我需要生成一个包含目标MAC地址的以太网头,(因为libnfnetlink在预先路由发生之前只给出了IP头),外出接口号也是已知的,因此可以在正确的网络中进行查找.

从IP地址解析MAC地址的库/功能是什么?

解决方法

目前还不清楚为什么需要MAC地址,因为这通常是在较低级别为您处理的.

但是,假设您的目标位于本地以太网段上,则可以使用arp命令在本地缓存中查找值.如果没有缓存该值……那么,这是一个问题.也许arping会有所帮助……

(通常你会发送一个数据包,例如,IP地址10.10.10.10,你的系统会发送一个ARP数据包,查询谁有10.10.10.10,并且响应将从该目标系统返回其MAC地址然后它会被缓存.(您可以通过tcpdump观察这种情况.)或者当系统上线时,它会发出一条广播消息,通知其他人的MAC地址.当然,如果您的目的地在另一个以太网段上,您将路由到网关而不是直接到目的地,并且没有可用的目标MAC地址.)

您可以进一步阅读:

> http://linux.die.net/man/8/arp
> http://linux.die.net/man/8/arping
> http://linux.die.net/man/7/arp
> http://www.kernel.org/doc/man-pages/online/pages/man7/arp.7.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读