GRE隧道简单原理和实验
一种技术(协议)或者策略的两个或多个子网穿过另一种技术(协议)或者策略的网络实现互联,称之为overlay topology,这一技术是电信技术的永恒主题之一。
电信技术在发展,多种网络技术并存,一种技术的网络孤岛可能需要穿过另一种技术的网络实现互联,这种情况如果发生在高层协议的PDU封装于低层协议PDU中时通常称之为复用,特别地三层PDU穿过二层网络地技术称为租用链路或虚电路;而如果穿越发生在一种协议PDU封装在同一层协议的PDU中,或者封装在高层协议的PDU中时,人们通常称之为隧道。
隧道提供了一种某一特定网络技术的PDU穿过不具备该技术转发能力的网络的手段,如组播数据包穿过不支持组播的网络;另一种情况是有时因为管理策略的原因,一个管理者(策略)的子网不能通过和另一个管理者(策略)的网络互联而连接,而是要穿过另一个管理者(策略)的网络实现连接,这就是所谓的×××(Virtual Private Networks),不管是L2 ×××还是L3 ×××都需要利用隧道技术实现。因此隧道某种意义上可以概括为穿越不同的网络的技术,不同既可以是技术方面的,也可以是管理策略方面的。
隧道可以作为一个虚拟接口来实现。隧道接口并不指定特定的“乘客”或“传输”协议连接,而是一种结构,可以实现任何标准点到点封装的服务。由于隧道是点到点连接,因此对每个连接必须配置一个单独的隧道。
GRE是一种应用较为广泛的一种网络层协议PDU封装于任一种网络层协议PDU中的技术,经常被用来构造GRE隧道穿越各种三层网络,并得到了大多数电信设备厂商的支持。
GRE(通用路由协议封装)是由Cisco和Net-smiths等公司于1994年提交给IETF的,标号为RFC1701和RFC1702。目前有多数厂商的网络设备均支持GRE隧道协议。GRE 规定了如何用一种网络协议去封装另一种网络协议的方法。GRE的隧道由两端的源IP地址和目的IP地址来定义,允许用户使用IP包封装IP、IPX、 AppleTalk包,并支持全部的路由协议(如RIP2、OSPF等)。通过GRE,用户可以利用公共IP网络连接IPX网络、AppleTalk网 络,还可以使用保留地址进行网络互连,或者对公网隐藏企业网的IP地址。
图1-1
一步骤:
先将4台PC IP地址配好
R1:
r1#show run | in add
ip address 1.1.1.1 255.255.255.255
ip address 1.1.1.2 255.255.255.255
ip address 1.1.1.3 255.255.255.255
ip address 192.168.1.1 255.255.255.0
ip address 12.12.12.1 255.255.255.0
R2:
r2#show running-config | include add
ip address 12.12.12.2 255.255.255.0
ip address 23.23.23.2 255.255.255.0
R3:
r2#show running-config | include add
ip address 23.23.23.3 255.255.255.0
ip address 34.34.34.3 255.255.255.0
R4:
r4#sho running-config | in add
ip address 2.2.2.1 255.255.255.255
ip address 2.2.2.2 255.255.255.255
ip address 2.2.2.3 255.255.255.255
ip address 192.168.1.2 255.255.255.0
ip address 34.34.34.4 255.255.255.0
配置好IP地址后可以检查下基本的连通性,用ping命令实现
r1#ping 12.12.12.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 12.12.12.2, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 4/6/8 ms
Ip地址配置好后,先为隧道打好路由基础,为R2与R3配置EIGRP,保证中间链路的完整性。
R2:
r2#show running-config | be eigrp
router eigrp 10
network 12.12.12.2 0.0.0.0
network 23.23.23.2 0.0.0.0
no auto-summary
R3:
R3#show running-config | be eigrp
router eigrp 10
network 23.23.23.3 0.0.0.0
network 34.34.34.3 0.0.0.0
no auto-summary
保证GRE隧道畅通后,配置两点间的隧道tunnel
R1:
interface Tunnel0
ip address 192.168.1.1 255.255.255.0
tunnel source 12.12.12.1
tunnel destination 34.34.34.4
要保证tunnel 目的地址的可达性,所以写了条默认路由
R1(config)#ip route 0.0.0.0 0.0.0.0 ethernet 0/0
同理在r4上
R4:
interface Tunnel0
ip address 192.168.1.2 255.255.255.0
tunnel source 34.34.34.4
tunnel destination 12.12.12.1
R1(config)#ip route 0.0.0.0 0.0.0.0 ethernet 0/0
R1与R4启动路由协议ospf
R1
r4#show run | be ospf
router ospf 10
router-id 1.1.1.1
log-adjacency-changes
network 1.1.1.1 0.0.0.0 area 0
network 1.1.1.2 0.0.0.0 area 0
network 1.1.1.3 0.0.0.0 area 0
network 192.168.1.1 0.0.0.0 area 0
R4
r4#show run | be ospf
router ospf 10
router-id 2.2.2.2
log-adjacency-changes
redistribute connected subnets route-map oe
redistribute static route-map oe
network 2.2.2.2 0.0.0.0 area 1
network 2.2.2.3 0.0.0.0 area 1
network 192.168.1.2 0.0.0.0 area 0
!
Access-list1 permit host 2.2.2.1
测试R1 R4路由表
R1
r1#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Gateway of last resort is 0.0.0.0 to network 0.0.0.0
1.0.0.0/32 is subnetted, 3 subnets
C 1.1.1.1 is directly connected, Loopback0
C 1.1.1.3 is directly connected, Loopback3
C 1.1.1.2 is directly connected, Loopback1
2.0.0.0/32 is subnetted, 3 subnets
O IA 2.2.2.2 [110/11112] via 192.168.1.2, 00:26:06, Tunnel0 由于宣告时使用的area1 所以属于3类SLA 所以产生OIA
O IA 2.2.2.3 [110/11112] via 192.168.1.2, 00:26:06, Tunnel0
O E2 2.2.2.1 [110/20] via 192.168.1.2, 00:00:00, Tunnel0 12.0.0.0/24 is subnetted, 1 subnets 经过route-map 重分布直连 后学习到的路由
C 12.12.12.0 is directly connected, Ethernet0/0
C 192.168.1.0/24 is directly connected, Tunnel0
S* 0.0.0.0/0 is directly connected, Ethernet0/0
R4
r4#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Gateway of last resort is 0.0.0.0 to network 0.0.0.0
34.0.0.0/24 is subnetted, 1 subnets
C 34.34.34.0 is directly connected, Ethernet0/0
1.0.0.0/32 is subnetted, 3 subnets
O 1.1.1.1 [110/11112] via 192.168.1.1, 00:27:48, Tunnel0
O 1.1.1.3 [110/11112] via 192.168.1.1, 00:27:48, Tunnel0
O 1.1.1.2 [110/11112] via 192.168.1.1, 00:27:48, Tunnel0
2.0.0.0/32 is subnetted, 3 subnets
C 2.2.2.2 is directly connected, Loopback1
C 2.2.2.3 is directly connected, Loopback2
C 2.2.2.1 is directly connected, Loopback0
C 192.168.1.0/24 is directly connected, Tunnel0
S* 0.0.0.0/0 is directly connected, Ethernet0/0
转载于:https://blog.51cto.com/xukaicapcom/1011067