嵌入式 获取本地ip地址

原创 2013年12月02日 14:56:48

#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/ioctl.h>
#include <netinet/in.h>
#include <net/if.h>
#include <net/if_arp.h>
#include <arpa/inet.h>
#include <errno.h>
#defineETH_NAME       "eth0"        
int main() 
        
 int sock;
 struct sockaddr_insin;         
 struct ifreq ifr;
 sock = socket(AF_INET, SOCK_DGRAM, 0);
 if (sock == -1){
  perror("socket");
  return -1;
 }
 strncpy(ifr.ifr_name, ETH_NAME, IFNAMSIZ);
 ifr.ifr_name[IFNAMSIZ - 1] = 0;
 if (ioctl(sock, SIOCGIFADDR,&ifr) < 0){
  perror("ioctl");
  return -1;
 }
 memcpy(&sin,&ifr.ifr_addr, sizeof(sin));
 fprintf(stdout, "%s\n",inet_ntoa(sin.sin_addr));

 return 0;
}

相关文章推荐

【Linux网络编程】IP地址介绍

什么是 IP 地址 IP 地址(Internet Protocol Address)也称为网间地址、网际地址。IP地址是指互联网协议地址(英语:Internet Protocol Addre...

嵌入式 获取网卡设备以及IP和MAC地址示例以及网络编程之ioctl小结

#include #include #include #include #include #include #include #include #ifdef SOLAR...
  • skdkjxy
  • skdkjxy
  • 2014年04月28日 15:57
  • 1827

嵌入式linux通过DHCP自动获取IP地址实现

嵌入式linux通过DHCP自动获取IP地址实现
  • wjs1033
  • wjs1033
  • 2014年04月15日 21:15
  • 3118

嵌入式学习--step11 寄存器地址名称映射/系统时钟

1、先定义到外设基地址 #define PERIPH_BASE ((uint32_t)0x40000000) 2、定义到AHB1的外设基地址 #define AHB1PERIPH_BASE ...

嵌入式程序地址解析

转载地址:http://blog.csdn.net/linux_103/article/details/8888427搞ARM开发时,在连接目标代码会提到运行地址和加载地址。这两者有什么区别呢?其次,...

嵌入式资料地址汇总

1. 嵌入式業界新聞 2. 國內論壇及資源 ChinaUnix嵌入式開發 http://bbs.chinaunix.net/forum-225-1.html LinuxSir ...

嵌入式CPU的启动方式和启动地址

  • 2014年08月25日 14:16
  • 103KB
  • 下载

H3 BPM嵌入式流程解决方案 (文末附H3 BPM软件下载地址)

BPM 软件下载:http://bbs.h3bpm.com/read.php?tid=187&fid=11
  • echolia
  • echolia
  • 2016年09月08日 10:31
  • 339
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:嵌入式 获取本地ip地址
举报原因:
原因补充:

(最多只允许输入30个字)