unix ip 地址值

前端之家收集整理的这篇文章主要介绍了unix ip 地址值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这篇文章记录unix中ip地址的相关操作。此次总结后,希望能避免每次用到都要临时去查找的烦恼。 1、相关数据结构 1.1 struct sockaddr struct sockaddr { unsigned short sa_family; char sa_data[14] }; sockaddr 是通用地址结构,一般用 sockaddr_in 来解析,也就是解析sa_data的含义。 1.2 struct sockaddr_in struct sockaddr_in { short int sin_family; unsigned short int sin_port; struct in_addr sin_addr; unsigned char sin_zero[8] } sockaddr_in结构是sock_addr 的具体解析。将 sockaddr 中的sa_data.解析成两部分。 分别是6个字节和8个字节。前6个字节又分为 sin_port、struct in_addr 1.3 struct in_addr struct in_addr { unsigned long s_addr; }; 或 struct in_addr { union { struct { u_char s_b1,s_b2,s_b3,s_b4;} S_un_b; struct { u_short s_w1,s_w2;} S_un_w; u_long S_addr; //成员s_addr为长整形结构 } S_un; }; struct in_addr 用于记录4字节的ip. 2、地址转换函数 2.1 点分十进制转二进制 int inet_aton(const char *cp,struct in_addr *inp); 2.2 二进制转点分十进制 char *inet_ntoa(struct in_addr in);

猜你在找的Bash相关文章