CCNP 8 IPV6

IPV6

  • 为什么使用IPV6:
    1.V4地址数量不够
    2.V4使用NAT,破坏了端到端原则
  • IPV6的优点:
  1. 全球单播地址
  2. 聚合性强(IANA组织进行合理的分配)
  3. 多宿主—一个接口可以配置N个地址–且这些地址为同一级别
  4. 自动配置—1)DHCP V6 ---- 2)auto-config 路由器下方前缀(网络位),然后PC根据本地MAC地址来自动生成主机位
  5. 即插即用
  6. 端到端的链接------不需要nat
  7. 重编制
  8. 简易报头 - - 1)没有广播机制–只有组播 --2)没有校验盒(因为2层和4层具有校验)—3)流标签–QOS保留
  9. 安全性和移动性
  10. V4可以穿过V6的
    在这里插入图片描述
    黄色:保留
    红色:取消
    V4中由于跨层封装的参数,在IPV6中若需要可以在尾部使用扩展首部来实现
    蓝色:替代–更名
    1)服务类型----扩展表
    2)总长度-------有效负载长度 IPV4的报头默认20字节,最大可填充到60字
    节;V6报头默认64字节
    3)下一个头部—协议号
    4)TTL-----跳数限制
    灰色: 保留 —流标签
  • IPV6地址的组成

在这里插入图片描述
1-23 注册位—由IANA分配给各个国家和机构
24-32 ISP位—由国家分配给ISP和机构
32-48 站点位—由ISP分配给客户
48-64 子网位—由管理员子网划分后,应用到网络内

写法

  • IPV4使用点分十进制,IPV6冒分十六进制
    2031:0000:130F:0000:0000:09C0:006A:130B 每16位为一段,共8段
    前缀0可以省略:
    2031:0000:130F:0000:0000:9C0:6A:130B
    一段全0可省略为1个0:
    2031:0:130F:0:0:9C0:6A:130B
    连续0可以省略为双冒号
    2031:0:130F::9C0:6A:130B
  • 注:当两处连续0时,只能省略1处,否则无法区分
    2031:0000:0000:130F:0000:0000:0000:130B
    2031:0:0:130F::130B
    例:
  • FF02:0:0:0:0:0:0:1----FF02::1
    0:0:0:0:0:0:0:0:1------::1
    0:0:0:0:0:0:0:0:0-----::
  • http://10.1.1.1:8080
    http://【2031:0:0:130F::130B】:8080

IPV6地址分类

  1. 单播地址:一对一
  2. 多播地址:一对多
  3. 任意波:一到最近
单播地址
  1. AGUA–可聚合全球单播地址 —IANA合理分配的IPV6公网地址
    目前准备分配的地址2000::/3
    2000::—3FFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF
    其中2001::/16 当下IPV6实验室使用的地址—目前IPV6Internet地址
    2002::/16 6to4tunnel 专用
  2. 本地链路地址—link-local 169.254.x.x
    FE80::/10
  • 1)路由器上每个接口都可以拥有唯一一个link-local地址;
    在接口上配置ipv6 enable ,后自动生成,前64位 FE80:0:0:0
    后64位根据本地设备上以太网接口的MAC地址自动生成
    故,串线接口和本地以太网接口的link-local地址由于使用相同的MAC地址,导致
    link-local地址一致
  • 2) 只要在接口上配置一个IPV6的单播地址,那么该接口也会自动生成link-local地址
    作用:
    1》可用于直连通讯
    r1# ping FE80::C800:1EFF:FEF0:0
    Output Interface: Serial1/1 由于多个接口可能使用相同link-local地址,故必须定义出接口
    2》IPV6中的动态路由协议会将下一跳地址定义为对端接口的link-local
    因为ipv6可以多宿主,故link-local最稳定
    注:link-local地址的后64位使用以太网接口MAC地址补充,但MAC仅48位
    后64使用EUI-64补充;
  • EUI–简易用户界面:
  1. 假设MAC地址为:ca00.1ef0.0000
    在MAC地址的前24和后24位中间强行插入FFFE
    ca00.1e ff.fe f 0.0000
  2. U位转换
    将MAC地址从左往右第7位自反,0改1,1改0;
    1100 1010 0000 0000.1eff.fef0.0000---- 1100 1010 0000 0000.1eff.fef0.0000
    —c800.1eff.fef0.0000
  • 3、site-local 本地站点地址 ----类似IPV4中的私有地址----私网使用
    FEC0::/10
    1615130000 000000
  1. 未指定地址
    ::
    1)在DHCP时作为无效地址
    2)默认路由

  2. 环回地址—127.0.0.1
    ::1

  3. IPV4兼容性地址 用于6to4 tunnel
    例:192.168.1.1 转换为16进制 C0A8.0101
    故:192.168.1.1的IPV4兼容地址为2002:C0A8:0101::/48
    172.16.1.1 1010 1100.0001 0000.0000 0001.0000 0001
    2002:AC10:0101::/48
    191.168.172.1
    2002:BFA8:AC01::/48

