依睛(IT blog) 我回来了,PHP<-->C/C++ LINUX

笨鸟

统计

积分与排名

友情连接

最新评论

IPV6地址详解

IPV6地址详解

来源: 巧巧读书 作者:- 时间:2007-01-15
  精彩推荐
 • CERNET部署西线抗震 全力保障网络畅通  • 奥运史上官方网站首次入驻下一代互联网

IPv6 地址是如何表示的?

 

IPv4 地址表示为点分十进制格式,32位的地址分成48位分组,每个8位写成十进制,中间用点号分隔。而IPv6128位地址则是以16位为一分组,每个16位分组写成4个十六进制数,中间用冒号分隔,称为冒号分十六进制格式。

 

 

例如:21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A 是一个完整的IPv6地址。

 

IPv6 的地址表示有以下几种特殊情形:

 

  IPv6 地址中每个16位分组中的前导零位可以去除做简化表示,但每个分组必须至少保留一位数字。如上例中的地址,去除前导零位后可写成:21DA:D3:0:2F3B:2AA:FF:FE28:9C5A

 

  某些地址中可能包含很长的零序列,为进一步简化表示法,还可以将冒号十六进制格式中相邻的连续零位合并,用双冒号“::”表示。“::”符号在一个地址中只能出现一次,该符号也能用来压缩地址中前部和尾部的相邻的连续零位。例如地址1080:0:0:0:8:800:200C:417A0:0:0:0:0:0:0:10:0:0:0:0:0:0:0分别可表示为压缩格式1080::8:800:200C:417A::1::

 

  IPv4IPv6混合环境中,有时更适合于采用另一种表示形式:x:x:x:x:x:x:d.d.d.d,其中x是地址中6个高阶16位分组的十六进制值,d是地址中4个低阶8位分组的十进制值(标准IPv4表示)。例如地址0:0:0:0:0:0:13.1.68.3 0:0:0:0:0:FFFF:129.144.52.38 写成压缩形式为::13.1.68.3::FFFF.129.144.52.38

 

  要在一个URL中使用文本IPv6地址,文本地址应该用符号“[”“]”来封闭。例如文本IPv6地址FEDC:BA98:7654:3210:FEDC:BA98:7654:3210写作URL示例为http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html

3.3.4 IPv6 地址为128位,配地址岂不是要花费很多时间?

 

IPv6 协议支持地址自动配置,这是一种即插即用的机制。IPv6节点通过地址自动配置得到IPv6地址和网关地址。

 

IPv6 支持无状态地址自动配置和状态地址自动配置两种地址自动配置方式。在无状态地址自动配置方式下,需要配置地址的网络接口先使用邻居发现机制获得一个链路本地地址。网络接口得到这个链路本地地址之后,再接收路由器宣告的地址前缀,结合接口标识得到一个全球地址。而状态地址自动配置的方式,如动态主机配置协议(DHCP),需要一个DHCP服务器,通过客户机/服务器模式从DHCP服务器处得到地址配置的信息。

 

  IPv6 地址都有哪些类型?

 

所有类型的IPv6地址都被分配到接口,而不是节点。IPv6地址是单个或一组接口的128位标识符,有三种类型:

 

(1) 单播(Unicast)地址

 

单一接口的标识符。发往单播地址的包被送给该地址标识的接口。对于有多个接口的节点,它的任何一个单播地址都可以用作该节点的标识符。IPv6单播地址是用连续的位掩码聚集的地址,类似于CIDRIPv4地址。IPv6中的单播地址分配有多种形式,包括全部可聚集全球单播地址、NSAP地址、IPX分级地址、站点本地地址、链路本地地址以及运行IPv4的主机地址。单播地址中有下列两种特殊地址:

 

不确定地址

 

单播地址0:0:0:0:0:0:0:0称为不确定地址。它不能分配给任何节点。它的一个应用示例是初始化主机时,在主机未取得自己的地址以前,可在它发送的任何IPv6包的源地址字段放上不确定地址。不确定地址不能在IPv6包中用作目的地址,也不能用在IPv6路由头中;

 

回环地址

 

单播地址0:0:0:0:0:0:0:1称为回环地址。节点用它来向自身发送IPv6包。它不能分配给任何物理接口。

 

(2) 任意播(AnyCast)地址

 

一组接口(一般属于不同节点)的标识符。发往任意播地址的包被送给该地址标识的接口之一(路由协议度量距离最近的)。IPv6任意播地址存在下列限制:

 

任意播地址不能用作源地址,而只能作为目的地址;

任意播地址不能指定给IPv6主机,只能指定给IPv6路由器;

 

IPv6 任意播地址

 

(3) 组播(MultiCast)地址

 

一组接口(一般属于不同节点)的标识符。发往多播地址的包被送给该地址标识的所有接口。地址开始的

标识该地址为组播地址。 

 

IPv6组播地址

 

IPv6中没有广播地址,它的功能正在被组播地址所代替。另外,在IPv6中,任何全“0”和全“1”的字段都是合法值,除非特殊地排除在外的。特别是前缀可以包含“0”值字段或以“0”为终结。一个单接口可以指定任何类型的多个IPv6地址(单播、任意播、组播)或范围。

 

IPV6IPV4的包结构

 

IPv4包头格式


4bit版本号 4bit报头长度 8bit服务类型 16bit数据包长度
标识符(16bit) 标志(4bit) 分段偏移(12bit)
生存时间(8bit) 传输协议(8bit) 报头校验和(16bit)
源IP地址(32bit)
目的IP地址(32bit)
选项(24bit) 填充(8bit)
     
 
表2 ipv6包头格式
4bit版本号 4bit优先级 24bit流标签
净荷长度(16bit) 下一报头(8bit) HOP限制(8bit)
源IP地址(128bit)
目的IP地址(128bit)
 

posted on 2008-12-18 14:14 向左向右走 阅读(381) 评论(0)  编辑 收藏 引用 所属分类: C/C++学习资料库

只有注册用户登录后才能发表评论。