linux IP地址转换及网络字节序
来源:互联网 发布:地图画路线软件 编辑:程序博客网 时间:2024/06/10 19:10
文献参考:
http://roclinux.cn/?p=1160
一、IP地址的表示法:
1、ASCII表示法:
210.25.132.181,也就是字符串形式,英语叫做IPv4 numbers-and-dots notation。
2、整型表示法:
3524887733,整数形式的IP地址,。英语叫做binary data。
二、IP地址的转换:
IPv4 :
1、inet_addr函数
#include <arpa/inet.h>
in_addr_t inet_addr(const char* strptr);
将字符串转换为32位二进制网络字节序的IPV4地址,即将一个点间隔地址转换成一个in_addr。
2、inet_ntoa函数
#include <arpa/inet.h>
char* inet_ntoa(struct in_addr in);
3、inet_ntoa函数将一个十进制网络字节序转换为点分十进制IP格式的字符串。
#include <arpa/inet.h>
int inet_aton(const char *string, struct in_addr *addr);
是一个改进的方法来将一个字符串IP地址转换为一个32位的网络序列IP地址。
IPv6 :
1、inet_pton函数
2、inet_ntop函数
程序示例:
#Include <sys/types.h>
#include <sys/socket.h>
#include <arpa/inet.h>
strcut sockaddr_in src;
src.sin_addr.s_addr = inet_addr("*.*.*.*"); //构建网络地址。
printf("%s\n",inet_ntoa(src.sin_addr)); //将网络地址转换成字符串。
三、本机字节顺序与网络字节顺序的转换
#include <arpa/inet.h>
htons ------"host to network short"
htonl -------"host to network long"
ntohs -------"network to host short"
ntohl -------"network to host long"
- linux IP地址转换及网络字节序
- Linux下网络IP地址的转换,主机字节顺序和网络字节顺序的转换。
- 网络IP地址转换、主机字节顺序、网络字节顺序的转换 -- linux
- socket编程 -- 网络字节序、IP地址转换、sockaddr数据结构
- Linux 网络编程——网络字节序、地址转换
- Linux 网络编程——网络字节序、地址转换
- 【linux网络编程】网络字节序、地址转换
- Linux 网络编程——网络字节序、地址转换
- 网络字节转换函数--IP地址转换--字符->int_32
- IP地址点分十进制格式转换为网络字节序二进制以及八进制十六进制输出
- (四十八)socket编程——引入、网络字节序、IP地址转换函数、sockaddr数据结构
- 网络字节序和地址转换
- ip地址 网络字节序 主机字节序的关系
- linux c 网络编程:用域名获取IP地址或者用IP获取域名 网络地址转换成整型 主机字符顺序与网络字节顺序的转换
- 六、Linux网络编程-socket、套接字地址结构、地址转换、字节序、套接字类型
- ip 主机字节序 网络字节序转换
- linux网络字节转换
- linux网络编程之socket(一):socket概述和字节序、地址转换函数
- 169. Majority Element
- JavaScript中的原型(prototype)和闭包(closure)(转)
- cannot convert value of type 'String!' to expected argument type 'inout String'
- Java druid的使用
- ubuntu14.04LTS安装docker
- linux IP地址转换及网络字节序
- Java开发必会的Linux命令
- 关于报错Self referencing loop detected with type的原因以及解决办法
- 最短排序
- PHP自学no00010特殊数据类型之空值
- HTML简介
- Androd调试
- iOS面试之递归算法博主菜鸟历程第一卷
- Android ListView封装类