多播地址

  • FF02::/8开头
    FF02::1–224.0.0.1
    FF02::2–224.0.0.2
    FF02::9–RIPNG
    在多播地址中存在一种 --被请求节点组播地址
    构成FF02::1:FF+24位—后24位取单播IPV6地址的后24位;每一个IPV6单播地址都会对应一个被请求节点组播地址;
    IPV6中的多播MAC地址:33.33+32位(后32为IPV6组播地址的后32位)
    和IPV4一样不能一一对应

ICMPV6:存在大量的子协议

  1. PMTU–路径MTU发现协议—通过ICMPV6中的error包可以得知整段路径最小MTU值
  2. NDP 邻居发现协议—IPV6中不存在广播机制,故ARP的工作必须依靠NDP来完成
    假设PCA请求PCB的MAC地址
  • A的数据包:封装ICMPV6 type 135
    源ipv6地址–本地
    目标ipV6地址-----对端ipv6的被请求节点组播地址
    源MAC–本地
    目标MAC—对端ipv6的被请求节点组播地址所对应MAC
  • B的数据包:封装ICMPv6 type 136
    源ipv6地址–本地
    目标ipV6地址-----对端ipv6单播地址
    源MAC–本地
    目标MAC—对端接口MAC
    135–邻居请求NS 136邻居通告NA
    ARP在IPV4还存在FARP/代理ARP之内功能;ICMPV6的NDP也可以进行这些工作,原理一致;
  1. 前缀通告----auto-config 路由器下放前缀,PC使用EUI-64补充主机位
    当前缀长度小于64位时,使用0补到64位;当前缀大于64位,从EUI-64中取相同长
    度即可;
网关路由器周期(200s)发送一次前缀             PC   
RA ICMPV6 type 134                           RS 133确认
  • 134包: RA
    源ipv6地址 路由器本地链路地址
    目标ipv6地址 FF02::1 所有节点组播地址 TTL=1
    源MAC 路由器接口mac
    目标MAC FF02::1对应的MAC地址

  • 133包:RS
    源ipv6地址 ::
    目标ipv6地址 FF02::1 所有节点组播地址 TTL=1
    源MAC PC接口MAC
    目标MAC FF02::1对应的MAC地址

配置

  • 接口配置IPV6地址
    1.link-local地址配置

r1(config)#interface s1/1
r1(config-if)#ipv6 enable
r1(config-if)#no shutdown

  1. 接口上配置一个IPV6的单播地址,也会自动生成link-local

r1(config)#interface s1/1
r1(config-if)#ipv6 address 12::1/64
r1(config-if)#ipv6 address 12::/64 eui-64

注:可以多宿主,–一个接口可以配置多个IPV6单播地址,无论是否在一个网段

  1. auto-config 只能应用于以太网接口
路由网关接口                          PC接口(DHCP)
r1(config)#ipv6 unicast-routing              r2(config)#interface f0/0
接口配置IPV6单播地址                  r2(config-if)#ipv6 address autoconfig 
                                       r2(config-if)#no shutdown 
   
  • 注:一台路由器若运行一个IPV6的单播路由协议(动态、静态),也必须先开启IPV6单播路由功能
    切记:一台IPV6路由器上若没有开启IPV6单播路由功能,将不能基于IPV6的流量进行路由表查看;但一旦开启该功能后,该设备上的所有以太网接口也被动的激活auto-config功能;故同路由邻居相连的接口是没必要开启auto-config功能的,可以关闭

r1(config)#interface fastEthernet 0/0
r1(config-if)#ipv6 nd suppress-ra

IPV6ACL

  • 一台设备上可以存在N张表,但一个需求点只能调用一张表;
    匹配规则:从上往下逐一匹配,若上条匹配将按上条执行,不再查看下条末尾隐含拒绝所有;没有标准列表,只有扩展列表,且只能基于命名的写法;扩展列表,不能限制自身产生的流量

r2(config)#ipv6 access-list ccie
r2(config-ipv6-acl)#deny ipv6 host 12::1 host 12::2
r2(config-ipv6-acl)#permit ipv6 any any
r2(config-ipv6-acl)#exit
r2(config)#
r2(config)#int s1/0
r2(config-if)#ipv6 traffic-filter ccie in

注:IPV6中不使用反掩码,而是直接使用掩码;

IPV6的ACL末尾隐含

r2(config-ipv6-acl)#permit icmp any any nd-ns
r2(config-ipv6-acl)#permit icmp any any nd-na
r2(config-ipv6-acl)#deny ipv6 any any

注:因为关闭IPV6的NDP功能后,IPV6将失去最基本通信能力,故不能关闭

IPV6的静态路由

