我是靠谱客的博主 哭泣小懒虫,最近开发中收集的这篇文章主要介绍4.IPv4和IPv6地址长度,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

IPv4地址的二进制形式长度为32,使用我们常用的点分十进制形式进行表示那么最长长度为15,例如“255.255.255.255”

所以在posix的<netinet/in.h>中定义的IPv4地址字符串形式最大长度为16字节,‘’结束符也需要占据1个字节:

#define INET_ADDRSTRLEN 16

IPv6地址的二进制形式长度为128,使用16进制形式进行表示如“ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff”,一开始我以为IPv6地址字符串形式最大长度为128/4+7+1=40字节

但是看posix的<netinet/in.h>中定义的IPv6地址字符串形式最大长度为46字节

#define INET6_ADDRSTRLEN 46
原来IPv4映射的IPv6地址可能出现这种格式“ffff:ffff:ffff:ffff:ffff:ffff:255:255:255:255”,也就是45字节,加上结束符就是46字节了

最后

以上就是哭泣小懒虫为你收集整理的4.IPv4和IPv6地址长度的全部内容,希望文章能够帮你解决4.IPv4和IPv6地址长度所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部