HSRP – Hot Standby Router Protocol là một giao thức cho phép các router thực hiện nhiệm vụ dự phòng gateway cho các host trong một mạng LAN. Trong bài viết tuần này, chúng ta sẽ cùng nhau tìm hiểu về giao thức dự phòng gateway này.
Chúng ta cùng xem xét vấn đề quan tâm thông qua một bài lab ví dụ.
Sơ đồ
Mô tả
– Sơ đồ lab gồm 4 router được đấu nối với nhau và quy hoạch IP như hình 1.
– Các router R1, R2 và R3 thực hiện chạy định tuyến đảm bảo mọi địa chỉ thấy nhau.
– Router Host đóng vai trò một host trên mạng LAN 192.168.12.0/24.
– Bạn đọc có thể sử dụng thiết bị thật hoặc giả lập trên GNS – 3 để thực hiện bài lab này.
Thực hiện
Bước 1: Cấu hình ban đầu
– Thực hiện đặt IP trên các cổng router theo quy hoạch IP như được chỉ ra trên hình 1.
– Chạy định tuyến RIPv2 trên các router R1, R2 và R3 đảm bảo các subnet trên sơ đồ đi đến được nhau.
Cấu hình
Trên R1:
R1(config)#interface f0/0
R1(config-if)#no shutdown
R1(config-if)#ip address 192.168.12.1 255.255.255.0
R1(config-if)#exit
R1(config)#interface s0/0/0
R1(config-if)#no shutdown
R1(config-if)#ip address 192.168.13.1 255.255.255.0
R1(config-if)#exit
R1(config)#router rip
R1(config-router)#version 2
R1(config-router)#no auto-summary
R1(config-router)#network 192.168.12.0
R1(config-router)#network 192.168.13.0
R1(config-router)#exit
Trên R2
R2(config)#interface f0/0
R2(config-if)#no shutdown
R2(config-if)#ip address 192.168.12.2 255.255.255.0
R2(config-if)#exit
R2(config)#interface s0/0/0
R2(config-if)#no shutdown
R2(config-if)#ip address 192.168.23.2 255.255.255.0
R2(config-if)#exit
R2(config)#router rip
R2(config-router)#version 2
R2(config-router)#no auto-summary
R2(config-router)#network 192.168.12.0
R2(config-router)#network 192.168.23.0
R2(config-router)#exit
Trên R3
R3(config)#interface loopback 0
R3(config-if)#ip address 192.168.3.1 255.255.255.0
R3(config-if)#exit
R3(config)#interface s0/0/0
R3(config-if)#no shutdown
R3(config-if)#ip address 192.168.13.3 255.255.255.0
R3(config-if)#exit
R3(config)#interface s0/1/0
R3(config-if)#no shutdown
R3(config-if)#ip address 192.168.23.3 255.255.255.0
R3(config-if)#exit
R3(config)#router rip
R3(config-router)#version 2
R3(config-router)#no auto-summary
R3(config-router)#network 192.168.13.0
R3(config-router)#network 192.168.23.0
R3(config-router)#exit
Kiểm tra
Ta kiểm tra rằng định tuyến đã hội tụ trên các router:
R1#show ip route rip
R 192.168.23.0/24 [120/1] via 192.168.13.3, 00:00:24, Serial0/0/0
[120/1] via 192.168.12.2, 00:00:23, FastEthernet0/0
R2#show ip route rip
R 192.168.13.0/24 [120/1] via 192.168.23.3, 00:00:00, Serial0/0/0
[120/1] via 192.168.12.1, 00:00:12, FastEthernet0/0
R3#show ip route rip
R 192.168.12.0/24 [120/1] via 192.168.23.2, 00:00:12, Serial0/1/0
[120/1] via 192.168.13.1, 00:00:16, Serial0/0/0
Bước 2: Cấu hình HSRP
– Cấu hình HSRP trên hai router R1 và R2 để các host thuộc subnet 192.168.12.0/24 có thể sử dụng địa chỉ 192.168.12.254 là địa chỉ default – gateway.
– Trong lược đồ dự phòng gateway thực hiện tại bước này, router R1 sẽ đóng vai trò forward chính cho dữ liệu bên trong subnet 192.168.12.0/24 đi ra bên ngoài và R2 đóng vai trò dự phòng. R2 sẽ thay thế vai trò của R1 nếu R1 bị mất kết nối xuống subnet 192.168.12.0/24.
Cấu hình
Trên R1:
R1(config)#interface f0/0
R1(config-if)#standby 1 ip 192.168.12.254
R1(config-if)#standby 1 priority 150
R1(config-if)#standby 1 preempt
R1(config-if)#exit
Trên R2:
R2(config)#interface f0/0
R2(config-if)#standby 1 ip 192.168.12.254
R2(config-if)#standby 1 preempt
R2(config-if)#exit
Ghi chú
HSRP – Hot Standby Router Protocol là một giao thức cho phép nhiều router cùng tham gia cung cấp default – gateway cho các host nằm trên một mạng LAN. Các router này sẽ cùng nhau xây dựng một router ảo và các host trên LAN sẽ cấu hình trỏ default – gateway về router ảo này thay vì các router thực (hình 2).
Các host đầu cuối trên LAN khi cần đi ra bên ngoài mạng LAN sẽ chuyển các gói cần đi ra ngoài LAN đến router ảo để có thể đi tiếp. Đối với các host, router gateway ảo này là một router gateway thực sự, các host này hoàn toàn không hề biết đó chỉ là router ảo được tạo ra bởi các router thực đang thực sự làm nhiệm vụ gateway cho LAN.
Router ảo vừa nêu sẽ được cấp một địa chỉ IP thực nằm trong dải IP cấp cho mạng LAN và các host đầu cuối sẽ khai báo default – gateway là địa chỉ IP này của router ảo. Ví dụ: trong câu lab này, hai router R1 và R2 cùng nhau tạo ra router ảo R, với địa chỉ IP 192.168.12.254 và các host đầu cuối trong LAN sẽ khai báo default – gateway của chúng là 192.168.12.254 của router ảo.
Việc chuyển gói tin từ trong LAN đi ra ngoài thực sự sẽ do một trong hai router tham gia xây dựng router ảo thực hiện; router còn lại sẽ làm nhiệm vụ dự phòng để khi router chính down, nó sẽ tiếp tục đảm nhận nhiệm vụ vận chuyển gói tin đi ra ngoài cho LAN.
Router vận chuyển chính thức được gọi là Active router và router dự phòng được gọi là Standby router.
Bên cạnh nhiệm vụ vận chuyển chính thức lưu lượng từ trong LAN ra ngoài, Active router còn đảm nhận nhiệm vụ trả lời ARP Reply cho ARP Request đến từ các host đầu cuối để phân giải địa chỉ MAC cho IP của router ảo. Với HSRP, địa chỉ MAC dành cho router ảo có định dạng 0000.0c07.acXX, trong đó XX là số hiệu group HSRP mà các router thật cùng tham gia để xây dựng router ảo (XX là số Hexa). Ví dụ: giả sử ta cấu hình để R1 và R2 tham gia group 1, địa chỉ MAC của router ảo sẽ là 0000.0c07.ac01.
Tiêu chí để bầu chọn Active cho một group HSRP là giá tri Priority trên cổng Ethernet đấu nối xuống LAN của các router tham gia group: router nào có Priority cao nhất sẽ được bầu chọn làm Active, router có Priority cao nhì sẽ được bầu là Standby và các router còn lại sẽ được giữ ở một trạng thái gọi là Listen (nếu xảy ra trường hợp nhiều hơn hai router tham gia group HSRP). Nếu xảy ra trường hợp nhiều router có giá trị Priority bằng nhau, địa chỉ IP sẽ được sử dụng để bầu chọn: router với IP cao nhất sẽ là Active, router với IP cao nhì sẽ là Standby, còn lại là Listen. IP chính là tie – breaker của Priority. Mặc định, việc bầu chọn Active/Standby của HSRP là non – preempt, tuy nhiên, ta có thể thay đổi được tính chất này.
Để cấu hình HSRP cho một mạng LAN, chúng ta cần thực hiện các thao tác cấu hình như sau:
Cấu hình group và IP cho router ảo
Trước hết, ta cần khai báo group mà các router tham gia và chỉ định địa chỉ IP dành cho router ảo:
R(config-if)#standby group-id ip IP_router_ảo
Trong đó:
– group-id: là chỉ số nhóm của group HSRP, thông số này nhận giá trị từ 0 đến 255.
– IP_router_ảo: là địa chỉ IP gán cho router ảo. Với HSRP, địa chỉ này không được phép trùng với bất kỳ địa chỉ IP nào khác trên mạng LAN.
Trong câu lab này, chúng ta khai báo để R1 và R2 cùng tham gia HSRP group 1, tạo ra router ảo có IP 192.168.12.254:
R1(config)#interface f0/0
R1(config-if)#standby 1 ip 192.168.12.254
R2(config)#interface f0/0
R2(config-if)#standby 1 ip 192.168.12.254
Cấu hình Priority
Tiếp theo, ta cấu hình giá trị Priority để chọn router đóng vai trò Active cho nhóm HSRP:
R(config-if)#standby group-id priority Priority
Thông số priority được cấu hình có thể nhận giá trị từ 0 đến 255, mặc định là 100 nếu không cấu hình chỉ rõ.
Trong câu lab này, chúng ta cấu hình để R1 làm Active bằng cách chỉnh Priority của R1 là 150, cao hơn giá trị mặc định của R2 là 100:
R1(config-if)#standby 1 priority 150
Như đã trình bày, hoạt động bầu chọn Active của HSRP là non – preempt. Ta có thể thay đổi lại ứng xử này thành preempt bằng cách sử dụng lệnh:
R(config-if)#standby group-id preempt
Ta hiệu chỉnh chế độ preempt cho cả hai router R1 và R2:
R1(config-if)#standby 1 preempt
R2(config-if)#standby 1 preempt
Kiểm tra
Ta thực hiện kiểm tra cấu hình HSRP vừa thực hiện:
R1#show standby brief
P indicates configured to preempt.
|
Interface Grp Pri P State Active Standby Virtual IP
Fa0/0 1 150 P Active local 192.168.12.2 192.168.12.254
R2#show standby brief
P indicates configured to preempt.
|
Interface Grp Pri P State Active Standby Virtual IP
Fa0/0 1 100 P Standby 192.168.12.1 local 192.168.12.254
Từ kết quả show ta thấy các router đang nắm giữ các vai trò và router ảo có IP đúng như yêu cầu.
Ta thực hiện cấu hình trên router Host trỏ default – gateway về địa chỉ của router ảo:
Host(config)#interface f0/0
Host(config-if)#no shutdown
Host(config-if)#ip address 192.168.12.4 255.255.255.0
Host(config-if)#exit
Host(config)#ip route 0.0.0.0 0.0.0.0 192.168.12.254
Ta kiểm tra rằng Host có thể đi ra bên ngoài với gateway ảo này:
Host#ping 192.168.3.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.3.1, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 60/67/76 ms
Kết quả phân giải ARP của Host cho địa chỉ IP của default – gateway:
Host#show ip arp
Protocol Address Age (min) Hardware Addr Type Interface
Internet 192.168.12.44 - 0017.e0bf.e440 ARPA FastEthernet0/0
Internet 192.168.12.254 3 0000.0c07.ac01 ARPA FastEthernet0/0
Ta thấy IP của gateway ảo đã được phân giải thành địa chỉ MAC “0000.0c07.ac01” là địa chỉ MAC dành riêng cho HSRP nhóm 1.
Router Active sẽ đều đặn gửi các gói tin HSRP ra khỏi cổng Ethernet của nó để router Standby cập nhật tình trạng của router Active. Các gói HSRP được gửi multicast đến địa chỉ 224.0.0.2, sử dụng UDP port 1985 để làm giao thức truyền tải.
Nếu sau một khoảng thời gian định trước, Standby không nhận được gói tin gửi đến từ Active, nó sẽ giả định rằng Active đã down và nhảy lên làm Active để forward dữ liệu trong LAN ra ngoài.
Khoảng thời gian định kỳ gửi gói HSRP ra khỏi cổng trên các router được gọi là hello – timer và khoảng thời gian mà các router chờ để sau đó mới thực hiện các thao tác chuyển đổi vai trò được gọi là hold – timer. Ta có thể cấu hình hiệu chỉnh các timer này trên các router trong nhóm HSRP bằng cách sử dụng lệnh:
R(config-if)#standby group-id timers [msec] hello_timer [msec]
hold_timer
Mặc định hello và hold – timer nhận giá trị là 3s và 10s.
Ta kiểm tra tính dự phòng bằng cách shutdown cổng F0/0 của R1:
R1(config)#interface f0/0
R1(config-if)#shutdown
Sau 10s không nhận được Hello từ R1, R2 chuyển lên làm Active router để forward dữ liệu cho LAN:
R2#show standby brief
P indicates configured to preempt.
|
Interface Grp Pri P State Active Standby Virtual IP
Fa0/0 1 100 P Active local unknown 192.168.12.254
R4 vẫn đi được ra bên ngoài một cách bình thường:
Host#ping 192.168.3.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.3.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 48/71/92 ms
Như vậy, hoạt động dự phòng gateway với HSRP đã diễn ra đúng như yêu cầu.
Đến đây, chúng ta đã hoàn thành cấu hình và kiểm tra với giao thức HSRP.
Cảm ơn các bạn!
Hẹn gặp lại các bạn trong các bài viết tiếp theo!