r1(config)#ipv6 route 2::/64 12::2
r1(config)#ipv6 route 2::/64 serial 1/1
前缀+目标网络+出接口或下一跳
也可以修改默认的管理距离来实现浮动静态路由
r1(config)#ipv6 route 2::/64 12::2 ?
<1-254> Administrative distance
< c r>
12::2/64
12:0000:0000:0000:0000000000000000
12:0:0:1000000000000000::/65
12:0:0:8000::/65

注:无论使用何种路由协议,若目标不在本地,那么本地一定要开启IPV6的单播路由功能

r1(config)#ipv6 route ::/0 12::2 缺省路由
r1(config)#ipv6 route 1::/63 null 0 口接口防环

RIPNG:同RIPV2使用完全一致算法

  • 基于UDP521端口工作,组播更新地址FF02::9
    r1(config)#IPV6 Unicast-routing 配置路由协议前,必须先开启单播路由功能

r1(config)#ipv6 router rip a 启动时需要配置进程名
r1(config-rtr)#exit
r1(config)#interface loopback 0
r1(config-if)#ipv6 rip a enable 宣告在接口进行,同IPV4下宣告的含义一致
r1(config-if)#exit
r1(config)#int s1/1
r1(config-if)#ipv6 rip a enable

Ping时,源地址变更,只能基于接口

r1#ping 3::3 source s1/1

注:ripng中最大跳数为16.17为不可达;默认IPV4下学习到条目IPV6度量加1;

  • 计时器:及具有周期更新,也有触发更新(毒性逆转水平分割)

r1#show ipv6 rip a

  • 手工汇总:在更新源路由上所有更新发出的接口上进行配置

r1(config)#interface s1/1
r1(config-if)#ipv6 rip a summary-address 1::/63

  • 手工汇总:在更新源路由上所有更新发出的接口上进行配置

r1(config)#interface s1/1
r1(config-if)#ipv6 rip a summary-address 1::/63

OSPFV3

组播跟新地址:FF02::5 /6

r2(config)#ipv6 router ospf 1 启动时需要配置进程号
r2(config-rtr)#router-id 1.1.1.1 配置RID,使用IPV4地址

宣告到接口进行,区域划分规则同IPV4下一致

r3(config)#int s1/0
r3(config-if)#ipv6 ospf 1 area 0
r3(config-if)#int lo0
r3(config-if)#ipv6 ospf 1 area 1

BGP4+

r1(config)#router bgp 1
r1(config-router)#no synchronization
r1(config-router)#no auto-summary
r1(config-router)#b router-id 1.1.1.1
r1(config-router)#neighbor 12::2/64 remote-as 2

注:间使用BGP建立IPV4下的邻居关系,但V6邻居还未建立

r1(config-router)#address-family ipv6 进入家族模式来建立V6关系;
r1(config-router)#neighbor 12::2 activate

注:之后所有关于IPV6先配置,全部在家族模式中进行

r1(config-router)#address-family ipv6
r1(config-router-af)#network 1::/64
r1(config-router-af)#neighbor 12::2 next-hop-self
r1(config-router-af)#neighbor 12::2 route-map ccie out
r1(config-router-af)#exit
r1(config-router)#end
r1#clear bgp ipv6 * soft
r1#show bgp ipv6 summary
r1#show bgp ipv6

IPV4和IPV6兼容问题:

  1. 普通Tunnel

r1(config)#interface tunnel 0
r1(config-if)#ipv6 address 10::1/64
r1(config-if)#tunnel source 12.1.1.1
r1(config-if)#tunnel destination 23.1.1.2
r1(config-if)#tunnel mode ipv6ip
r1(config)#ipv6 route 3::/64 10::2

  • 缺点:1、到每一个不同目标,均需要双方均配置tunnel
    2、到每一个不同目标均需呀编辑一条静态路由
  1. 6to4 tunnel
    不用基于每个目标编辑tunnel和路由,仅需一个tunnel和路由条目
    先将本地IPV4公网地址转换为IPV6兼容性地址,然后将其进行子网划分后应用到内网
    12.1.1.1–2002:0C01:0101::/48 可以划分到64位,将其地址配置到内网

r1(config)#interface loopback 0
r1(config-if)#ipv6 address 2002:0c01:0101::1/64
r1(config-if)#exit
r1(config)#interface tunnel 0
r1(config-if)#ipv6 address 2002:0c01:0101:1::1/64
r1(config-if)#tunnel source s1/1
r1(config-if)#tunnel mode ipv6ip 6to4
r1(config)#ipv6 route 2002::/16 tunnel 0

  1. 双栈—网络及连接V4网络也连接V6网络,通讯时根据目标IP地址,来判断应该携带那个网络源地址;默认优先查找V6网络中的DNS 服务器;
版权声明:本文为heibaikong6原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/heibaikong6/article/details/87387104