Hướng dẫn cấu hình DMVPN trên Router Cisco
Hướng dẫn cấu hình DMVPN trên Router Cisco
Trong bài viết này mình sẽ hướng dẫn các bạn cấu hình DMVPN kết hợp với mGRE, NHRP và IPSec để tạo các Tunnel kết nối giữa các chi nhánh
Trong các bài viết trước mình đã giới thiệu về DMVPN, NHRP cũng như cấu hình GRE kết hợp IPSec, các bạn có thể tham khảo các bài viết:
- DMVPN là gì? Mô hình triển khai DMVPN
- NHRP là gì? Ứng dụng của NHRP trong DMVPN
- GRE Tunnel là gì? Hướng dẫn cấu hình GRE Tunnel Trên Router Cisco
Trong bài viết này chúng ta sử dụng mô hình bao gồm 1 Trụ sở chính đóng vai trò là Hub và là Next Hop Server (NHS) chứa cơ sở dữ liệu NHRP và 3 chính nhánh (Spoke). Mục tiêu của chúng ta là kết nối các chinh nhánh tới trụ sở chính và tạo các Tunnel khi các chi nhánh cần giao tiếp với nhau. Các Tunnel này được mã hóa bằng IPSec để bảo mật dữ liệu.
Các bước cấu hình bao gồm
- Bước 1: cấu hình DMVPN Hub và Next Hop Server (NHS) trên Router tại trụ sở chính
- Bước 2: cấu hình DMVPN Spoke trên các Router chi nhánh
- Bước 3: cấu hình IPSec VPN và gán vào mGRE để bảo mật dữ liệu
- Bước 4: cấu hình định tuyến giữa các DMVPN mGRE Tunnel
Cấu hình DMVPN Hub
Với DMVPN trên Router Hub chúng ta chỉ cần tạo 1 Interface Tunnel để kết nối tới tất cả các chi nhánh. Chi tiết cấu hình:
HeadQuarter(config)#interface Tunnel0 HeadQuarter(config-if)#description DMVPN HeadQuarter(config-if)#ip address 10.0.0.4 255.255.255.0 HeadQuarter(config-if)#no ip redirects HeadQuarter(config-if)#ip nhrp authentication CNTTShop HeadQuarter(config-if)#ip nhrp map multicast dynamic HeadQuarter(config-if)#ip nhrp network-id 1 HeadQuarter(config-if)#tunnel source 4.4.4.4 HeadQuarter(config-if)#tunnel mode gre multipoint |
Chúng ta có thể thấy ngay DMVPN không có Tunnel Destination, nó được thay thế bằng lệnh tunnel mode gre multipoint để sử dụng mGRE thay cho GRE.
Lệnh ip nhrp map multicast dynamic cho phép chuyển tiếp lưu lượng multicast qua các tunnel. Việc này giúp cho DMVPN hỗ trợ các giao thức định tuyến động như EIGRP, OSPF để cập nhật thông tin về các mạng nội bộ của các chi nhánh khi có sự thay đổi.
Lệnh ip nhrp network-id 1 dùng để xác định DMVPN. Các Router khi tham gia vào DMVPN phải có chung network-id.
Lệnh ip nhrp authentication CNTTShop để xác thực giữa các router khi cần truy vấn cơ sở dữ liệu NHRP.
Cấu hình trên Router Spoke
Việc cấu hình trên Router Spoke cũng tương tự như trên router Hub
Cấu hình router Branch1
Branch1(config)#interface Tunnel0 Branch1(config-if)#description DMVPN Branch1(config-if)#ip address 10.0.0.1 255.255.255.0 Branch1(config-if)#no ip redirects Branch1(config-if)#ip nhrp authentication CNTTShop Branch1(config-if)#ip nhrp map multicast dynamic Branch1(config-if)#ip nhrp map 10.0.0.4 4.4.4.4 Branch1(config-if)#ip nhrp map multicast 4.4.4.4 Branch1(config-if)#ip nhrp network-id 1 Branch1(config-if)#ip nhrp nhs 10.0.0.4 Branch1(config-if)#tunnel source E0/0 Branch1(config-if)#tunnel mode gre multipoint |
- ip nhrp nhs 10.0.0.4: cho router Spoke biết địa chỉ IP của Next Hop Server (NHS) để truy vấn cơ sở dữ liệu NHRP khi cần.
- ip nhrp map 10.0.0.4 4.4.4.4: map địa chỉ NHS với địa chỉ IP Public của Router Hub.
- ip nhrp map multicast 4.4.4.4: chỉ định các Spoke chỉ được gửi gói tin Multicast tới Hub chứ không được gửi giữa các Spoke. Tất cả gói tin Multicast phải được gửi đến Hub xử lý sau đó mới cập nhật xuống Spoke.
- tunnel source E0/0: lệnh này được cấu hình với các Spoke sử dụng địa chỉ IP động. Khi IP wan thay đổi, spoke sẽ cập nhật ip này lên NHS thông qua cổng E0/0. Với IP tĩnh chúng ta có thể chỉ định luôn địa chỉ IP wan trong lệnh này.
Tương tự chúng ta cấu hình trên Router Branch2 và 3
Cấu hình router Branch2
Branch2(config)#interface Tunnel0 |
Cấu hình router Branch3
Branch3(config)#interface Tunnel0 |
Kiểm tra cấu hình
Chúng ta sử dụng lệnh show dmvpn để kiểm tra xem các router Spoke đã tạo Tunnel kết nối đến Hub hay chưa:
HeadQuarter# show dmvpn Legend: Attrb --> S - Static, D - Dynamic, I - Incomplete N - NATed, L - Local, X - No Socket # Ent --> Number of NHRP entries with same NBMA peer NHS Status: E --> Expecting Replies, R --> Responding UpDn Time --> Up or Down Time for a Tunnel ========================================================================== Interface: Tunnel0, IPv4 NHRP Details Type:Hub, NHRP Peers:3, # Ent Peer NBMA Addr Peer Tunnel Add State UpDn Tm Attrb ----- --------------- --------------- ----- ------- ----- 1 1.1.1.1 10.0.0.1 UP 00:04:58 D 1 2.2.2.2 10.0.0.2 UP 00:04:12 D 1 3.3.3.3 10.0.0.3 UP 00:04:14 D |
Kiểm tra trên Router Spoke
Branch1# show dmvpn Legend: Attrb --> S - Static, D - Dynamic, I - Incomplete N - NATed, L - Local, X - No Socket # Ent --> Number of NHRP entries with same NBMA peer NHS Status: E --> Expecting Replies, R --> Responding UpDn Time --> Up or Down Time for a Tunnel ========================================================================== Interface: Tunnel0, IPv4 NHRP Details Type:Spoke, NHRP Peers:1, # Ent Peer NBMA Addr Peer Tunnel Add State UpDn Tm Attrb ----- -------------- --------------- ----- ------- ----- 1 4.4.4.4 10.0.0.4 UP 00:06:35 S |
Hiện tại khi mới cấu hình xong, trên các Router Spoke chỉ hiển thị Tunnel với Hub do các Tunnel này là tunnel tĩnh và có Attrb là S. Khi cần kết nối giữa các chi nhánh, các Spoke sẽ tạo các Tunnel động để giao tiếp, lúc này chúng ta show dmvpn sẽ hiển thị thêm thông tin của chi nhánh mà chúng ta kết nối đến và có Attrb là D.
Bảo mật DMVPN với IPSec
Mình đã hướng dẫn cấu hình IPSEC kết hợp với GRE trong bài viết GRE Tunnel là gì? Hướng dẫn cấu hình GRE Tunnel Trên Router Cisco. Vì vậy trong bài viết này mình sẽ không hướng dẫn chi tiết, các bạn có thể tham khảo trong bài viết trên.
Cấu hình IPSEC tương tự nhau trên 4 Router, chi tiết cấu hình:
crypto isakmp policy 1 encr 3des hash md5 authentication pre-share group 2 ! crypto isakmp key CNTTShop address 0.0.0.0 ! crypto ipsec transform-set TS esp-3des esp-md5-hmac ! crypto ipsec profile IPSEC-DMVPN set security-association lifetime seconds 86400 set transform-set TS ! interface Tunnel 0 tunnel protection ipsec profile IPSEC-DMVPN |
Lệnh crypto isakmp key CNTTShop address 0.0.0.0 có địa chỉ ip là 0.0.0.0 do các chi nhánh trong mô hình sử dụng IP động nên phải để 0.0.0.0 để match tất cả IP.
Định tuyến giữa các DMVPN Tunnel
Chúng ta cần cấu hình định tuyến để các Router biết khi nào đẩy gói tin qua DMVPN Tunnel. Chúng ta có thể cấu hình định tuyến tĩnh hoặc động như EIGRP, OSPF (do đã cho phép gói tin multicast đi qua tunnel bằng lệnh ip nhrp map multicast dynamic ở trên). Trong bài này mình sẽ sử dụng định tuyến tĩnh cho đơn giản.
Trên Router HeadQuarter:
HeadQuarter(config)#ip route 192.168.1.0 255.255.255.0 10.0.0.1 HeadQuarter(config)#ip route 192.168.2.0 255.255.255.0 10.0.0.2 HeadQuarter(config)#ip route 192.168.3.0 255.255.255.0 10.0.0.3 |
Trên Router Branch1:
Branch1(config)#ip route 192.168.4.0 255.255.255.0 10.0.0.4 Branch1(config)#ip route 192.168.2.0 255.255.255.0 10.0.0.2 Branch1(config)#ip route 192.168.3.0 255.255.255.0 10.0.0.3 |
Trên Router Branch2:
Branch2(config)#ip route 192.168.1.0 255.255.255.0 10.0.0.1 Branch2(config)#ip route 192.168.4.0 255.255.255.0 10.0.0.4 Branch2(config)#ip route 192.168.3.0 255.255.255.0 10.0.0.3 |
Trên Router Branch3:
Branch3(config)#ip route 192.168.1.0 255.255.255.0 10.0.0.1 Branch3(config)#ip route 192.168.2.0 255.255.255.0 10.0.0.2 Branch3(config)#ip route 192.168.4.0 255.255.255.0 10.0.0.4 |
Như vậy là chúng ta đã cấu hình xong DMVPN kết hợp với mGRE, NHRP và IPSec để kết nối các chi nhánh. Chúc các bạn thành công!
Nhận xét
Đăng nhận xét