IE 笔记
IPv6:
一、为什么需要IPv6?
a、IPv4地址空间不足(2的32次方)
b、IPv6地址空间很大,近乎无限。
二、什么是IPv6?
a、基础格式:
128bit使用16进制划分,共分为8段,每段中的每个数字就是一个16进制数,使用“:”隔开
b、组成:
网络前缀:默认 ::/64
接口标识:
三、地址表示:
a、每一组的前导“0”可以省略
b、地址中包含连续全为0的组,可以用双冒号代替,仅使用一次
例:
2001:0000:0000:0001:0000:0000:0000:0001-------》2001::1:0:0:0:1、2001:0:0:1::1
2001:0db8:85a3:0000:1319:8a2e:0370:7344-------》2001:db8:85a3::1319:8a2e:370:7344
2001:0DB8:0000:0000:0000:0000:1428:57ab------》2001:DB8::1428:57ab
2001:0DB8:0000:0000:0F78:0000:0000:57ab------》2001:DB8::F78:0:0:57ab
四、IPv6报头格式:
4.1 IPv4和IPv6报头格式的区别
- 新增字段:flow lable流标签;作用:实时流量自动切换,如果之前的链路占用率过大,会自动切换路径重新发送,一个流标签加一个源地址,能确定一条路径。
用于Qos技术
- IPv6比IPv4更精简
- next-header 字段:对应IPv4报头的上层协议字段
没有特殊需求时,和IPv4中的上层协议没有区别,发送基本报头。
有特殊需求:只发给对端需要的
扩展报头:IPv4在选项字段里面,发送时会整体发送
IPv6在扩展报头即next-header,只发对方有需求的
五、地址分类
1、单播地址
链路本地地址(link-local)代替了ARP的功能
1.1 什么是链路本地地址?为什么需要链路本地地址?
设备的接口自动配置的地址,相当于3层MAC地址(V4上是经过路由器到交换机是再到主机是通过ARP来寻找PC的MAC地址,V6里面就不用ARP来找PC的MAC地址了,直接是通过本地链路地址来找MAC地址)
作用:帮助路由器在本广播域下进行数据转发
( 固定前缀:FE80::/10
1.2 生成方式
- 通过软件自动生成:
- 手动配置;
- EUI-64生成接口标识;
1.3 EUI-64
MAC地址的第24位后插入FFFE,并且第七位取反,即生成接口标识
为什么需要?因为IPv6的低64位就是由EUI-64生成的
链路本地地址没有网络位,是为了顶替ARP的,是3层Mac地址,仅局限于本地链路内
2、组播地址
地址范围:FF00::/8
2.1 节点本地范围与链路本地范围的区别:
节点本地指本设备有效,链路本地指这个广播域有效。
- FF02::1 支持IPv6的设备
- FF02::2 支持所有IPv6的设备和协议的组播地址
2.2 被请求节点组播地址
2.2.1 作用是什么?
- 作用:提高数据的传输效率
- 被请求节点组播地址,在收到全球单播之后,在自己组内进行广播寻找对应的单播地址,然后回复对方。
- 一个组播组的报文发给另一个组播组,然后这个组播组中的被请求节点组播地址找和它对应的全球单播地址进行发送
- 有效范围:本链路内
- 链路本地地址对应被请求节点组播地址,全球单播地址对应被请求节点组播地址。自动创建自动加入
2.2.2 生成方式:
- 由公网地址和link-local映射自动生成
- 固定前缀:FF02::1:FF00:0/104
- 有效范围:本地链路有效
3、全球单播地址(类似于IPv4的公网地址)
3.1 可聚合全球单播地址
3.1.1
001固定:第四位要么是1,要么是0,即地址前缀为:2000::/3或3000::/3
全局路由前缀:TLA:顶级聚合;RES:保留使用;NLA:次级聚合
子网:
前64比特分配前缀
3.2 唯一本地地址(类似于IPv4的私网地址)
固定FC00::/7;FC00::/8(暂未定义,作为扩充使用);FD00::/8
4、节点和站点
节点:一个链路中的某台设备;
站点:整个私网就是一个站点。
六、基础协议
1、ICMPv6
- 作用:用于向源节点传递报文转发的信息或错误
- 消息类型:
a、差错消息:
type 1 目的不可达:0表示无路由;1表示因管理原因禁止访问;2表示未指定;3表示地址不可达;4表示端口不可达
type 2 数据包过长;
type 3 超时:0表示跳数到0;1表示分片重组超时
type 4 参数错误:0表示错误的包头字段;1表示无法识别的下一包头的类型;2表示无法识别的IPv6选项。
b、信息消息:128 Echo request
129 Echo reply
2、NDP(邻居发现协议)
- 通过ICMPv6实现了IPv6中的诸多重要机制
- 实现的机制:路由发现、无状态自动配置、DAD、地址解析、邻居状态跟踪、前缀重编址、路由重定向。
- 报文详解:
- RS(路由器请求报文);作用:type 133 主机启动后通过RS报文向路由设备发出请求,
- 路由设备以RA报文响应
- RA(路由器通告报文);type 134 作用:通告前缀信息及标志位信息
- NS(邻居请求报文);type 135 作用:重复地址检测
- NA(邻居通告报文);type 136 用于实现上面的机制。
- RS、RA用于邻居发现,主要实现前缀公告以及前缀重新编址;NS、NA用于邻居建立,主要实现地址解析以及DAD
- DAD 重复地址检测:确保网络中没有两个相同的单播地址
3、报文详解:
RA :除了用于邻居发现,还会用于DHCPv6中
作用:路由设备周期性发送RA报文,其中包括前缀和标志位信息
其中flage字段中的M O字段:
M:管理地址配置标识
M字段置1时:表示有状态地址分配,客户端通过有状态协议(DHCPv6)获得IPv6地址
M字段置0时:表示无状态地址分配,客户端通过无状态协议(ND)获得IPv6地址
O:其他状态配置标识
O字段置1时:表示客户端通过有状态协议(DHCPv6)获取除地址外的其他配置信息,如:DNS、SIP服务器信息等
O字段置0时:表示客户端通过无状态协议(ND)获取除地址外的其他配置信息
H字段:代理
PRF:表示路由器优先级
P:代理标识
Rsv:保留字段
4、DHCPv6
4.1 有状态和无状态:
有状态自动分配:DHCP获取
无状态自动分配:IP address auto global
4.2 DHCPv6交互方式
rapid-commit 表示客户是否迫切需要获取到地址
四步交互:
场景:多台服务器场景
产生原因:1、客户端自己没携带rapid-commit;2、服务端不支持rapid-commit;3、存在多台DHCP服务器
两步交互:
场景:一台服务器场景
产生原因:1、客户端携带rapid-commit;2、服务端支持rapid-commit,发送reply报文,其中有相应的地址、配置信息
4.3
5、PD服务器
为什么需要?
帮助DHCP服务器分担压力,适应大规模地址下发。
原理:
通过DHCPv6前缀代理机制,下游网络设备不需要再手工指定用户侧链路的IPv6地址前缀,它只需要向上游网络设备提出前缀分配申请,上游网络设备便可以分配合适的地址前缀给下游设备,下游设备把获得的前缀(一般前缀长度小于64)进一步自动细分成64前缀长度的子网网段,把细分的地址前缀再通过路由通告(RA)至与IPv6主机直连的用户链路上,实现IPv6主机的地址自动配置,完成整个系统层次的地址布局
一、基于网段和基于链路的区别?
网段:网络地址相同的IP地址属于同一网段,即同一子网,即可通信
链路:链路基于二层,只要链路正常且在同一链路,就可以访问,基于广播域
二、什么是冲突域、广播域?
冲突域: 只能同时允许一个人发送数据,如有另外一人发送数据,则产生冲突;
解决方法:CSMA/CD,载波监听多路访问/冲突检测技术,发送数据前先监听通道是否空闲,如空闲,则发送,边发送边监听,若检测到有冲突,立即停止发送,等待一段时间继续发送。交换机的每个接口都是一个冲突域
广播域:网络中能收到任何一台设备发出的广播包的节点集合,每个路由器的接口都是一个广播域(多点发送,单点接收)
区别:广播域可以跨网段,而冲突域只是发生的同一个网段的。
冲突域是基于第一层(物理层)而广播域是机于第二层(数据链路层)
HUB 所有端口都在同一个广播域,冲突域内。
Swith所有端口都在同一个广播域内,而每一个端口就是一个冲突域。
路由器的每一个接口都是广播域。
三、IP地址和MAC地址的区别?(IP定位,MAC寻址)
1、对于PC机而言,IP地址只要在保证在和其他地址不冲突的情况下,可以随意更改,而对于MAC地址而言,是固定的,一般是不能随意更改的
2、长度不同,IP地址的长度为32位,而MAC地址为48位
3、IP属于三层,即网络层,可以从一个网络传输到另一个网络(ARP根据目的IP地址,找到中间节点的MAC地址,通过中间节点传送,从而最终到达目的网络)
MAC地址属于二层,即数据链路层,数据链路层协议可以使数据从一个节点传递到相同链路的另一个节点上
4、分配依据不同。IP地址的分配是基于我们自身定义的网络拓扑,MAC地址的分配是基于制造商。一个是主观的,而另一种是可观的。
GRE隧道封装解释:把一种三层协议封装到另一种三层协议里面
DHCP中产生4步交互方式的原因:
1、客户端不支持
2、服务端不支持
3、链路中有多台DHCPV6服务器