1、IPsec是怎么对GRE进行加密的
GRE:
公网地址+GRE隧道接口地址+原始数据包地址
IPSEC over GRE:
公网地址+IPsec加密点地址+原始数据包地址
2、匹配MAP的条件:
在接口上必须有map
源和目的地址必须满足map中的acl
3、关于IPSEC over GRE
目的:
配置GRE的目的是可以在隧道两边使用动态路由协议,通过隧道相互之间进
行学习,但是GRE隧道只是起到一个隧道的作用,还要通过IPsec进行加密,就将这两者结合
起来使用,这种技术一般不会用在工程里面,在工程里面用的比较广泛的技术就是GRE over
IPsec
缺点:
有多少感兴趣流量,就要定义多少条ACL,很麻烦
步骤:
先配置GRE隧道
在GRE隧道上面配置路由
配置IPsec
一、使用tunnel接口作为ESP封装的源和目的IP地址(加密的更新源)
物理接口:202.100.1.0/24
|-----------------------|
--1.1.1.1---|R1|--------------------|R2|--4.4.4.4--
|-----------------------|
隧道地址:172.16.1.0/24
通信点流量:1.1.1.1<------------>4.4.4.4 (感兴趣流量)
加密点接口:202.100.1.1<-------->202.100.1.2(使用物理接口做加密点更新源)
使用物理接口作为加密更新源的步骤分析:
1、建立GRE隧道,通过GRE隧道让两边都能学习到对端的路由
2、原始数据包:1.1.1.1--->4.4.4.4
查找路由表,发现4.4.4.4是从tunnel接口学习到的
将流量转发到tunnel接口,发现tunnel接口上面有map
匹配map发现该流量是map中定义的感兴趣流量,进行ESP封装
ESP封装:使用的是ipsec中定义的加密更新源和目的地址
202.100.1.1--->202.100.1.2
3、ESP封装的数据包:202.100.1.1--->202.100.1.2
查找路由表,发现202.100.1.2就是本地的物理接口地址
直接发送到物理接口,并去匹配物理接口上的map
发现该流量并不是该map中定义的感兴趣流量
通过物理接口发送出去
R1:
interface tunnel 0
ip address 172.16.1.1 255.25.255.0
no shutdown
tunnel source fa0/0
tunnel destination 202.100.1.2
exit
router ospf 1
network 172.16.1.0 0.0.0.255 area 0
network 1.1.1.1 0.0.0.0 area 0
network 2.2.2.2 0.0.0.0 area 0
network 3.3.3.3 0.0.0.0 area 0
R2:
interface tunnel 1
ip address 172.16.1.2 255.255.255.0
tunnel source fa0/0
tunnel destination 202.100.1.1
router ospf 1
network 172.16.1.0 0.0.0.255 area 0
network 4.4.4.4 0.0.0.0 area 0
network 5.5.5.5 0.0.0.0 area 0
network 6.6.6.6 0.0.0.0 area 0
建立IPsec ×××
R1:
crypto isakmp policy 10
authentication pre-share
encryption 3des
hash sha
group 2
crypto isakmp key cisco address 202.100.1.1
crypto ipsec transform-set cisco esp-des esp-md5-hmac
crypto map cisco 10 ipsec-isakmp
set peer 202.100.1.2
set transform-set cisco
match address ***
exit
ip access-list extended ***
permit ip host 1.1.1.1 host 4.4.4.4
interface tunnel 0
crypto map cisco
interface fa0/0
crypto map cisco
tunnel口上必须启用map,除此之外,在所有的物理接口上最好也启用该map
R2:
crypto isakmp policy 10
authentication pre-share
encryption 3des
hash sha
group 2
crypto isakmp key cisco address 202.100.1.1
crypto ipsec transform-set cisco esp-des esp-md5-hmac
crypto map cisco 10 ipsec-isakmp
set peer 202.100.1.1
set transform-set cisco
match address ***
exit
ip access-list extended ***
permit ip host 4.4.4.4 host 1.1.1.1
interface tunnel 0
crypto map cisco
interface fa0/0
crypto map cisco
二、使用回环接口地址作为ESP封装的源和目的IP
使用环回接口作为加密更新源的步骤分析:
物理接口:202.100.1.0/24
|------------------------|
--1.1.1.1---|R1|--------------------|R2|--4.4.4.4--
|------------------------|
隧道地址:172.16.1.0/24
通信点流量:1.1.1.1<------------>4.4.4.4 (感兴趣流量)
加密点接口:11.1.1.1<-------->22.2.2.2(使用回环接口做加密点更新源)
1、原始数据包1.1.1.1--->4.4.4.4
查询路由表,发现到达4.4.4.4的出口是tunnel接口
发送到tunnel接口上,而在tunnel接口上又有map
匹配map,发现该流量是map中定义的感兴趣流量
对该流量进行加密,封装ESP包头
ESP封装:通过IPsec中定义的源和目的地址
2、ESP封装后的数据包:11.1.1.1--->22.2.2.2
查询路由表,发现到达22.2.2.2的下一跳还是tunnel接口
将这个新的数据包发送给tunnel接口
tunnel接口收到以后,匹配map,发现不是map中定义的感兴趣流量
该流量在tunnel接口上进行GRE封装,封装成为正常的数据包
GRE封装:使用GRE隧道中定义的源和目的地址进行封装
3、GRE封装后的数据包:202.100.1.1--->202.100.1.2
查找路由表,发现目的地址的下一跳是物理接口
新的数据包从物理接口进行正常的转发
新的数据包的IP包头结构
|202.100.1.1-->202.100.1.2|+|11.1.1.1-->22.2.2.2|+|1.1.1.1-->4.4.4.4|
R1:
interface loopback 0
ip address 11.1.1.1 255.255.255.0
no shutdown
rotuer ospf 1
network 11.1.1.0 0.0.0.255 area 0
exit
no crypto isakmp key cisco address 202.100.1.2
crypto isakmp key cisco address 22.2.2.2
crypto map cisco 10 ipsec-isakmp
no set peer 202.100.1.2
set peer 22.2.2.2
exit
crypto map cisco local-address loopback 0
使用换回口地址作为加密的更新源
R2:
interface loopback 1
ip address 22.2.2.2 255.255.255.0
no shutdown
router ospf 1
network 22.2.2.0 0.0.0.255 area 0
exit
no crypto isakmp key cisco address 202.100.1.1
crypto isakmp key cisco address 11.1.1.1
crypto map cisco 10 ipsec-isakmp
no set peer 202.100.1.1
set peer 11.1.1.1
exit
crypto map cisco local-address loopback 0
转载于:https://blog.51cto.com/applechaning/1343516