篇幅无多余废话,多为代码演示,建议耐心阅读。
这里使用的是cicso的模拟器进行演示,代码理解请根据实际用户的模拟器的进行阅读。
前部分篇幅为基础的拓扑搭建,本篇文章所讲的处理案例请点击这里跳转。
首先完成拓扑上的路由链路的配置,使得链路上的两台PC机能够互相PING通对方(连接PC机的接口配置不再演示)。
这里声明为什么不用最简单的两台直连路由实验?因为两台直连路由只要完成链路互通就能直接搭建隧道,不会出现该案例讲的原因。
- 接口IP地址
- 静态路由
路由配置命令参考:
R0(config-if)#int fa0/0
R0(config-if)#ip add 1.1.1.1 255.255.255.0
R0(config-if)#no shu
R0(config-if)#ip route 192.168.2.0 255.255.255.0 1.1.1.2
R1(config)#int fa0/0
R1(config-if)#ip add 1.1.1.2 255.255.255.0
R1(config-if)#no shu
R1(config-if)#int fa0/1
R1(config-if)#ip add 2.1.1.1 255.255.255.0
R1(config-if)#no shu
R1(config)#ip route 192.168.2.0 255.255.255.0 2.1.1.2
R1(config)#ip route 192.168.1.0 255.255.255.0 1.1.1.1
R2(config-if)#int fa0/0
R2(config-if)#ip add 2.1.1.2 255.255.255.0
R2(config-if)#no shu
R2(config)#ip route 192.168.1.0 255.255.255.0 2.1.1.1
PING效果测试:
使用跟踪路由,获得数据包访问目标所采取的路径:
GRE VPN 配置命令参考:
R0(config)#int tunnel 0
R0(config-if)#ip address 10.1.1.1 255.255.255.0
R0(config-if)#no shu
R0(config-if)#tunnel source fa0/0
R0(config-if)#tunnel destination 2.1.1.2(目的地址,指向R2的fa0/0)
R2(config)#int tunnel 0
R2(config-if)#ip add 10.1.1.2 255.255.255.0
R2(config-if)#no shu
R2(config-if)#tunnel source fa0/0
R2(config-if)#tunnel destination 1.1.1.1(目的地址,指向R0的fa/0)
当你的Tunnel配置完成后,发现隧道接口状态并没有up,我们查看一下。
原因分析:
- 是否配置了tunnel接口的IP地址。
- 是否配置了源地址和目的地址。
- 是否源和目的地址之间有可达的路由。
看到这里很明显的,我们上面没有配置隧道的可达路由,测试看看吧。
隧道路由之间的可达链路配置(静态路由):
R0(config)#ip route 192.168.2.0 255.255.255.0 10.1.1.2
R0(config)#ip route 2.1.1.0 255.255.255.0 1.1.1.2
R0(config)#
%LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel0, changed state to up
R0(config)#no ip route 192.168.2.0 255.255.255.0 1.1.1.2(隧道已经搭建成功,原先的链路不需要了)
R2(config)#ip route 192.168.1.0 255.255.255.0 10.1.1.1
R2(config)#ip route 1.1.1.0 255.255.255.0 2.1.1.1
R2(config)#
%LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel0, changed state to up
R2(config)#no ip route 192.168.1.0 255.255.255.0 2.1.1.1(隧道已经搭建成功,原先的链路不需要了)
(数据包已经通过构建的隧道进行转发数据)
这里解释一下静态路由这样构建的原因:
- 第一条静态路由配置是让PC机的数据包去找Tunnel的目的地址,通过隧道进行转发数据。
- 第二条静态路由配置是因为:文章上面所配置路由的Tunnel目的地址时,分别指向了R0、R2的fa0/0接口地址,即R0指向2.1.1.2,R2指向1.1.1.1。
- 这样构建后的拓扑可以想象成是两台路由直连,不过中间的链路成了隧道。
- 所以这里的静态路由就是让数据包找到转发的方向,构成隧道的"畅通",本案例所讲解的down原因,就是此。
本案例来源于学习过程,纯原创,有编辑错误的地方欢迎留言讨论。