linux下 获取本机ip地址和掩码地址
来源:互联网 发布:国家地理域名德国 编辑:程序博客网 时间:2024/05/15 23:47
#include <stdio.h> int main(void) if(ioctl(sock, SIOCGIFADDR, &ifr) < 0) //取本机掩码
#include <string.h>
#include <unistd.h>
#include <net/if.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <arpa/inet.h>
#include <net/if_arp.h>
#include <string.h>
#include <asm/types.h>
#include <netinet/ether.h>
#include <sys/ioctl.h>
#include <linux/netlink.h>
#include <linux/rtnetlink.h>
#include <stdlib.h>
{
struct sockaddr_in *my_ip;
struct sockaddr_in *addr;
struct sockaddr_in myip;
my_ip = &myip;
struct ifreq ifr;
char *local_ip,*local_mask;
int sock;
if((sock = socket(AF_INET, SOCK_DGRAM, 0)) < 0)
{
return -1;
}
strcpy(ifr.ifr_name, "eth0");
//取本机IP地址
{
return -1;
}
my_ip->sin_addr = ((struct sockaddr_in *)(&ifr.ifr_addr))->sin_addr;
local_ip = inet_ntoa(my_ip->sin_addr);
printf(" local_ip is %s/n", local_ip);
if( ioctl( sock, SIOCGIFNETMASK, &ifr) == -1 ){
perror("[-] ioctl");
return -1;
}
addr = (struct sockaddr_in *) & (ifr.ifr_addr);
local_mask = inet_ntoa( addr->sin_addr);
printf(" local_mask is %s/n",local_mask);
close(sock);
return 0;
}
- linux下 获取本机ip地址和掩码地址
- linux下 获取本机ip地址和掩码地址
- linux下获取本机IP地址
- LINUX下获取本机IP地址
- Linux下获取本机IP地址
- linux下获取本机ip地址,ipv4和ipv6
- linux下获取本机ip地址,ipv4和ipv6
- Python获取本机所有网卡ip,掩码和广播地址
- Linux下C语言获取本机IP地址
- linux下c语言获取本机ip地址
- Linux下 shell获取本机ip地址
- Linux下Java获取本机IP地址
- Linux下C编程实现---获取本机IP地址
- linux下java获取本机IP地址
- MFC下如何获取本机IP和mac地址?
- win7下获取本机ip地址
- linux中获取本机ip和mac地址
- linux获取本机网卡ip地址
- BMP格式图片文件分析
- Test video sequences
- 在 muduo 中实现 protobuf 编解码器与消息分发器
- ifreq结构定义在/usr/include/net/if.h,用来配置ip地址,激活接口,配置MTU等接口信息的。
- typedef struct sockaddr_in
- linux下 获取本机ip地址和掩码地址
- 闪客工具:基于Flash 3D API Molehill 进行GPU加速2D的引擎
- struct ethhdr、ether_header、iphdr、tcphdr、udphdr
- linux下 获取本机网关
- 用ioctl获得本地ip地址
- inux C 获取与修改IP地址
- 中断xmlHttp请求
- 程序员建议
- asp.net利用多线程执行长时间的任务,客户端显示出任务的执行进度