IPV6——简单介绍 - 梅利333

时间:2024-03-12 20:29:44

IPV6——简单介绍

IPV6地址

为什么要使用IPV6地址 ?

因为IPV4地址的耗尽,在很好已经就已经用完了,但是一些牛B的大神发明了nat,vlsm,cidr等牛B的技术,使得IPV4又抗了一段时间 。

但是终究还是摆脱不了不够用的现实。 

这个时候 IPV6出来了,

它的出现最大问题就是为了解决IPV4地址不够用这件事儿的。

 

地址个数

IPV4 2的32次方

IPV6 2的128次方,这可不是多了一点儿半点儿这么简单的。340万亿亿亿亿个

俗话说的好啊 ~全球都 用上IPV6之后,哪怕是地球上的一粒沙子,都会有一个IPV6地址,

可想其数量之庞大

并且现在我们使用的IPV6地址,仅仅是这340万亿亿亿亿中的一部份,用于过渡,

 

IPV4和IPV6的对比

32位                                         128位

有地址分类,ABCDE              地址没有分类

单播                                         单播

组播                                         组播

广播                                         无

                                                任意播

点分十进制                             冒号分十六进制

0.0.0.0                                     ::

 

IPV6的表现形式

1050:0000:0000:0000:0005:0600:300c:326b

这么长,怎么记呢?

可以简写

第一个:隔开的断儿,位首的0 可以不写,

另个,全为可以只写一个

1050:0:0:0:5:600:300c:326b

再有就是如果出现了连续的0:0:0(两个及两个以上)

可以使用::来代替,(但是有一个要求,如果整个地址中出现两段不连续的0:0只能简写一个)

1050::5:600:300c:326b

额,这个看起来也不是那么的简单对吧。

至少把所有的0都给省略了。

 

 

IPV6地址种类

PS:ipv6没有掩码的概念,最后的/X是代表前缀的意思,并且以十进制数来计算的

 

单播

1 全局单播地址2000::/3

可以被路由的,

问:2000::/3的地址范围是多少?

2000::/3------由于IPV6 没有网络号的概念,也没有广播的概念,所以第一个和最后一个都可以用。

需要换算,

2=二进制数0010

那么转换为变为最大则是0011 ,

变成IPV6的范围就变成了3FFF:FFF…../3

 

 

2 linklocal地址

FE80::/10,和IPV4下的169是一个意思

FE80开头

作用:

IPV6路由表中的动态路由使用链路本地地址作为下一跳地址

运行路由协议(eigrpv6,ospfv3)的路由器使用链路本地地址来建立邻居关系

路由器使用链路本地地址做为他们发送RA消息的默认网关

形成

  1 自动

  2 手动配置

1 自动形成,当接口被激活了IPV6以后,会自动生成一个IPV6的Linklocal 地址,

这个有什么用呢?其最主要的意义就在于IGP协议中做为下一跳使用。

自动生成的过程

根据 MAC ,进行EUI-64计算

c201.1d4c.0000 如何计算出IPV6地址呢?

1 将MAC地址一分为二

C201,1D   4C,0000

2 在中间加入FF FE

C201,1DFF  FE4C,0000

 

3 将第7位进行二进制反转(现在你看到的都是十六进制哦)

C 2

128 64 32 16 8 4 2 1 这是二进制反过来看数字

十六进制 A=10 B=11 C=12 D=13

12=8+4=1100,不够7位的呢,得算第二个

2=0010 这时就出来第七位了

11000010 第七位反转----=11000000

转换成十六进制是C0

 

4 前面不够的就加上FE80::

最终得出

FE80::C001:1DFF:FE4C:0000

 

正好和系统自动生成的对得上,没有问题

 

手动配置

当然也可以手动自己配置

配置方法

R1(config)#inter lo 1

R1(config-if)#ipv address fe80::1 link-local

 

 

 

环回地址::1/128   == 127.0.0.1

未指定地址::/128。0.0.0.0

唯一本地地址fc00::/7.私有地址

内嵌IPV4地址::/80

  

组播地址

已分配多播地址FF00::/8

请求节点多播地址

FF02::1:FF00:0000/104

 

为什么说IPV6中没有广播,没有广播那究竟是如何通信呢?

这和被请求节点多播地址有关,

FF02::1:FFXX:XXXX/104,这属于组播地址的范围之内

后面的XXXX是不固定的,是由IPV6后24位决定的。

 

Show ipv6 inter f0/0

 

 

 

首先,接口有MAC地址,然后通过 EUI64,计算出接口的link local地址,

再根据link local地址,得出ff02::1:ff4c:0,后面的4C00,后24位就是从接口的IPV6的后24位上拿下来用的。

 

 

 

 

 另外一个被请求节点的地址,是从global地址而来的

只要是有一个IPV6地址,那就会有一个被请求节点IPV6地址

 

取缔了IPV4的广播

有了这个被请求组播地址,你会发现,所有的这种地址都有着相同的前缀,FF02::1:FF

前面都相同,后面不同,那也就意味着他们属于同一个组,

既然属于同一个组,那就等于可以通信喽~

是的没错,

也正是因此,IPV6中使用该功能替代了ARP,V6不用广播,就要借助于组播

 

 

 

FF02::1,组播地址,相当于IPV4中的组播224.0.0.1

FF02:0:0:0:0:0:0:5

FF02:0:0:0:0:0:0:6  OSPFV3的组播地址

FF02:0:0:0:0:0:0:9  RIP 的组播地址

FF02:0:0:0:0:0:0:D (13)PIM

 

全部DHCP 服务器 FF05::1:3

 

