IP地址之IPv6

一、IPv6概述

  目前使用的IP地址都是IPv4版本,之所以开发出IPv6版本主要是基于以下原因:

    1、IPv4地址空间不足,分配不合理;

    2、IPv4头部太过于复杂;

    3、使用IPv4使得路由器及主机配置复杂;

    4、对于IPv4重新编址很困难;

    5、使用IPv4会造成庞大的路由表信息;

    6、IPv4对于安全、组播、移动网络的支持不够。

  针对于以上问题,目前所采用的解决方法如下:

    1、NAT

     使用NAT技术来将内网的私有地址转换成可以在公网通信的IP地址,节省地址空间;但做NAT会消耗系统资源,而且会破坏端到端IP应用。

    2、子网划分

     子网划分是将一个大的IP段划分为多个小的IP段,以满足更多的网络需求;但子网划分会进一步造成IP的浪费,每个网络都有一个网络地址和一个广播地址,这两个地址是不能进行通信的,所以划分的网络越多,IP就浪费的越多。

    3、DHCP

     DHCP可以根据需要来自动的分配IP地址,长时间不用的IP就会回收以便再次分配出去。

    4、无类域间路由(CIDR)

     CIDR用于解决路由表庞大的问题,CIDR会将属于一个子网的多条路由条目I汇总成一条路由以减少路由表的复杂度。

    5、加强地址管理

二、IPv6基本包头

1.jpg

  IPv6的基本包头相对于IPv4要减化了不少,其各项的含义如下:

    Version:版本,值为6;

    Traffic class:相当于IPv4中的Service Type,用于标识服务类型。

      PPP:表示IP数据包的优先级,很少使用;

      D:若为0表示一般延迟,若为1表示为低延迟;

      T:若为0表示一般传输量,若为1表示高传输量;

      R:若为0表示为一般可靠度,若为1表示高可靠度。

    Flow Label:流标签,长度为20位,用于标识同一数据流。

    PayloadLength:包的总长度,相当于IPv4中的Package Length。

    Next header:包后面的上层协议,相当于IPv4中的Protocol。

      1:ICMP

      4:IP

      6:TCP

      17:UDP

     除了以上的协议标识外,Next header还可以是标识扩展头,后面会介绍。

    Hop Limit:相当于IPv4的TTL,取值范围1-255。

三、IPv6扩展头

  扩展头位于IPv6的基本头于四层段头之间的位置。

  IPv6中定义了6大选项扩展头:逐跳选项头、选路头、分段头、目的地选项头、身份验证头(AH)头,封装安全性净荷(ESP)头。

  扩展头用于实现IPv6中的扩展功能,由于IPv6尚未普及各个扩展头的功能就不此描述了,下面看一下各个扩展头在Next header字段中所对应的值

    0:逐跳头

    43:选路头

    44:分段头

    51:身份验证头

    52:封装安全性净荷头

    59:没有下一跳

    60:目的地选项头

  RFC1883规定,扩展头链接应按以下顺序:

    1、IPv6基础头

   2、逐跳选项头

    3、目的地选项头

    4、选路头

    5、分段头

    6、身份验证头

    7、封装安全性净荷头

四、IPv6编址

  IPv6采用128位二进数值来标识地址信息,为了简化书写和记忆的难度,将其转换成16进制数值。

  IPv6地址的表示法有三种,分别是:

    1、首选格式

     直接将二进制数转换成十六进制数。

    2、压缩表示

     方法1:前导0省略。

     方法2:连续两个冒号之间的0可以省略,直接用两个冒号即可,如“::”,但一个IPv6地址只能使用一次,否则会发生混淆。

  IPv6地址分单播地址、组播地址、任意播地址。

    1、单播地址

     单播地址就是可以在互联网上进行通信的地址。单播的范围为:2000::/4-3fff::/4。

    2、链路本地地址

     用于同一个链路上的相邻节点之间通信,相当于IPv4里面的169.254.0.0/16地址。IPv6的路由器不会转发链路本地地址的数据包。其前缀为FE80::/64,其前缀是固定不变的。

    3、站点本地地址

     对于无法访问internet的本地网络,可以使用站点本地地址,这个相当于IPv4里面的私有地址。前缀是FEC0::/48。站点本地址址已被收回,其原因是IPv6数据足够多,不需要私有地址来节省空间了。

    4、回环地址

     回环地址::1用于标识一个回环接口,可以使一个节点可以给自己发送数据包。相当于IPv4的回环地址127.0.0.1。

原创文章,作者:petmaster,如若转载,请注明出处:http://www.178linux.com/10995

(1)
petmasterpetmaster
上一篇 2016-01-13
下一篇 2016-01-13

相关推荐

  • shell脚本基础

    编程基础 v程序:指令+数据 v程序编程风格: 过程式:以指令为中心,数据服务于指令(适合小型程序) 对象式:以数据为中心,指令服务于数据(适合大型程序) vshell程序:提供了编程能力,解释执行 程序的执行方式 v计算机:运行二进制指令; v编程语言: 低级:汇编 高级: 编译:高级语言–>编译器–>目标代码 java…

    Linux干货 2016-08-15
  • vim 文本编辑器

    vim 文本编辑器 vi 简介 vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器。Linux中的vi编辑器叫vim,它是vi的增强版(vi Improved),与vi编辑器完全兼容,而且实现了很多增强功能。 vi编辑器支持编辑模式和命令模式,编辑模式下可以完成文本的编辑功能,命令模式下可以完成对文件的操作命令,要正确使用vi编辑器就…

    Linux干货 2016-08-16
  • bash之脚本入门及课后作业

    概述: shell是一个工具程序,在用户登录后后系统启动,它解释并运行由命令或脚本文件输入的命令,从而实现用户与内核之间的交互。bash是Linux操作系统上默认的shell,在交互和编程两方面,bash提供了许多Bourne shell没有的功能,并且还结合了C shell和Kron shell最有用的功能。 bash的语法和结构   …

    Linux干货 2016-08-15
  • linux命令简单应用

    创建/tmp目录下的:a_c, a_d, b_c, b_d touch /tmp/{a,b}_{c,d} [root@bogon ~]# tree /tmp /tmp |– a_c |– a_d |– b_c |– b_d 创建/tmp/mylinux目录下的: mylinux/ ├── bin ├── boo…

    Linux干货 2016-11-06
  • nginx 配置参数说明和实验

    nginx.org 实验版本: 1.10.2 相关命令: # nginx -t //检查配置文件格式 #nginx -s reload //重新载入配置文件 实验: 主配文件大概组成 主配置文件的设定 /etc/nginx/nginx.conf events{..} //事件驱动相关 http{..} //网站服务相关 全局配置段解读与实验: user ng…

    2017-05-12
  • LinuxGrub修复方法

    Linux因Grub损坏的修复方法: 1)救援模式修复(备份了MBR) 2)救援模式修复(无备份MBR) 3)Grub下手动启动Linux系统 1、救援模式修复(备份了MBR)     MBR中存放了Bootloader信息(Grub),在磁盘的最开始512字节,当这512字节出现故障,系统将无法引导启动。 &nbsp…

    Linux干货 2016-06-22