A-A+

CCNA实验三十六 GRE(通用路由封装)

2016年01月04日 站长资讯 暂无评论

环境:Windows XP 、Packet Tracert5.3

目的:了解GRE的使用,掌握如何配置GRE。

说明:

GRE(Generic Routing Encapsulation,通用路由封装)协议是对某些网络层协议(如IP 和IPX)的数据报文进行封装,使这些被封装的数据报文能够在另一个网络层协议(如IP)中传输。GRE采用了Tunnel(隧道)技术,是VPN(Virtual Private Network)的第三层隧道协议。

Tunnel 是一个虚拟的点对点的连接,提供了一条通路使封装的数据报文能够在这个通路上传输,并且在一个Tunnel 的两端分别对数据报进行封装及解封装。 一个X协议的报文要想穿越IP网络在Tunnel中传输,必须要经过封装与解封装两个过程.

步骤:

创建拓扑如下:

配置R1:

  1. Router>en  
  2. Router#conf t  
  3. Router(config)#host R1  
  4. R1(config)#int loopback 0  
  5. R1(config-if)#ip add 192.168.1.1 255.255.255.0  
  6. R1(config-if)#exit  
  7. R1(config)#int s0/0/0  
  8. R1(config-if)#ip add 12.1.1.1 255.255.255.0  
  9. R1(config-if)#no sh  
  10. R1(config-if)#exit  
  11. R1(config)#int tunnel 0  //创建隧道Tunnel 0  
  12. R1(config-if)#ip add 1.1.1.1 255.255.255.0  //配置隧道IP地址  
  13. R1(config-if)#tunnel source s0/0/0   //指定Tunnel隧道的源端口  
  14. R1(config-if)#tunnel destination 23.1.1.1 //指定Tunnel隧道的目标地址  
  15. R1(config-if)#exit  //退出  
  16. R1(config)#router rip  //开启RIP路由进程  
  17. R1(config-router)#no auto-summary  //关闭自动汇总  
  18. R1(config-router)#version 2  //启用版本2的RIP路由协议  
  19. R1(config-router)#net work 12.1.1.0  //把12.1.1.0网段加入到路由进程中,并通告出去  
  20. R1(config-router)#exit  
  21. R1(config)#ip rou 192.168.2.0 255.255.255.0 1.1.1.2 //通过Tunnel隧道路由到R3的loopback 0口  

配置R2:

  1. Router>en  
  2. Router#conf t  
  3. Router(config)#host R2  
  4. R2(config)#int s0/0/0  
  5. R2(config-if)#ip add 12.1.1.2 255.255.255.0  
  6. R2(config-if)#clock rate 64000  
  7. R2(config-if)#no sh  
  8. R2(config-if)#exit  
  9. R2(config)#int s0/0/1  
  10. R2(config-if)#ip add 23.1.1.2 255.255.255.0  
  11. R2(config-if)#clock rate 64000  
  12. R2(config-if)#no sh  
  13. R2(config-if)#exit  
  14. R2(config)#router rip  
  15. R2(config-router)#version 2  
  16. R2(config-router)#no auto-summary  
  17. R2(config-router)#network 12.1.1.0  
  18. R2(config-router)#network 23.1.1.0  
  19. R2(config-router)#exit  

配置R3

  1. Router>en  
  2. Router#conf t  
  3. Router(config)#host R3  
  4. R3(config)#int loopback 0  
  5. R3(config-if)#ip add 192.168.2.1 255.255.255.0  
  6. R3(config-if)#exit  
  7. R3(config)#int s0/0/0  
  8. R3(config-if)#ip add 23.1.1.1 255.255.255.0  
  9. R3(config-if)#no sh  
  10. R3(config-if)#exit  
  11. R3(config)#int tunnel 0  
  12. R3(config-if)#ip add 1.1.1.2 255.255.255.0  
  13. R3(config-if)#tunnel source s0/0/0  
  14. R3(config-if)#tunnel destination 12.1.1.1  
  15. R3(config-if)#exit  
  16. R3(config)#router rip  
  17. R3(config-router)#version 2  
  18. R3(config-router)#no auto-summary  
  19. R3(config-router)#network 23.1.1.0  
  20. R3(config-router)#exit  
  21. R3(config)#ip rou 192.168.1.0 255.255.255.0 1.1.1.1//通过Tunnel隧道路由到R2的loopback0口  

通过上面的配置后Tunnel隧道就成功建立了,R1、R3可以互相Ping对方的Tunnel 0和loopback 0接口,但R2却Ping不通它们的Tunnel 0和loopback 0接口。这样Tunnell隧道就达到透明工作的效果。

为了在Tunnel隧道上实现安全和加密我们可以配置GRE over IPsec如下:

R1配置:

  1. R1(config)#access-list 100 permit gre 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255  
  2. R1(config)#crypto isakmp enable  
  3. R1(config)#crypto isakmp policy 1  
  4. R1(config-isakmp)#authentication pre-share  
  5. R1(config-isakmp)#hash md5  
  6. R1(config-isakmp)#group 2  
  7. R1(config-isakmp)#exit  
  8. R1(config)#crypto isakmp key kkfloat address 23.1.1.1  
  9. R1(config)#crypto ipsec transform-set kkfloatset esp-3des esp-md5-hmac  
  10. R1(config)#crypto map vpn 10 ipsec-isakmp       
  11. R1(config-crypto-map)#set peer 23.1.1.1  
  12. R1(config-crypto-map)#set transform-set kkfloatset  
  13. R1(config-crypto-map)#match address 100  
  14. R1(config-crypto-map)#exit  
  15. R1(config)#int s0/0/0  
  16. R1(config-if)#crypto map vpn  
  17. R1(config-if)#exit  

配置R3:

  1. R3(config)#access-list 100 permit gre 192.168.2.0 0.0.0.255 192.168.1.0 0.0.0.255  
  2. R3(config)#crypto isakmp enable  
  3. R3(config)#crypto isakmp policy 1  
  4. R3(config-isakmp)#authentication pre-share  
  5. R3(config-isakmp)#hash md5  
  6. R3(config-isakmp)#group 2  
  7. R3(config-isakmp)#exit   
  8. R3(config)#crypto isakmp key kkfloat address 12.1.1.1  
  9. R3(config)#crypto ipsec transform-set kkfloatset esp-3des esp-md5-hmac  
  10. R3(config)#crypto map vpn 10 ipsec-isakmp  
  11. R3(config-crypto-map)#set peer 12.1.1.1  
  12. R3(config-crypto-map)#set transform-set kkfloatset  
  13. R3(config-crypto-map)#match address 100  
  14. R3(config-crypto-map)#exit  
  15. R3(config)#int s0/0/0  
  16. R3(config-if)#crypto map vpn  
  17. R3(config-if)#exit  

通过以上配置后,Tunnel隧道就实现了IPsec加密。

标签:

给我留言