中小型企業組網,GRE over IPsec項目實例

項目背景:

公司總部和分部之間想要組網,傳輸ERP數據,要求數據傳輸是加密的;

總部網段:192.168.0.0/16

分公司網段:172.16.0.0/16

 

網絡拓撲:

拓撲說明:

R2,R3分別爲Site1,Site2的邊界路由器,連接到ISP供應商;

Site1有三個部門,劃分3個VLAN;

Site2有兩個部門,劃分2個VLAN;

R2,R3之間先建立IPsec VP N再建立GRE通道;

R2,R3,R4,R5之間運行OSPF協議;

配置:

1. 配置各路由器端口IP地址,使相鄰路由器相互ping通
R1:
R1(config)#int e1/0
R1(config-if)#ip address 12.1.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#int e1/1
R1(config-if)#ip address 13.1.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#exit
 
R2:
R2(config)#int e1/0
R2(config-if)#ip address 12.1.1.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#int e1/1
R2(config-if)#ip address 192.168.0.1 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#int loopback0
R2(config-if)#ip address 2.2.2.2 255.255.255.0
R2(config-if)#exit
 
R3:
R3(config)#int e1/0
R3(config-if)#ip address 13.1.1.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit
R3(config)#int e1/1
R3(config-if)#ip address 172.16.0.1 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit
R3(config)#int loopback0
R3(config-if)#ip address 3.3.3.3 255.255.255.0
R3(config-if)#exit
 
R4:
R4(config)#int e1/3
R4(config-if)#ip address 192.168.0.254 255.255.255.0
R4(config-if)#no shutdown
R4(config-if)#exit
 
R5:
R5(config)#int e1/3
R5(config-if)#ip address 172.16.0.254 255.255.255.0
R5(config-if)#no shutdown
R5(config-if)#exit

2. 在R2、R3之間配置IPsec VPN,在環回接口之間建立連接
R2:
//配置感興趣流,使Site1內網的流量能夠通過該路由器到Site2
R2(config)#access-list 100 permit ip 2.2.2.0 0.0.0.255 3.3.3.0 0.0.0.255
R2(config)#crypto isakmp policy 10		//配置加密策略
R2(config-isakmp)#encryption 3des
R2(config-isakmp)#hash md5
R2(config-isakmp)#authentication pre-share
R2(config-isakmp)#group 2
R2(config-isakmp)#crypto isakmp key 6 cisco123 address 13.1.1.3		//密鑰爲cisco123,13.1.1.3爲對端連接ISP的外網IP地址
R2(config)#crypto ipsec transform-set xxx esp-3des esp-md5-hmac
R2(cfg-crypto-trans)#mode tunnel		//site-to-site使用tunnel模式
R2(cfg-crypto-trans)#crypto map linktosite 10 ipsec-isakmp
	% NOTE: This new crypto map will remain disabled until a peer
        and a valid access list have been configured.
R2(config-crypto-map)#set transform-set xxx
R2(config-crypto-map)#set peer 13.1.1.3		//對等體IP
R2(config-crypto-map)#match address 100		//匹配的感興趣流爲ACL 100
R2(config-crypto-map)#int e1/0			//將設置好的加密圖應用到接口e0/0上
R2(config-if)#crypto map linktosite
	*Mar  1 00:12:00.439: %CRYPTO-6-ISAKMP_ON_OFF: ISAKMP is ON
R2(config-if)#exit
R2(config)ip route 0.0.0.0 0.0.0.0 12.1.1.1	//該路由器的所有流量下一跳爲12.1.1.1
 
R3:
//配置感興趣流,使Site2內網的流量能夠通過該路由器到Site1
R3(config)#access-list 100 permit ip 3.3.3.0 0.0.0.255 2.2.2.0 0.0.0.255
R3(config)#crypto isakmp policy 10		//配置加密策略
R3(config-isakmp)#encryption 3des
R3(config-isakmp)#hash md5
R3(config-isakmp)#authentication pre-share
R3(config-isakmp)#group 2
R3(config-isakmp)#crypto isakmp key 6 cisco123 address 12.1.1.2		//密鑰爲cisco123,13.1.1.3爲對端連接ISP的外網IP地址
R3(config)#crypto ipsec transform-set xxx esp-3des esp-md5-hmac
R3(cfg-crypto-trans)#mode tunnel		//site-to-site使用tunnel模式
R3(cfg-crypto-trans)#crypto map linktosite 10 ipsec-isakmp
	% NOTE: This new crypto map will remain disabled until a peer
        and a valid access list have been configured.
