IPv6之三层路由

前言

IPv6路由基础简单介绍分为三层:  IPv6通信基础、IPv6之静态路由、IPv6之缺省路由

 

 

一、IPv6通信基础

众所周知, 网络通信分为OSI七层和TCP/IP五层, 详见: 浅谈OSI七层模型

 

二层通信&三层通信

  • 二层通信

1. 依靠MAC地址表进行转发

2. MAC地址表自动生成

3. 依靠MAC地址标记主机身份

  • 三层通信

1. 依靠路由表进行路由寻址转发

2. 路由表形成方式: 直连、静态、动态

3. 依靠IP地址标记主机身份

那么这两者有什么联系呢?

简单的来说, 如果两个主机在同一个局域网中, 就是二层通信; 反之, 不在同一局域网就是三层通信

 

IPv6网关

网关用来转发来自不同网段之间的数据包:

IPv6之三层路由_第1张图片

同一局域网内的主机通信, 不需要网关转发; 不同局域网内的通信一定需要网关进行转发。

 

 

二、IPv6之静态路由

静态路由的作用:

更新维护组建路由表, 实现三层非直连通信

首先说一下什么叫 三层直连、三层非直连:

IPv6之三层路由_第2张图片

  • 三层直连

假设主机A和B不在同一局域网中,  两者要通信, 就要采用前面所说的三层通信, 依靠路由表完成通信, 这称为三层直连。

  • 三层非直连

如今, 有主机A和D, 两者明显不在一个局域网内,  更不在同一路由下(不在同一个交换机上),  这种情况下就是三层非直连通信。

这时候就要利用到静态路由来进行通信了。

静态路由是指由管理员手动配置和维护的路由

假设有如下三个局域网内的某主机之间相互进行通信:

IPv6之三层路由_第3张图片

  • R1与R3之间通信:

若R1想要访问R3, 首先R1上得有R3的路由表, 这时候就需要人为手工进行添加:

[R1] IPv6 ROUTE-STATIC FEC0:0:0:3:: 64 FEC0:0:0:A::3

FEC0:0:0:A::3 为下一跳地址(目的地址网段的进入口), 设置为目的地址所在设备的接口地址, ( 即为图中的 ::3 )

为什么呢?

假如下一跳设置在 ::1 , 那么从R1出来的流量就可能各有一半经过  ::3 和 ::2 , 造成通信混乱。

在广播型的接口 (如以太网) 上配置静态路由时, 必须要指定下一跳地址。且下一跳地址为目的地址所在设备的接口地址

  • R3与R1之间通信:

既然有了从R1到R3的路, 那么肯定也要有R3到R1的路, 路由表不能单单写单向的通信

[R1] IPv6 ROUTE-STATIC FEC0:0:0:1:: 64 FEC0:0:0:A::1

 

 

三、IPv6之缺省路由

缺省路由是目的地址和网络前缀全都为0的特殊路由 (相当于IPv4中的0.0.0.0)

如果报文的目的地址无法匹配路由表中的任何一项, 路由表将选择依照缺省路由来转发报文

IPv6之三层路由_第4张图片

假设R1这个0网段要访问R2的1,2,3网段, 如果对于每一个0网段访问1网段、2网段、3网段都人工写一个静态路由, 特别在网段多的时候, 就会变得很繁琐。

那么上图的R1到R2的通信缺省路由就这样写:

[R1] IPv6 ROUTE-STATIC :: 0 FEC0:0:0:A::2

其中, :: 0 就类似与IPv4中的0.0.0.0/0

R2到R1的通信就不能用缺省路由了,

若R2设置了到R1的缺省路由, 当PC2向PC1通信时, 万一R1内部的PC1宕机后, PC2到达R2后, 就会沿着缺省路由到达R1寻址通信, 这时就就无法找到宕机PC1的路由, 这时候就会默认用R1的缺省路由进行转发, 由于R1的缺省路由也是指向R2本身, 所以这时候会造成环路:

IPv6之三层路由_第5张图片

那么就要采用明细的路由写法

当R2下的终端路由数量过多时, 这时候配置起来就比较多了, 所以还有一种掩码聚合的方法,

用一个掩码的标识R1下的所有PC终端都包括在内:

[R2] IPv6 ROUTE-STATIC FEC0:: 63 FEC0:0:0:A::1

掩码63, 包含了R1下的 FEC0:0:0:1::0 和 FEC0:0:0:1::1

ps: 不能写成掩码62, 因为62包括了: FEC0:0:0:1::0 , FEC0:0:0:1::1,  FEC0:0:0:1::2, FEC0:0:0:1::3; 而后两者是在R2下的。

你可能感兴趣的:(IPv6专题)