Saturday, October 27, 2012

Overview Virtual Router Redundancy Protocol

VRRP là một giao thức tương tự như HSRP mà tôi đã nói ở những post trước, điểm khác đó là VRRP là một giao thức đã được chuẩn hoá.

Về nguyên tắc hoạt động, nói chung VRRP giống với HSRP, một vài khác biệt đó là:

-Active router được gọi là Master router, tất cả các router còn lại trong group đều ở trạng thái Backup. Khi Master down thì Backup có priority cao nhất sẽ làm Master.
-Các VRRP router chỉ có 3 trạng thái: Initialize -> Backup -> Master.
-Địa chỉ MAC ảo có dạng 0000.5e00.01xx, với xx là hai giá trị của nhóm dạng hexdecimal.
-Mặc định, chức năng preempt đã được enabled.
-Không có cơ chế tracking  interface như HSRP.
-VRRP gửi quảng bá đến địa chỉ multicast 224.0.0.18, sử dụng giao thức IP số 112.

Ngoài những điểm khác biệt trên, các tính năng còn lại của HSRP đều có trong VRRP.

Thursday, October 25, 2012

Basic HSRP configuration

Cấu hình đơn giản một mô hình sử dụng HSRP, giảm thiểu single point of failure. Mô hình giả lập:

Mô tả:
  1. -Các PC1, PC2 là các end-users cần ra Internet.
  2. -R2,R3,R4 đóng vai trò là các router cung cấp một gateway ổn định.
  3. -PC1, PC2 đến đc 11.11.11.11 khi một trong 3 router down.

Mục tiêu:
  1. -Cấu hình HSRP cho 3 router R2,R3,R4
  2. -Cấu hình 2 group 1 và 2. Group 1 dùng gateway ảo 1.1.1.10, Group 2 dùng 1.1.1.100.
  3. -Load balancing cho PC1 và PC2
Yêu cầu:
  • -Đã cấu hình routing cho toàn bộ hệ thống mạng
Lưu ý: đây là một mô hình dùng để demo việc cấu hình HSRP, chưa đảm bảo được tính HA hoàn chỉnh cho một hệ thống mạng. Bài này chỉ đưa ra các bước cấu hình HSRP trên 3 router R2,R3,R4 và testing.

1. Cấu hình HSRP

R2#show run 
<...>
interface FastEthernet0/0
 ip address 1.1.1.2 255.255.255.0
 duplex auto
 speed auto
 standby 1 ip 1.1.1.10  <= Group 1, địa chỉ IP ảo là 1.1.1.10
 standby 1 priority 200 <= Giá trị priority là 200
 standby 1 preempt       <= Bật chức năng chiếm quyền preemption.
 standby 1 track FastEthernet0/1 30 <= Bật chức năng theo dõi f0/1. Nếu f0/1 down, giá trị priority sẽ bị trừ đi 30. Khi đó preemption sẽ diễn ra.

<...>

R3#show run
<...>
interface FastEthernet0/0
 ip address 1.1.1.3 255.255.255.0
 duplex auto
 speed auto
 standby 1 ip 1.1.1.10    <= Địa chỉ IP ảo
 standby 1 priority 180   <= Giá trị priority 180
 standby 1 preempt
<...>


R4#show run
<...>
interface FastEthernet0/0
 ip address 1.1.1.4 255.255.255.0
 duplex auto
 speed auto
 standby 1 ip 1.1.1.10
 standby 1 priority 190   <= Giá trị priority 190
 standby 1 preempt
<...>


Giá trị priority của 3 router đảm bảo rằng R2 là Active, R4 là Standby, R3 ở trạng thái Listen.

Sau khi đã cấu hình HSRP, các PC sẽ trỏ gateway về địa chỉ 1.1.1.10

PC1#show run | section default
ip default-gateway 1.1.1.10


Tiến hành test kết nối từ PC1 đến 11.11.11.11

PC1#traceroute 11.11.11.11

