笔记-TCP/IP IP地址字符串表示最大长度

笔记-TCP/IP IP地址字符串表示最大长度

IPv4

定义在 <netinet/in.h> 中:

#define INET_ADDRSTRLEN 16

IPv4地址字符串表示: 192.168.100.100

32位(bits)IPv4地址,使用10进制+句点字符串表示时,所占用的char数组的长度为16,包括最后一个NULL(‘\0’)结束符。

IPv6

定义在 <netinet/in.h> 中:

#define INET6_ADDRSTRLEN 46

128位(bits)IPv6地址,使用8组16进制字符串表示。

IPv6地址字符串的几种长度较长的表示方式:

表示方法 地址 长度 描述
一般表示 ABCD:EF01:2345:6789:ABCD:EF01:2345:6789 40 = 8*4 + 7 + 1 8组4位,7个:,1个NULL
混合表示 ABCD:EF01:2345:6789:ABCD:EF01:192.168.100.100 46 = 6*4 + 6 + 15 + 1 6组4位,6个:,IPv4,1个NULL

46 here is to support ipv4-mapped-on-ipv6.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章