IPSec VPN
사설망끼리 통신하는 경우만 VPN터널을 타고 통신되도록 설정 터널구간은 20.0.0.0/30 네트워크를 사용 하며 IPSec를 이용한 VPN를 구성
R1(config)#int tunnel 0
R1(config)#ip address 20.0.0.1 255.255.255.252
R1(config-if)#tunnel source 10.0.0.1
R1(config-if)#tunnel destination 10.0.0.2
R1(config-if)#exit
R1(config)#crypto isakmp policy 1
R1(config-isakmp)#encryption 3des
R1(config-isakmp)#hash sha
R1(config-isakmp)#group 2
R1(config-isakmp)#exit
R1(config)#crypto isakmp key 0 cisco address 10.0.0.2
R1(config)#crypto ipsec transform-set IPSEC esp-3des ah-sha-hmac
R1(cfg-crypto-trans)#exit
R1(config)#crypto map VPN 1 ipsec-isakmp
R1(config-crypto-map)#set peer 10.0.0.2
R1(config-crypto-map)#set transform-set IPSEC
R1(config-crypto-map)#match address 100
R1(config)#access-list 100 permit ip 192.168.0.0 0.0.0.255 172.16.0.0 0.0.0.255
R1(config)#route-map SKILL permit 1
R1(config-route-map)#match ip address 100
R1(config-route-map)#set ip next-hop 20.0.0.2
R1(config)#int tunnel 0
R1(config-if)#crypto map VPN
R1(config-if)#int fa 0/0.10
R1(config-if)#ip policy route-map SKILL
R1(config-if)#int fa 0/0.20
R1(config-if)#ip policy route-map SKILL
R2(config)#int tunnel 0
R2(config)#ip address 20.0.0.2 255.255.255.252
R2(config-if)#tunnel source 10.0.0.2
R2(config-if)#tunnel destination 10.0.0.1
R2(config-if)#exit
R2(config)#crypto isakmp policy 1
R2(config-isakmp)#encryption 3des
R2(config-isakmp)#hash sha
R2(config-isakmp)#group 2
R2(config-isakmp)#exit
R2(config)#crypto isakmp key 0 cisco address 10.0.0.1
R2(config)#crypto ipsec transform-set IPSEC esp-3des ah-sha-hmac
R2(cfg-crypto-trans)#exit
R2(config)#crypto map VPN 1 ipsec-isakmp
R2(config-crypto-map)#set peer 10.0.0.1
R2(config-crypto-map)#set transform-set IPSEC
R2(config-crypto-map)#match address 100
R2(config)#access-list 100 permit ip 172.16.0.0 0.0.0.255 192.168.0.0 0.0.0.255
R2(config)#route-map SKILL permit 1
R2(config-route-map)#match ip address 100
R2(config-route-map)#set ip next-hop 20.0.0.1
R2(config)#int tunnel 0
R2(config-if)#crypto map VPN
R2(config-if)#int fa 0/0
R2(config-if)#ip policy route-map SKILL
- 해설
crypto isakmp key 0 cisco address 10.0.0.1// cisco는 서로간의 인증암호 이며 10.0.0.1은 암호를 교환하며 터널링을 맺을 라우터의 실제 인터페이스 주소
crypto ipsec transform-set IPSEC esp-3des ah-sha-hmac// ipsec를 구성하기 위한 문장이며 IPSEC는 자신이 만들 정책이름을 뜻함
crypto map VPN 1 ipsec-isakmp// ipsec를 인터페이스에 씌우기 위해 정책을 만드는 것이며 VPN은 자신이 만들 정책이름
set peer 10.0.0.1// ipsec VPN을 맺을 라우터의 실제 인터페이스 주소
set transform-set IPSEC// ipsec VPN을 맺을때 사용하는 transform으로 IPSEC정책을 이용
match address 100// ipsec VPN은 이 주소에 정의된 주소규칙만 허용
route-map SKILL permit 1// 강제로 통신경로를 지정하기위해 사용
match ip address 100// 통신시킬 주소를 정의
set ip next-hop 20.0.0.1// 위의 acl이 움직일 때 반드시 이 주소로 통신하게 설정, 그러니 쉽게 풀자면 acl100이 192.168.0.0 0.0.0.255 172.16.0.0 0.0.0.255 이렇게 되어있다면 192.168.0.0/24 네트워크가 172.16.0.0/24로 통신하는 경우는 상대편 라우터의 20.0.0.1 주소로 패킷전송
crypto map VPN// 정의한 인터페이스에 VPN정책을 적용
ip policy route-map SKILL// 정의한 인터페이스에 강재라우팅 정책을 적용