IPV6组播地址对应的MAC是33-33开头的

 

------------------------------------------

CCIE成长之路 --- 梅利

IPV6地址

为什么要使用IPV6地址 ?

因为IPV4地址的耗尽,在很好已经就已经用完了,但是一些牛B的大神发明了nat,vlsm,cidr等牛B的技术,使得IPV4又抗了一段时间 。

但是终究还是摆脱不了不够用的现实。

 

这个时候 IPV6出来了,

它的出现最大问题就是为了解决IPV4地址不够用这件事儿的。

 

地址个数

IPV4 232次方

IPV6 2128次方,这可不是多了一点儿半点儿这么简单的。340万亿亿亿亿个

俗话说的好啊 ~全球都 用上IPV6之后,哪怕是地球上的一粒沙子,都会有一个IPV6地址,

可想其数量之庞大

并且现在我们使用的IPV6地址,仅仅是这340万亿亿亿亿中的一部份,用于过渡,

 

IPV4IPV6的对比

 

32                                        128

有地址分类,ABCDE                           地址没有分类

单播                                         单播

组播                                         组播

广播                                         

                                             任意播

点分十进制                                   冒号分十六进制

0.0.0.0                                                                                              ::

 

IPV6的表现形式

1050:0000:0000:0000:0005:0600:300c:326b

这么长,怎么记呢?

可以简写

第一个:隔开的断儿,位首的0 可以不写,

另个,全为可以只写一个

1050:0:0:0:5:600:300c:326b

再有就是如果出现了连续的000(两个及两个以上)

可以使用::来代替,(但是有一个要求,如果整个地址中出现两段不连续的00只能简写一个)

1050::5:600:300c:326b

额,这个看起来也不是那么的简单对吧。

至少把所有的0都给省略了。

 

 

IPV6地址种类

PS:ipv6没有掩码的概念,最后的/X是代表前缀的意思,并且以十进制数来计算的

 

单播

1 全局单播地址2000::/3

可以被路由的,

问:2000::/3的地址范围是多少?

2000::/3------由于IPV6 没有网络号的概念,也没有广播的概念,所以第一个和最后一个都可以用。

需要换算,

2=二进制数0010

那么转换为变为最大则是0011

变成IPV6的范围就变成了3FFF:FFF…../3

 

 

2 linklocal地址 FE80::/10,和IPV4下的169是一个意思

FE80开头

作用:

IPV6路由表中的动态路由使用链路本地地址作为下一跳地址

运行路由协议(eigrpv6,ospfv3)的路由器使用链路本地地址来建立邻居关系

路由器使用链路本地地址做为他们发送RA消息的默认网关

形成

  1 自动

  2 手动配置

1 自动形成,当接口被激活了IPV6以后,会自动生成一个IPV6Linklocal 地址,

这个有什么用呢?其最主要的意义就在于IGP协议中做为下一跳使用。

自动生成的过程

根据 MAC ,进行EUI-64计算

c201.1d4c.0000 如何计算出IPV6地址呢?

1 MAC地址一分为二

C201,1D   4C,0000

2 在中间加入FF FE

C201,1DFF  FE4C,0000

 

3 将第7位进行二进制反转(现在你看到的都是十六进制哦)

C 2

128 64 32 16 8 4 2 1 这是二进制反过来看数字

十六进制 A=10 B=11 C=12 D=13

12=8+4=1100,不够7位的呢,得算第二个

2=0010 这时就出来第七位了

11000010 第七位反转----=11000000

转换成十六进制是C0

 

4 前面不够的就加上FE80::

最终得出

FE80::C001:1DFF:FE4C:0000

正好和系统自动生成的对得上,没有问题

 

当然也可以手动自己配置

配置方法

R1(config)#inter lo 1

R1(config-if)#ipv address fe80::1 link-local

 

 

 

环回地址::1/128   == 127.0.0.1

未指定地址::/1280.0.0.0

唯一本地地址fc00::/7.私有地址

内嵌IPV4地址::/80

 

 

组播地址

已分配多播地址FF00::/8

请求节点多播地址

FF02::1:FF00:0000/104

 

为什么说IPV6中没有广播,没有广播那究竟是如何通信呢?

这和被请求节点多播地址有关,

FF02::1:FFXX:XXXX/104,这属于组播地址的范围之内

后面的XXXX是不固定的,是由IPV624位决定的。

 

Show ipv6 inter f0/0

首先,接口有MAC地址,然后通过 EUI64,计算出接口的link local地址,

再根据link local地址,得出ff02::1:ff4c:0,后面的4C00,24位就是从接口的IPV6的后24位上拿下来用的。

另外一个被请求节点的地址,是从global地址而来的

只要是有一个IPV6地址,那就会有一个被请求节点IPV6地址

 

取缔了IPV4的广播

有了这个被请求组播地址,你会发现,所有的这种地址都有着相同的前缀,FF02::1:FF

前面都相同,后面不同,那也就意味着他们属于同一个组,

既然属于同一个组,那就等于可以通信喽~

是的没错,

也正是因此,IPV6中使用该功能替代了ARPV6不用广播,就要借助于组播

 

FF02::1,组播地址,相当于IPV4中的组播224.0.0.1

FF02:0:0:0:0:0:0:5

FF02:0:0:0:0:0:0:6  OSPFV3的组播地址

FF02:0:0:0:0:0:0:9  RIP 的组播地址

FF02:0:0:0:0:0:0:D 13PIM

 

全部DHCP 服务器 FF05::1:3

 

IPV6组播地址对应的MAC33-33开头的