当前位置: 技术问答>linux和unix
linux 中怎么根据MAC地址获得IP地址?(用C语言实现)
来源: 互联网 发布时间:2017-01-25
本文导语: 是通过ioctl()函数吗? 只知道根据IP地址怎么得到MAC地址,却不知道反过来怎么用C语言实现 | 可以获取所有接口的IP, 然后查MAC是否匹配. | struct ifreq req; char *devName="eth0"; //...
是通过ioctl()函数吗?
只知道根据IP地址怎么得到MAC地址,却不知道反过来怎么用C语言实现
只知道根据IP地址怎么得到MAC地址,却不知道反过来怎么用C语言实现
|
可以获取所有接口的IP, 然后查MAC是否匹配.
|
struct ifreq req;
char *devName="eth0"; // eth1...ethn
strcpy(req.ifr_name,devName);
ioctl(s,SIOCGIFHWADDR,&req);
char *devName="eth0"; // eth1...ethn
strcpy(req.ifr_name,devName);
ioctl(s,SIOCGIFHWADDR,&req);
|
arp -a
用popen调用一下
前提是曾经和那台机器通讯过
用popen调用一下
前提是曾经和那台机器通讯过
|
用ioctl就可以做到啊,居不闻ioctl还有个获得ip的选项乎?