文章目录
题目:
![在这里插入图片描述](https://img-blog.csdnimg.cn/7c76257b043f4df8bbda94cc87eee5f5.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81MzMwODI5NA==,size_16,color_FFFFFF,t_70)
一.分析题目
1.ar1和ar2之间是IPV4的私网,ar2和ar3和ar4是IPV4的公网
2.先配置IPV4,因为IPV6是根据IPV4算出来的
3.这道实验最难的地方在于IPV6的地址很长,计算以及子网划分很麻烦
二.实验步骤
1.搭建实验拓扑
2.配置IPV4
(1)配置接口地址和环回地址
[r1]int lo0
[r1-LoopBack0]ip ad 192.168.2.1 25
[r1-LoopBack1]int g0/0/1
[r1-GigabitEthernet0/0/1]ip ad 192.168.3.1 30
[r1-GigabitEthernet0/0/1]int lo1
[r1-LoopBack1]ip ad 192.168.2.129 25
[r2]int g0/0/1
[r2-GigabitEthernet0/0/1]ip ad 23.1.1.1 24
[r2]int lo0
[r2-LoopBack0]ip ad 192.168.1.1 24
[r2]int g0/0/0
[r2-GigabitEthernet0/0/0]ip ad 192.168.3.2 30
[r3]int g0/0/0
[r3-GigabitEthernet0/0/0]ip ad 23.1.1.2 24
[r3-GigabitEthernet0/0/0]int g0/0/1
[r3-GigabitEthernet0/0/1]ip ad 34.1.1.1 24
[r3-GigabitEthernet0/0/1]int lo0
[r3-LoopBack0]ip ad 3.3.3.3 24
[r4]int g0/0/0
[r4-GigabitEthernet0/0/0]ip ad 34.1.1.2 24
(2)写缺省使IPv4公网可以互通
[r2]ip route-static 0.0.0.0 0 23.1.1.2
[r4]ip route-static 0.0.0.0 0 34.1.1.1
测试是否通了:
(3)在ar1和ar2之间启用rip并可以访问ar3
[r1]rip 1
[r1-rip-1]version 2
[r1-rip-1]un summary
[r1-rip-1]network 192.168.2.0
[r1-rip-1]network 192.168.3.0
[r1-rip-1]int g0/0/1
[r1-GigabitEthernet0/0/1]rip summary-address 192.168.2.0 255.255.255.0
[r1]ip route-static 192.168.2.0 24 NULL 0
[r2]rip 1
[r2-rip-1]version 2
[r2-rip-1]un summary
[r2-rip-1]network 192.168.3.0
[r2-rip-1]network 192.168.1.0
[r2-rip-1]default-route originate
[r2]acl 2000
[r2-acl-basic-2000]rule permit source 192.168.0.0 0.0.255.255
[r2-acl-basic-2000]int g0/0/1
[r2-GigabitEthernet0/0/1]nat outbound 2000
测试ar1是否可以访问ar3的环回
可以ping通,说明IPV4的内网访问外网就实现了
3.配置左边的IPV6
(1)配置接口地址和环回地址
[r1]ipv6
[r1]int lo0
[r1-LoopBack0]ipv6 en
[r1-LoopBack0]ipv6 ad 2002:1701:0101:0000::1 65
[r1-LoopBack0]int lo1
[r1-LoopBack1]ipv6 enable
[r1-LoopBack1]ipv6 ad 2002:1701:0101:0000:8000::1 65
[r2]ipv6
[r2]int g0/0/0
[r2-GigabitEthernet0/0/0]ipv6 enable
[r2-GigabitEthernet0/0/0]ipv6 ad 2002:1701:0101:0001::2/64
[r2-GigabitEthernet0/0/0]int lo0
[r2-LoopBack0]ipv6 enable
[r2-LoopBack0]ipv6 ad 2002:1701:0101:0002::1/64
(2)开启ripng
[r1]ripng 1
[r1-ripng-1]q
[r1]int lo0
[r1-LoopBack0]ripng 1 enable
[r1-LoopBack0]int lo1
[r1-LoopBack1]ripng 1 enable
[r1-LoopBack1]int g0/0/1
[r1-GigabitEthernet0/0/1]ripng 1 enable
[r2]int lo0
[r2-LoopBack0]ripng 1 enable
[r2-LoopBack0]int g0/0/0
[r2-GigabitEthernet0/0/0]ripng 1 enable
ar2通过ripng学到了ar1的两个环回:
进行汇总并写上空接口:
[r1-GigabitEthernet0/0/1]ripng summary-address 2002:1701:0101:0000:: 64
[r1]ipv6 route-static 2002:1701:0101:0000:: 64 NULL 0 (空接口)
汇总后:
(3)在ar2上做Tunnel隧道
[r2]int Tunnel 0/0/0
[r2-Tunnel0/0/0]ipv6 enable
[r2-Tunnel0/0/0]ipv6 ad 2002:1701:101:3::1/64
[r2-Tunnel0/0/0]tunnel-protocol ipv6-ipv4 6to4(在IPV6的报头前加IPV4的报头)
[r2-Tunnel0/0/0]source 23.1.1.1
[r2]ripng 1
[r2-ripng-1]int g0/0/0
[r2-GigabitEthernet0/0/0]ripng default-route only (ar2只给ar1发一个缺省但是不发ar2 的环回)
[r2]ipv6 route-static 2002:: 16 Tunnel 0/0/0
这样在ar1上只学到一条缺省:
4.配置右边的IPV6
(1)配置接口地址和环回地址
[r4]ipv6
[r4]int lo0
[r4-LoopBack0]ipv6 enable
[r4-LoopBack0]ipv6 ad 2002:2201:0102:0000::1/64
[r4-LoopBack0]int g0/0/1
[r4-GigabitEthernet0/0/1]ipv6 enable
[r4-GigabitEthernet0/0/1]ipv6 ad 2002:2201:0102:0001::1/64
[r5]ipv6
[r5]int g0/0/0
[r5-GigabitEthernet0/0/0]ipv6 enable
[r5-GigabitEthernet0/0/0]ipv6 ad 2002:2201:0102:0001::2/64
[r5-GigabitEthernet0/0/0]int lo0
[r5-LoopBack0]ipv6 enable
[r5-LoopBack0]ipv6 ad 2002:2201:0102:8000::1/64
[r5-LoopBack0]int g0/0/1
[r5-GigabitEthernet0/0/1]ipv6 enable
[r5-GigabitEthernet0/0/1]ipv6 ad 2002:2201:0102:8001::1/64
[r6]ipv6
[r6]int g0/0/0
[r6-GigabitEthernet0/0/0]ipv6 enable
[r6-GigabitEthernet0/0/0]ipv6 ad 2002:2201:0102:8001::2/64
[r6-GigabitEthernet0/0/0]int lo0
[r6-LoopBack0]ipv6 enable
[r6-LoopBack0]ipv6 ad 2002:2201:0102:8002::1/64
[r6-LoopBack0]int g0/0/1
[r6-GigabitEthernet0/0/1]ipv6 enable
[r6-GigabitEthernet0/0/1]ipv6 ad 2002:2201:0102:8003::1/64
[r7] int g0/0/0
[r7-GigabitEthernet0/0/0]ipv6 enable
[r7-GigabitEthernet0/0/0]ipv6 ad 2002:2201:0102:8003::2/64
[r7-GigabitEthernet0/0/0]int lo0
[r7-LoopBack0]ipv6 enable
[r7-LoopBack0]ipv6 ad 2002:2201:0102:8004::1/64
[r7-LoopBack0]int g0/0/1
[r7-GigabitEthernet0/0/1]ipv6 enable
[r7-GigabitEthernet0/0/1]ipv6 ad 2002:2201:0102:8005::1/64
[r8]ipv6
[r8]int g0/0/0
[r8-GigabitEthernet0/0/0]ipv6 en
[r8-GigabitEthernet0/0/0]ipv6 enable
[r8-GigabitEthernet0/0/0]ipv6 ad 2002:2201:0102:8005::2/64
[r8-GigabitEthernet0/0/0]int lo0
[r8-LoopBack0]ipv6 en
[r8-LoopBack0]ipv6 enable
[r8-LoopBack0]ipv6 ad 2002:2201:0102:8006::1/64
(2)开启ospfv3
[r5]ospfv3 1
[r5-ospfv3-1]router-id 5.5.5.5
[r5-ospfv3-1]int lo0
[r5-LoopBack0]ospfv3 1 area 0
[r5-LoopBack0]int g0/0/1
[r5-GigabitEthernet0/0/1]ospfv3 1 area 0
[r6]ospfv3 1
[r6-ospfv3-1]router-id 6.6.6.6
[r6-ospfv3-1]int lo0
[r6-LoopBack0]ospfv3 1 area 0
[r6-LoopBack0]int g0/0/0
[r6-GigabitEthernet0/0/0]ospfv3 1 area 0
[r6-GigabitEthernet0/0/0]int g0/0/1
[r6-GigabitEthernet0/0/1]ospfv3 1 area 0
[r7]ospfv3 1
[r7-ospfv3-1]router-id 7.7.7.7
[r7-ospfv3-1]int g0/0/0
[r7-GigabitEthernet0/0/0]ospfv3 1 area 0
[r7-GigabitEthernet0/0/0]int lo0
[r7-LoopBack0]ospfv3 1 area 0
[r7-LoopBack0]int g0/0/1
[r7-GigabitEthernet0/0/1]ospfv3 1 area 0
[r8]ospfv3 1
[r8-ospfv3-1]router
[r8-ospfv3-1]router-id 8.8.8.8
[r8-ospfv3-1]int g0/0/0
[r8-GigabitEthernet0/0/0]ospfv3 1 area 0
[r8-GigabitEthernet0/0/0]int lo0
[r8-LoopBack0]ospfv3 1 area 0
查看邻居关系是否建立好了:
查看ar5的路由表,ar5成功学到了路由:
(3)启用BGP
[r4]bgp 1
[r4-bgp]router-id 4.4.4.4
[r4-bgp]peer 2002:2201:102:1::2 as-number 2
[r4-bgp]ipv6-family
[r4-bgp-af-ipv6]peer 2002:2201:102:1::2 enable
[r5]bgp 64512
[r5-bgp]router-id 5.5.5.5
[r5-bgp]confederation id 2
[r5-bgp]peer 2002:2201:102:1::1 as-number 1
[r5-bgp]ipv6-family
[r5-bgp-af-ipv6]peer 2002:2201:102:1::1 enable
配置本机站点地址,方便bgp建邻
[r5]int lo0
[r5-LoopBack0]ipv6 ad 5::5/128 (实际工程不用这个地址,因为这个地址以后可能会成为公有地址)
[r6]int lo0
[r6-LoopBack0]ipv6 ad 6::6/128
[r7]int lo0
[r7-LoopBack0]ipv6 ad 7::7/128
[r8]int lo0
[r8-LoopBack0]ipv6 ad 8::8/128
这也是多宿主的意义,这样就不用宣告也可以学到路由:
这样就可以用这些地址建邻
建邻如下:
[r5]bgp 64512
[r5-bgp]peer 6::6 as-number 64512
[r5-bgp]peer 6::6 connect-interface LoopBack 0
[r5-bgp]ipv6-family
[r5-bgp-af-ipv6]peer 6::6 enable
[r6]bgp 64512
[r6-bgp]router-id 6.6.6.6
[r6-bgp]confederation id 2
[r6-bgp]peer 5::5 as-number 64512
[r6-bgp]peer 5::5 connect-interface LoopBack 0
[r6-bgp]peer 7::7 as-number 64512
[r6-bgp]peer 7::7 connect-interface LoopBack 0
[r6-bgp]ipv6-family
[r6-bgp-af-ipv6]peer 5::5 en
[r6-bgp-af-ipv6]peer 7::7 en
[r7]bgp 64512
[r7-bgp]router-id 7.7.7.7
[r7-bgp]confederation id 2
[r7-bgp]confederation peer-as 64513
[r7-bgp]peer 6::6 as-number 64512
[r7-bgp]peer 6::6 connect-interface LoopBack 0
[r7-bgp]peer 8::8 as-number 64513
[r7-bgp]peer 8::8 connect-interface LoopBack 0
[r7-bgp]ipv6-family
[r7-bgp-af-ipv6]peer 6::6 en
[r7-bgp-af-ipv6]peer 8::8 en
[r7-bgp]peer 8::8 ebgp-max-hop 2
[r8]bgp 64513
[r8-bgp]router-id 8.8.8.8
[r8-bgp]confederation id 2
[r8-bgp]confederation peer-as 64512
[r8-bgp]peer 7::7 as-number 64512
[r8-bgp]peer 7::7 connect-interface LoopBack 0
[r8-bgp]ipv6-family
[r8-bgp-af-ipv6]peer 7::7 en
[r8-bgp]peer 7::7 ebgp-max-hop 2
检查建邻情况:
可以发现建邻都是失败的
原因是:
查看所有配置(命令:dis cur)
发现华为是默认把第一个地址2002:2201:102:8000::1/64当作更新源
但是实际上我们是要把第二个地址5::5/128当作更新源
思科会自动识别
修改方法如下:
[r5]bgp 64512
[r5-bgp]peer 6::6 connect-interface LoopBack 0 5::5
[r6]bgp 64512
[r6-bgp]peer 5::5 connect-interface LoopBack 0 6::6
[r6-bgp]peer 7::7 connect-interface LoopBack 0 6::6
[r7]bgp 64512
[r7-bgp]peer 6::6 connect-interface LoopBack 0 7::7
[r7-bgp]peer 8::8 connect-interface LoopBack 0 7::7
[r8]bgp 64513
[r8-bgp]peer 7::7 connect-interface LoopBack 0 8::8
我们再次查看建邻情况:
(4)在ar4上做tunnel隧道
[r4]int Tunnel 0/0/0
[r4-Tunnel0/0/0]ipv6 en
[r4-Tunnel0/0/0]ipv6 ad 2002:2201:0102:0002::1/64
[r4-Tunnel0/0/0]tunnel-protocol ipv6-ipv4 6to4
[r4-Tunnel0/0/0]source 34.1.1.2
[r4]ipv6 route-static 2002:: 16 Tunnel 0/0/0
(5)在ar5上汇总并宣告汇总路由使得ar4可以学到ar5/6/7/8的路由
[r5]ipv6 route-static 2002:2201:0102:8000:: 49 NULL 0
[r5]bgp 64512
[r5-bgp]ipv6-family
[r5-bgp-af-ipv6]network 2002:2201:0102:8000:: 49
在ar4上就可以看到学到这条路由:
(6)使ar5/6/7/8学到ar4的路由
[r4]bgp 1
[r4-bgp]ipv6-family
[r4-bgp-af-ipv6]network 2002:: 16
从上面几副图看出只有ar5学到了路由是可优的,ar6学到的路由不优,所以导致ar7和ar8根本学不到路由
解决办法:
[r5]bgp 64512
[r5-bgp]ipv6-family
[r5-bgp-af-ipv6]peer 6::6 next-hop-local
[r6]bgp 64512
[r6-bgp]ipv6-family
[r6-bgp-af-ipv6]peer
[r6-bgp-af-ipv6]peer 7::7 reflect-client (做反射器解决水平分割)
测试:
到这里这个实验就完成了。