Type escape sequence to abort.
Tracing the route to 11.11.11.11

  1 1.1.1.2 20 msec 44 msec 16 msec
  2 2.2.2.4 28 msec 48 msec 40 msec
  3 3.3.3.1 44 msec 76 msec *


Khi shutdown interface f0/0 trên R2, việc bầu chọn sẽ tiến hành lại, Standby đang là R4 sẽ nhảy lên làm Active, R3 đang ở trạng thái Listen sẽ làm Standby.

Shutdown f0/0 trên R2.


R3, R4 thay đổi trạng thái HSRP


Enable lại cổng f0/0 trên R2, quá trình preempt diễn ra, R2 lấy lại quyền Active:

Test việc tracking trên R2. R2 đã bật chức năng tracking trong HSRP trên interface f0/1. Nếu f0/1 down, priority sẽ bị trừ đi 30, việc bầu chọn sẽ diễn ra lại.

R2(config-if)#shut
R2(config-if)#do show stand bri
                     P indicates configured to preempt.
                     |
Interface   Grp Prio   P  State       Active          Standby         Virtual IP    
Fa0/0           1   170  P Listen      1.1.1.4         1.1.1.3             1.1.1.10      
R2(config-if)#


2. Cấu hình load sharing HSRP

Việc load sharing trên 1 group là điều ko thể, nhưng có thể sử dụng 2 group.
-Group1: R2 là Active, R4 là Standby, R3 Listen.
-Group2: R4 là Active, R2 là Standby, R3 Listen.

 Cấu hình tương tự như trên, thay đổi giá trị group, priority phù hợp cho group 2.

R2 đóng vai trò làm Standby trong group 2


R4 đóng vai trò làm Active trong group 2


 Trỏ PC2 về gateway 1.1.1.100, test kết nối từ cả 2 PC:
PC1 đi theo hướng R2
PC2 đi theo hướng R4

Hot Standby Router Protocol - HSRP

1.Packet forwarding review

Khi một host phải trao đổi với một thiết bị trong cùng subnet, nó có thể đưa ra một ARP request, chờ một ARP reply và trao đổi các gói tin trực tiếp với nhau. Nếu như thiết bị đích nằm ở một subnet khác, host phải dựa vào một thiết bị khác như router để có thể relay các gói tin đến subnet đó. Nếu host ko có khả năng tới đc host đích, nó vẫn tạo ra một ARP broadcast, hi vọng một host nào đó nhận đc gói tin ARP này và trả lời lại. Nhưng gói tin ARP request ko thể tới đc host đích vì đến router sẽ bị drop. Tuy nhiên, có thể cấu hình gateway cung cấp một chức năng gọi là proxy ARP có thể trả lời đến các gói ARP request bằng chính MAC của nó như là một địa chỉ đích.

Một vài giao thức xuất hiện, cho phép nhiều thiết bị định tuyến chia sẻ cùng một địa chỉ gateway. Do đó, nếu một gateway down, các gateway còn lại sẽ tự động đảm nhận nhiệm vụ của một gateway.


2. HSRP

Đây là một giao thức chỉ hỗ trợ các thiết bị của Cisco đc thiết kế cho phép vài router hoặc switch L3 sử dụng một địa chỉ gateway ảo. Các router cung cấp việc dự phòng cho một địa chỉ gateway được gán vào một nhóm HSRP. Một router sẽ được chọn làm Active router, một router được chọn làm Standby HSRP router, các router còn lại được chạy ở trạng thái listen. 

Active router chính là router sẽ đảm nhận nhiệm vụ trả lời ARP request để đưa ra cho client một địa chỉ ARP ảo, đồng thời cung cấp default gateway cho client. Các router trao đổi các thông điệp HSRP Hello trong một khoảng interval nào đó để nhận ra rằng chúng vẫn tồn tại và hoạt động tốt.
HSRP gửi các thông điệp Hello qua địa chỉ multicast 224.0.0.2 sử dụng UDP port 1985.

