CCNP学习笔记15
IPV6
特征-升级点:
- 全球单播地址 ---- IPV4地址下的公有地址 V6下没nat
- 可聚合性(IANA组织对全球的地址进行合理分配)
- 多宿主---一个物理接口可以同时拥有多个不同或相同网段的IPV6地址;但不同接口不
能在同一网段
- 自动配置 1)DHCP V6 2)auto-config路由器接口手工配置IPv6地址,然后路由器将自己地址的前缀(网络号)自动下放给PC,PC将自动基于本地MAC地址来补充主机位,此时PC会将DNS服务器也自动指向网关,所以必须在路由器上指定谁是DNS服务器;
- 即插即用--热插拔
- 端到端的连接---不需要NAT
- 重编址,当用户修改路由器接口ip时,路由器将自动发出消息使下连的终端设备自动修改ip地址等信息
- 简易的报头 1)没有广播机制 只有组播和单播 2)没有检验和(因为2和4层均存在校验和) 3)流标签---保留---QOS
- 安全性和移动性
- IPV4和IPV6共存
黄色---一致
红色---取消 V4中的第二列用于分片 V6可以使用扩展首部实现
蓝色---替代 1、服务类型--扩展表
2、报头长度---有效负载长度
3、TTL--跳数限制
4、协议号---下一个头部
灰色---保留 流标签,目前保留不用,未来可能会和Traffic class一起实现QoS等功能
IPV6地址:
1-23位 注册位---IANA分配给各个国家或组织
24--32位 ISP位---国家分配给各个ISP
33-48位 站点位---ISP分配给各个企业
49--64位 子网位----网络管理员进行子网划分
IPV6地址写法: 使用冒分16进制标示,每16位为一段;共8段
2031:0000:130F:0000:0000:09C0:006A:130B
每一段地址前面的0可以省略
2031:0000:130F:0000:0000:9C0:6A:130B
若一段全为0,可以省略成一个0
2031:0:130F:0:0:9C0:6A:130B
若连续两段以上全0,可以省略为::
2031:0:130F::9C0:6A:130B
2031:0000:0000:9C0:0000:0000:0000:130B
注:若存在两个部分均为全0,只能将其中一个部分省略为::;
2031:0:0:9C0::130B
例:
FF02:0:0:0:0:0:0:0:1---FF02::1
0:0:0:0:0:0:0:1--::1
0:0:0:0:0:0:0:0--::
当使用ipv6协议携带端口号时,需要使用中括号来区分;
http://[2031:0:130F::9C0:6A:130B]:8080/index/html
IPV6地址分类:
- 单播地址 一对一 只有单播地址能作为源地址,也可作为目标地址
- 多播地址 一对多 作为目标地址
- 任意播地址-----一到最近
单播地址:
1 AGUA 全球可聚合单播地址
IPV6的公网地址(需申请),全球单播传递,目前全球已规划并准备分配的地址----2000::/3
范围:2000::---- 3fff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
*其中 2001::/16 -----当下的IPV6实验室使用地址,即目前ipv6 intenet地址
* 2002::/16-----------6to4 tunnel 专用地址,为了解决IPv4向IPv6过渡期间6和4共存问题
2 *本地链路地址---自动私有地址---link-local(169.254.0.0/16)
在ipv4下,当一台设备自动获取ip失败时会自动分配该段地址,分配的地址为169.254.x.x,但路由器接口不支持该ip
在ipv6下:
FE80::/64
link-local地址产生方式:
- 路由器接口上配置ipv6 enable命令,该接口将自动生成link-local地址;
- 若在接口配置一个IPV6单播地址,必然自动生成link-local地址;一个接口只能存在一个link-local地址;
Link-local地址的网络位固定为FE80::/64,主机位使用本地以太网接口的MAC地址来生成link-local地址主机位;串行链路无MAC地址,将循环借用本设备上以太网接口的MAC;
主机位生成方法:
Link-local地址--------------网络位FE80::/64 后64位使用EUI-64补充
EUI-64简易的用户界面:
1. 以太网接口MAC地址----ca00.0a60.0000
在MAC的前24位和后24位之间强行插入FFFE
ca00.0aFF.FE60.0000
2. U位转换
将合成后的地址,从左往右第7位自反 若该位为0,变为1;为1变为0;
Ca00=1100 1010 0000 0000 第七位自反
1100 1000 0000 0000=c800
3. link-local地址为
FE80::c800.aff.fe60.0
作用:(1)在同一广播域内可以通讯使用
注:由于本地多接口可能使用相同MAC转换,故在
使用link-local地址访问对端时,必须定义出接口;
(2)常常作为动态路由协议生成的路由表条目中的下一跳地址;
因为IPV6存在多宿主概念,该地址最稳定;
3 site-local 本地站点地址----私有地址
FFC0::/10 无法在互联网拥有,外网用户无法访问该地址,仅限内部设备使用
4 未指定地址-----::
::
1) 默认(缺省)路由 2)在DHCP时作为无效地址(没有地址)
5 环回地址---127.0.0.1
::1
6 *IPV4兼容性地址 用于6to4 tunnel专用
假设IPV4地址为192.168.1.1
192----1100 0000--c0
168----1010 1000--a8
1-------0000 0001--01
1-------0000 0001--01
192.168.1.1的IPV4兼容性地址为2002:c0a8:0101::/48
多播地址:
FF00::/8所有组播地址(组播ip共有2的120次方个)
FF02::1---224.0.0.1
FF02::2---224.0.0.2
FF02::9---224.0.0.9--RIPNG
*被请求节点组播地址:---用于NDP协议—获取对端mac地址
构成FF02::1:FF+24位 (IPV4组播地址的后24位)
只要存在一个IPV6单播地址,那么便会产生一个被请求节点组播地址(每个ipv6地址一旦产生默认就会加入一个组,即被请求节点组播地址)
例:2001::1-------------FF02::1:FF00:1
Ipv6下的组播MAC地址:
33.33+32位(后32位为IPV6组播地址后32位)
FF02::1----33.33.00.00.00.01
协议:
ICMPV6:internet 控制管理协议---存在大量的子协议
1 PMTU---路径MTU发现协议 通过ICMP error包来获取整段路径上最小MTU值,IPv6下默认存在
2 NDP------邻居发现协议---用于取代IPV4下的ARP协议
假设PC1和PC2通讯
1无2的MAC地址
1)1封装ICMP type 135 NS---相当于ARP的请求
源IPV6地址(1的接口ip地址) 目标IPV6地址----2的被请求节点组播地址 TTL=1
源MAC地址(1的接口mac地址) 目标MAC地址----2的被请求节点组播地址对应的MAC
2)2回应ICMP type 136 NA----相当于ARP的应答
源IPV6地址(2接口ip) 目标ipv6地址--1的接口IPv6地址
源MAC地址(2的接口mAC地址)目标mac地址--1的接口mac地址
组播发出NS,单播回复NA
ICMPV6中的NDP除取代了AARP外,其他的ARP协议也可被NDP取代,原理一致;
3 前缀通告------auto-config 仅在以太网环境存在
路由器周期(200s)向下发送IPV6的地址前缀(网络号)
路由器 PC
ICMP type 134---RA ICMP type 133---ACK-RS
源ip地址---接口ip地址 源ipv6地址--- ::
目标ip地址---FF02::1 TTL=1
目标MAC(所有节点MAC,目标ip对应的mac)
r1(config)#ipv6 unicast-routing r2(config-if)#ipv6 address autoconfig
开启IPV6的单播路由功能,该功能开启后,设备上的auto-config被激活,同时可以收发IPV6路由协议信息;且可以为ipv6的流量进行路由(前提路由器接口上已经拥有合法ipv6的单播地址);
PC端发出ICMP type 133(ack确认)后,不能立即开始使用获得的ipv6地址,需要先进行地址冲突检测(FARP),检测无冲突后才可以使用;
只要在路由器上开启了IPV6的单播路由功能,那么该路由器将向所有存在IPV6地址的以太网接口周期发送其地址的前缀;
注:在配置动、静态IPV6路由协议时,均需要开启单播路由功能,开启后也导致该路由器会向所有的以太网接口发送前缀,若该接口管理员不要auto-config功能,可以再关闭:
r1(config)#interface fastEthernet 0/0
r1(config-if)#ipv6 nd suppress-ra
配置:
1. 接口配置IPV6的单播地址
配置前需要先开启ipv6路由功能:
R1(config)#ipv6 unicast-routing
所有接口配置完成后与ipv4一样敲no shut:
R1(config-if)#no shut
1.1 link-local
(1)
r1(config)#interface fastEthernet 0/0
r1(config-if)#ipv6 enable
(2)手工或自动配置一个IPV6的AGUA,均会生成一个link-local地址
但无论配置多少个AGUA地址,也只能生产一个link-local地址;
1.2 手工或自动配置接口ipv6的AGUA地址
(1)手工
r1(config)#int s1/1
r1(config-if)#ipv6 address 2002::2/64
或
r1(config-if)#int s1/1
r1(config-if)#ipv6 address 2009::/64 eui-64
注:2009::/64为ipv6地址所处网段信息,eui-64是要让用户自己用mac地址填补出ipv6地址
(2)自动配置
Auto-config DHCPV6
切记:IPV6协议存在多宿主特征----可以在一个接口上同时配置多个ip地址来标示该接口;
但注意该接口可以配置多个相同或不同网段的地址;但同一路由器上不同的接口不能
配置相同网段的ip地址;
2 IPV6的ACL
可以配置N张表,但一台设备上一个需求点只能调用一张表
从上往下逐一匹配,若上条就按上条执行,不再查看下条;
没有标准列表,只有扩展列表,且写法也只有命名写法;由于仅使用扩展列表,故放置的位置尽量靠近源,但不能在源上,因为不能限制自身的产生的流量;
假如在一台路由器的出接口上配置deny any,此时会限制从该路由器过路的流量,但不限制该路由器本身的流量;
r2(config)#ipv6 access-list ccie
r2(config-ipv6-acl)#deny tcp host 12::1 host 12::2 eq 23 拒绝一个host对另一个主机的telnet
r2(config-ipv6-acl)#deny IPV6 12::/64 12::/64 拒绝一段地址到另一段地址的所有通信
r2(config-ipv6-acl)#permit ipv6 any any 允许所有
注:在IPV6 ACL中不使用反掩码,直接使用掩码;
r2(config-ipv6-acl)#int s1/0
r2(config-if)#ipv6 traffic-filter ccie in 接口调用时注意方向
注:在IPV6下的ACL
开头隐含允许ipv6下的arp
r2(config-ipv6-acl)#permit icmp any any nd-na
r2(config-ipv6-acl)#permit icmp any any nd-ns
默认隐含拒绝所有
r2(config-ipv6-acl)#deny ipv6 any any
3、IV6的单播路由协议-----在使用路由协议前一定需要开启IPV6的单播路由功能,否则不转发IPV6的流量
【1】IPV6静态路由协议;
(1)普通静态路由
r1(config)#ipv6 route 2::/64 serial 1/1
r1(config)#ipv6 route 2::/64 12::2
目标网络号 出接口或下一跳
MA网络建议下一跳,点到点网络建议出接口
在ipv6下只有使用tracertroute才能实现带源ping目标
(2)浮动静态路由--修改默认管理距离
r1(config)#ipv6 route 3::/64 12::2 ?
<1-254> Administrative distance
<cr>
(3)空接口防环
r2(config)#ipv6 route 2::/63 null 0 ----在更新源路由器上,空接口指向汇总地址;
(4)缺省路由
r2(config)#ipv6 route ::/0 12::1
注:带源ping 时,只能使用接口;或者使用扩展追踪;
r3#ping 2::2 source loopback 0
注:由于IPV6存在多宿主,使用接口为源时,默认使用第一地址来访问,建议扩展追踪
r3#traceroute
Protocol [ip]: ipv6
Target IPv6 address: 2::2
Source address: 3::3
【2】RIPNG----使用同RIPV2一样的算法;组播更新地址FF02::9 UDP 521
r1(config)#ipv6 unicast-routing 开启单播路由功能
r1(config)#ipv6 router rip ? 启动协议时需配置进程名,进程名仅具有本地意义
WORD User selected string identifying this process
r1(config)#ipv6 router rip a
r1(config-rtr)#
宣告的含义:1、激活接口 2.路由
r1(config)#interface s1/1
r1(config-if)#ipv6 rip a enable
r1(config-if)#exit
r1(config)#int lo0
r1(config-if)#ipv6 rip a enable
注:
IPV6下到所有接口上进行配置;
通常路由协议会以对端link-local地址作为到达某个目标的下一跳,此时一定要写明出接口;
ripng是以一条链路为一跳,通常计算所得的路由会比ipv4下多一跳,相应的ipv6下的最大跳数也增加为16跳,17跳为不可达;
hello时间30s,超时时间180s,垃圾收集时间120s;
手工汇总:更新源路由器上所有更新发出的接口上进行配置
r1(config)#int s1/1
r1(config-if)#ipv6 rip a summary-address 1::/63
缺省路由:在边界路由器上所有同内网相连的接口上配置,使其向内网所有邻居发出一条缺省信息
r3(config)#int s1/0
r3(config-if)#ipv6 rip a default-information ?
only Advertise only the default route
originate Originate the default route
选择only将发出缺省路由,同时其他的路由不会被转发
选择originate 缺省和明细均发送
【3】OSPF V3 在原有OSPFV2的基础上,使用新的LSA来专门携带V6的信息;区域规则,SPF算法同IPV4下完全一致。
r1(config)#ipv6 unicast-routing
r1(config)#ipv6 router ospf 1 启动时需要配置进程号
r1(config-rtr)#
r1(config-rtr)#router-id 1.1.1.1 RID依然使用IPV4地址,规则同OSPF V2一致
宣告:
- 激活接口 2、传递路由 3、区域划分
r1(config)#interface lo0
r1(config-if)#ipv6 ospf 1 area 0
r1(config-if)#int s1/1
r1(config-if)#ipv6 ospf 1 area 0
r1(config-if)#int lo1
r1(config-if)#ipv6 ospf 1 area 0
配置完成后生成邻居表,MA网络存在DR/BDR选举,选举规则同OSPFV2一致;
另各个邻居间状态也一致;
r1#show ipv6 ospf neighbor 邻居表
Neighbor ID Pri State Dead Time Interface ID Interface
2.2.2.2 1 FULL/ - 00:00:30 3 Serial1/1
r2#show ipv6 ospf database 数据库表
r1#show ipv6 route 路由表
IPv6 Routing Table - 13 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B - BGP
U - Per-user Static route
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary
O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
缺省路由配置:在边界路由器上配置
r3(config)#ipv6 router ospf 1
r3(config-rtr)#default-information originate ?
always Always advertise default route 强制发出
metric OSPF default metric 修改起始度量
metric-type OSPF metric type for default routes 修改度量类型,默认2
route-map Route-map reference 关联route-map
<cr>
【4】BGPV4+ 在BGPV4的基础上配置IPV6关系;
r2(config)#router b 2
r2(config-router)#b router-id 2.2.2.2
r2(config-router)#neighbor 12::1 remote-as 1
r2(config-router)#neighbor 3::3 remote-as 3
r2(config-router)#neighbor 3::3 update-source loopback 0
r2(config-router)#neighbor 3::3 ebgp-multihop
此时邻居间仅存在V4下的邻居关系,没有V6关系;不能传递V6路由
故需要在已经建立的V4邻居关系基础上再来建立V6的邻居关系,传递V6的信息
注:BGP V4+使用家族模式来配置IPV6的信息,原理为在原有BGPV4的协议中开发出的扩展配置模式;
r1(config-router)#address-family ipv6 进入IPV6家族模式
r1(config-router-af)#neighbor 12::2 activate 和该邻居建立IPV6的邻居关系
注:关于IPV6建邻以后所有配置必须全部在家族模式中进行;
r1# show bgp ipv6 summary 查看BGP的邻居关系
BGP router identifier 1.1.1.1, local AS number 1
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
12::2 4 2 15 16 2 0 0 00:00:28 0
r1(config)#router b 1
r1(config-router)#address-family ipv6
r1(config-router-af)#network 1::/64 宣告路由
查看IPV6的BGP表
r1#show bgp ipv6
BGP table version is 2, local router ID is 1.1.1.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 1::/64 :: 0 32768 i
IPV6下的其他配置
r2(config)#router bgp 2
r2(config-router)#address-family ipv6
r2(config-router-af)#neighbor 3::3 next-hop-self
r2(config-router-af)#neighbor 3::3 route-reflector-client
r2(config-router-af)#neighbor 3::3 route-map ccie out
4 IPV4和IPV6共存
【1】普通tunnel
r1(config)#interface tunnel 0
r1(config-if)#ipv6 address 10::1/64 该tunnel接口必须工作于V6环境
r1(config-if)#tunnel source 12.1.1.1
r1(config-if)#tunnel destination 23.1.1.2
r1(config-if)#tunnel mode ipv6ip 必须修改模式为ipv6ip
注:普通的tunnel需要基于所有的ipv6网络配置一条隧道,且均需再配置一条静态路由;
【2】6to4tunnel---仅需配置一条隧道,一条静态即可访问所有IPV6网络
将边界路由器的公网IPV4地址换算为IPV4兼容性地址,然后将该地址应用到内网;再配置一条到兼容性地址的静态路由,通过隧道传递;传输数据时,一旦路由到达隧道口,隧道将根据目标IPV6地址计算对应的IPV4地址;
优点:1、不需要指定tunnel 目标 2、一条静态路由即可
12.1.1.1 兼容性地址:2002:C01:101::/48
23.1.1.2 兼容性地址:2002:1701:102::/48
注:该地址在使用时,一般将其划分为64位;
配置:
将内网所有ipv6地址修改为ipv4网关的兼容性地址:
r1(config)#interface l0
r1(config-if)#ipv6 address 2002:c01:101:0000::1/64
r1(config-if)#exit
对tunnel口的配置:
r1(config)#interface tunnel 0
首先需要配置隧道接口的IPV6地址----4种方法:
r1(config-if)#ipv6 address 2002:c01:101:0001::1/64 使用一个6TO4地址
r1(config-if)#ipv6 address 2002:c01:101:2::/64 eui-64 使用6to4地址
r1(config-if)#ipv6 enable 相当于不配地址
r1(config-if)#ipv6 unnumbered loopback 0 借内网某个IPv6接口的地址
指定tunnel的源,模式为6to4,写静态2002::/16,出接口为tunnel 0:
r1(config-if)#tunnel source s1/1 定义IPV6源地址所在接口或ipv4地址
r1(config-if)#tunnel mode ipv6ip 6to4 模式标记,ipv4目标地址由ipv6目标地址换算获得
R1(config)#ipv6 route 2002::/16 tunnel 0
【3】双栈---一台设备同时连接IPV4/IPV6网络,若目标IP为V6地址使用V6的源ip,通过V6的路由表传递;V4同理;
当进行DNS查询时,优先查询V6网络中的DNS 服务器;
CCNP学习笔记15相关推荐
- CCNP学习笔记(6)
一.交换机 1.二层交换 特性: ①基于MAC地址转发数据帧 ②硬件工作 ③处理数据效率高,数据传输延时低 ④转发广播 2.三层交换 特性: ①提供路由功能 ②提高安全性 ③流量管理 3.网络方案中交 ...
- Hadoop学习笔记—15.HBase框架学习(基础知识篇)
Hadoop学习笔记-15.HBase框架学习(基础知识篇) HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase ...
- C++语言学习笔记15:Clean 垃圾清理插件
C++语言学习笔记15:Clean 垃圾清理插件 对话框 STET1 图片切换功能 导入位图资源 插入图片控件并修改属性 添加消息处理函数 step2 开发思路及类关系图 step3 添加控件及MFC ...
- 区块链学习笔记15——ETH状态树
区块链学习笔记15--ETH状态树 学习视频:北京大学肖臻老师<区块链技术与应用> 笔记参考:北京大学肖臻老师<区块链技术与应用>公开课系列笔记--目录导航页 引入 要实现的功 ...
- 数据结构与算法学习笔记15:最大流问题 / 二分图 / 有权无权二分图的匹配 / 匈牙利算法 / 银行家算法 / 稳定婚配
数据结构与算法学习笔记15:最大流问题 / 二分图 / 有权无权二分图的匹配 / 匈牙利算法 / 银行家算法 / 稳定婚配 引入小题:最短路径 最大流问题(maximum flow problem) ...
- 点云学习笔记15——PCL常用的基础代码
点云学习笔记15--PCL基础 命名规范 常用代码 1.时间计算 2.pcl::PointCloud::Ptr和pcl::PointCloud的两个类相互转换 3.如何查找点云的x,y,z的极值? 4 ...
- 凸优化学习笔记 15:梯度方法
前面的章节基本上讲完了凸优化相关的理论部分,在对偶原理以及 KKT 条件那里我们已经体会到了理论之美!接下来我们就要进入求解算法的部分,这也是需要浓墨重彩的一部分,毕竟我们学习凸优化就是为了解决实际当 ...
- 影像组学视频学习笔记(15)-ROC曲线及其绘制、Li‘s have a solution and plan.
本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(15)主要介绍: ROC曲线及其绘制 ROC 曲线 ROC = receiver operating characteristic cu ...
- cocos2d-x学习笔记15:cocos2d-x教程资源总结
注:cocos2d可作为cocos2dx的参考,两者接口很相似. 名称:知易的<知易Cocos2D-iPhone开发教程> 官方地址:http://blog.sina.com.cn/s/a ...
最新文章
- React Native学习之 ListView 的简单使用
- python包NiBabel对医学影像文件格式进行读写:python包NiBabel简介集示例
- 关于如何用100行如何实现docker
- Kali Linux发布2020.1a版本
- python基本使用-python-类的基本使用
- Git 系列(七):使用 Git 管理二进制大对象
- 【100题】第十九题(斐波那楔数列)
- 软件工程----项目的进度安排
- 人脸图像数据库(完整版)
- C++:实现将华氏度转换为摄氏度
- Node.js内置模块 events的基本使用
- 【mysql】流程控制函数
- ​python买书本 青少年编程电子学会python编程等级考试一级真题解析2022年3月
- 交叉熵误差(cross entropy error)
- Unable to locate appropriate constructor on class
- php 基于gbk和 Ascii把汉字转换为拼音
- 以太坊学习路线——(二、上)搭建testrpc测试链
- 低代码和无代码开发的4个安全问题
- JSP+ssm计算机毕业设计大媛小南美味佳肴网站8p0nh【源码、数据库、LW、部署】
- 腾讯云TRTC web sdk实践