R3(config-crypto-map)#set transform-set xxx
R3(config-crypto-map)#set peer 12.1.1.2		//對等體IP
R3(config-crypto-map)#match address 100		//匹配的感興趣流爲ACL 100
R3(config-crypto-map)#int e1/0			//將設置好的加密圖應用到接口e0/0上
R3(config-if)#crypto map linktosite
	*Mar  1 00:12:00.439: %CRYPTO-6-ISAKMP_ON_OFF: ISAKMP is ON
R3(config-if)#exit
R3(config)ip route 0.0.0.0 0.0.0.0 13.1.1.1	//該路由器的所有流量下一跳爲13.1.1.1

至此IPsec VP N配置完畢,我們來ping一下試試:

ping成功,我們接下來配置GRE通道。

3. 在R2、R3之間建立GRE通道
R2:
R2(config)#int tunnel 0				//創建通道0
	*Mar  1 00:15:50.263: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel0, changed state to down
R2(config-if)#tunnel source 2.2.2.2		//通道的源ip
R2(config-if)#tunnel destination 3.3.3.3	//通道的目標ip,此時如果源ip和目標ip之間能正常通信時,通道UP
	*Mar  1 00:16:57.287: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel0, changed state to up
R2(config-if)#tunnel mode gre ip
R2(config-if)#ip address 10.1.1.2 255.255.255.0	//通道的兩端必須在同一網段,邏輯上能互通
R2(config-if)#exit
R2(config)#ip route 192.168.0.0 255.255.0.0 tunnel 0	//指定192.168.0.0網段的流量走通道0
 
R3:
R3(config)#int tunnel 0				//創建通道0
	*Mar  1 00:15:50.263: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel0, changed state to down
R3(config-if)#tunnel source 3.3.3.3		//通道的源ip
R3(config-if)#tunnel destination 2.2.2.2	//通道的目標ip,此時如果源ip和目標ip之間能正常通信時,通道UP
	*Mar  1 00:16:57.287: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel0, changed state to up
R3(config-if)#tunnel mode gre ip
R3(config-if)#ip address 10.1.1.3 255.255.255.0	//通道的兩端必須在同一網段,邏輯上能互通
R3(config-if)#exit
R3(config)#ip route 172.16.0.0 255.255.0.0 tunnel 0	//指定172.16.0.0網段的流量走通道0
 
4. 在R2、R3、R4、R5之間配置OSPF協議
R2:
R2(config)#router ospf 1
R2(config-router)#router-id 2.2.2.2
R2(config-router)#network 10.1.1.0 0.0.0.255 area 0
R2(config-router)#network 192.168.0.0 0.0.0.255 area 1
R2(config-router)#exit
 
R3:
R3(config)#router ospf 1
R3config-router)#router-id 3.3.3.3
R3(config-router)#network 10.1.1.0 0.0.0.255 area 0
R3(config-router)#network 172.1.0.0 0.0.0.255 area 2
R3(config-router)#exit
 
R4:
R4(config)#router ospf 1
R4config-router)#router-id 4.4.4.4
R4(config-router)#network 192.168.0.0 0.0.0.255 area 1
R4(config-router)#exit
R4(config)#ip route 172.16.0.0 255.255.0.0 10.1.1.2	//指定去往172.16.0.0網段的流量下一跳爲10.1.1.2(GRE通道)
 
R5:
R5(config)#router ospf 1
R5config-router)#router-id 5.5.5.5
R5(config-router)#network 172.16.0.0 0.0.0.255 area 2
R5(config-router)#exit
R5(config)#ip route 192.168.0.0 255.255.0.0 10.1.1.3	//指定去往192.168.0.0網段的流量下一跳爲10.1.1.3(GRE通道)

至此GRE通道配置完成,我們來測試一下Site1 ping Site2試試:

測試成功。

有人可能會有疑問說,就兩臺路由器爲啥要用OSPF協議呢,直接用靜態路由不可以嗎?

其實如果你更喜歡靜態路由也行,只是我們站在網絡架構的角度考慮的話,以後如果公司壯大,需要用到更多的路由,我們就可以不必再重新設計網絡拓撲了,在原有的拓撲上加路由器,配路由協議就行。

 

本文原創,轉載請註明出處。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章