Một nhóm HSRP có thể đc gán một giá từ 0 tới 255. Hầu hết các Catalyst switches chỉ hỗ trợ đến 16 nhóm HSRP. Giá trị của group là cục bộ trên mỗi interface. HSRP group 1 trên interface vlan 10 khác với HSRP group 1 trên interface vlan 11

3.  HSRP operation

Active router được lựa chọn dựa trên một giá trị priority (từ 0-255) được cấu hình trên mỗi router trong group, mặc định là 100. Router có giá trị priority cao nhất sẽ trở thành Active trong group. Nếu tất cả các giá trị prio bằng nhau, router nào có giá trị IP cao nhất trên HSRP interface sẽ trở thành Active router.
Để set giá trị prio, trên HSRP interface, sử dụng câu lệnh

(config-if)# standby priority

Khi HSRP đc cấu hình trên một interface, router sẽ phải trải qua các trạng thái trước khi trở thành Active. Các HSRP router sẽ phải lần lượt trải qua các trạng thái:
  1. -Disabled
  2. -Init
  3. -Listen
  4. -Speak
  5. -Standby
  6. -Active


Chỉ có Stanby router theo dõi các thông điệp Hello từ Active router, Hello sẽ đc gửi mỗi 3 giây. Nếu các Hello bị thất lạc trong khoảng thời gian holdtime (mặc định là 10 giây hoặc 3 lần Hello), Active router sẽ bị coi là down, lúc đó Standby router sẽ đóng vai trò làm Active. Lúc này, nếu các router khác đang ở trạng thái Listen, router nào có giá trị prio cao kế tiếp sẽ được chọn làm Standby.
Nếu muốn thay đổi các giá trị timer, nên thay đổi trên tất cả các HSRP router trong group.

Giá trị Hello và holdtime có thể được đặt ở mức giây hoặc mili giây (msec). Hello nằm trong khoảng 1-254 hoặc từ 15-999 mili giây. Giá trị holdtime ít nhất luôn phải gấp 3 lần so với giá trị Hello.

Thông thường, sau khi Active router down và Standby trở thành active, active router cũ ko thể ngay lập tức trở lại làm active khi đã hoạt động bình thường trở lại. Nó chỉ có thể Active trở lại nếu như Active hiện tại down. Một chức năng gọi là preemption đc sử dụng để chiếm lại quyền làm Active nếu giá trị prio cao hơn ở bất cứ thời gian nào.

4. HSRP gateway address

Mỗi router trong một HSRP group có một địa chỉ IP riêng của nó đc gán đến một interface. Đồng thời, mỗi router có chung một địa chỉ IP gateway, gọi là địa chỉ gateway ảo, đc giữ ở tình trạng luôn up bởi HSRP. Địa chỉ này cũng đc biết đến là địa chỉ HSRP hoặc địa chỉ Standby address. Các clients có thể trỏ địa chỉ gateway đến địa chỉ này, một router sẽ luôn giữ địa chỉ này active. Địa chỉ gateway ảo này và địa chỉ của interface phải nằm trong cùng subnet.

 Đối với địa chỉ router ảo, HSRP định nghĩa một loại địa chỉ MAC ảo có dạng 0000.0c07.acxx, trong đó xx đại diện cho nhóm HSRP number với 2 giá trị hex. Ví dụ, nhóm 1 thì địa chỉ là .ac01, nhóm 16 là .ac10

5.Load sharing HSRP

Có một đặc điểm của HSRP gây lãng phí tài nguyên đó là, chỉ có Active chịu trách nhiệm trả lời request từ client, sau đó chịu tải cho client. Standby chỉ đóng vai trò dự phòng, lắng nghe các Hello để xem Active còn sống hay ko. Điều này gây lãng phí chức năng của Standby.

Việc chia tải trên một group là bất khả thi, nhưng vẫn có thể thực hiện đc trên 2 group:
-Một group gán một router A làm Active, router B làm Standby.
-Group còn lại sử dụng router B làm Active, A làm Standby.
-Các client có 2 lựa chọn là trỏ về gateway của Group 1 hoặc Group 2.