Thinh Cao Minh – Daily notes

Trong loạt bài này, tất cả chúng ta cùng nhau tìm hiểu về VRRP, nguyên nhân vì sao lại phải dùng nó và nhất là các timer của nó.

Một ví dụ trước tiên: Thông thường, từ người dùng (customer) đến nhà cung cấp dịch vụ (ISP) có một đường link duy nhất. Và người quản trị sẽ cấp cho customer một địa chỉ IP gateway để đi lên mạng của ISP.

20090625_781303_image003_638333_1285_0

Có thể thấy, từ phía khách hàng nhìn lên ISP, họ chỉ có một con phố duy nhất để đến ISP. Nhưng trong nhiều trường hợp, có thể con router ở biên của nhà mạng bị shutdown/error/restart… Điều này dẫn đến gián đoạn dịch vụ của người sử dụng. Để né trường hợp này, ISP có thể sử dụng 2 hoặc nhiều router để back-up lẫn nhau (redundancy). Tuy vậy với 2 hay nhiều router mà chỉ có một địa chỉ gateway duy nhất thì biết cấu hình vào con nào?????

=====> Tính từ lúc đó, VRRP ra đời!

VRRP (Virtual Router Redundancy Protocol) là giao thức được mô tả trong RFC3768, nó được cho phép sử dụng chung 1 địa chỉ IP gateway cho một nhóm router. Nếu router chính bị “tèo”, ngay tức khắc các con router khác sẽ biết và với một số các nguyên tắc bình chọn do VRRP quy định, các con còn sót lại sẽ lựa chọn ra 1 con chính khác nắm giữ địa chỉ IP gateway đã được cấu hình từ trước, và lưu lượng từ người dùng sẽ đi qua con gateway mới này => Đảm bảo dịch vụ của người sử dụng thông suốt, không bị gián đoạn.

1. Một số khái niệm cần nhớ khi thao tác và trao đổi về VRRP

  • VRRP Router: Router sử dụng VRRP. Có thể có một hay nhiều VRRP Router song song.
  • VRRP-ID: Định danh cho những router thuộc cùng 1 nhóm VRRP. Hiểu nôm na là 1 trong những router có thể tham gia nhiều nhóm VRRP (các nhóm hoạt động động lập nhau), và VRRP-ID là tên gọi gọi của từng nhóm.
  • Primary IP: Địa chỉ IP thực của Router Interface tham gia vào VRRP. Các gói tin trao đổi giữa các VRRP Router sử dụng địa chỉ thực này.
  • VRRP IP: Địa chỉ IP ảo của nhóm VRRP đó (Đó chính là địa chỉ dùng làm gateway cho những host). Các gói tin trao đổi, thao tác với host đều sử dụng địa chỉ ảo này.
  • Virtual MAC: Địa chỉ MAC ảo đi kèm với địa chỉ IP ảo ở trên. Định dạng của MAC ảo là 00-00-5E-00-02-XX (Với XX là VRID dưới dạng hexa). Các trao đổi về ARP với host đều sử dụng MAC ảo này.
  • Virtual Router Master: Là một VRRP Router, gắn với cùng một nhóm VRRP-ID cụ thể, và được bầu là Master của nhóm đó. Router này còn có nhiệm vụ nhận và xử lý các gói tin từ host đi lên.
  • Virtual Router Backup: Là một VRRP Router, gắn với cùng một nhóm VRRP-ID cụ thể, và đóng vai trò Backup cho con Master ở trên. Nếu con Master tèo, những con Backup này sẽ dựa vào 1 cơ chế bình chọn và nhảy lên làm Master.
  • Preempt Mode: Quyết sách này được cấu hình trên mỗi VRRP Router. Khi được cấu hình là True, VRRP Router được quyền tham gia bình chọn Master. Trái lại, khi Preempt = False, VRRP sẽ không còn tham gia làm Master cho dù Priority là rất chất lượng.

Ok, cơ bản là mấy khái niệm trên. Còn sót lại tất cả chúng ta sẽ tìm hiểu khi nói sâu hơn về VRRP.

2. Các timer cho VRRP

  • Advertisement Interval (s): Chu kỳ luân hồi gửi gói tin Advertisement => Bộ định thời Advertisement Timer sẽ tiến hành kích hoạt mọi khi router gửi/nhận một bản tin Advertisement.
  • Skew time (s): Sử dụng để tính toán Master Down Interval theo priority.

Skew_time = ((256 – priority) / 256)

  • Master Down Interval (s): Khoảng chừng thời kì để Backup Router nhận ra Master Router gặp sự cố. Hiểu nôm na là cứ 3 lần không sở hữu và nhận được bản tin Advertisement, Backup router sẽ kích hoạt Skew Timer. Skew timer chạy hết mà vẫn không sở hữu và nhận được Advertisement, nó sẽ coi Master bị tèo và khai mạc quá trình bình chọn lại Master.

Master_down_interval = 3 * Advertisement_interval + Skew_time

3. Các trạng thái của một VRRP Router

RFC3768 mô tả 3 trạng thái của VRRP Router: Initialize, Master và Backup.

  • Initialize: Router đã được cấu hình VRRP nhưng chưa bật chức năng này lên. Do đó, router không có khả năng xử lý các gói tin VRRP. Khi người quản trị tạo một sự kiện Startup (dựa vào câu lệnh enable), VRRP sẽ chuyển sang trạng thái Backup.
  • Backup: Khi ở trạng thái này, VRRP Router có nhiệm vụ đây chính là giám sát hoạt động của Master Router để phát hiện khi nào con master này gặp sự cố. Nếu gặp sự cố, dựa vào quá trình hoạt động của VRRP, nếu đủ tham gia, con Backup Router này sẽ nhảy lên làm Master Router. Khi ở trạng thái Backup, router sẽ chỉ nhận thêm những gói tin Advertisement từ Master Router chứ không tham gia vào việc làm gateway trung chuyển gói tin từ các host gửi đến VRRP.
  • Master: Khi router ở trạng thái này, nó sẽ định kỳ gửi các gói tin Advertisement theo chu kỳ luân hồi của Advertisement timer. Master Router sẽ đóng vài trò là một con router với MAC là virtual-MAC, IP là virtual-IP. Mọi gói tin gửi đến địa chỉ virtual-MAC hay virtual-IP đều được con Master Router này xử lý.

4. Mô tả hoạt động của VRRP

Các VRRP Router trong cùng một VRRP Group tiến hành bình chọn Master sử dụng giá trị priority đã cấu hình cho router đó. Priority có mức giá trị từ 0 đến 255. Nguyên tắc có bản: Priority rất chất lượng thì nó là Master, nếu priority bằng nhau thì IP lơn hơn là Master.

Nếu VRRP Router được cấu hình Virtual IP = Primary IP, nó sẽ sở hữu priority = 255 và trở thành Master luôn. Và tất nhiên, nếu VRRP Router được cấu hình priority = 255 thì mặc nhiên nó sẽ sử dụng Primary IP làm Virtual IP.

Nếu VRRP Router có priority < 255 thì thuở đầu nó sẽ chuyển về trạng thái Backup. Sau đó nó phát động bộ định thời Master Down Timer. Khi bộ định thời Master Down Timer chạy hết, nó sẽ nhảy từ Backup lên làm Master.

Sau lúc lên làm Master, các router khai mạc nhận bản tin Advertisement từ router khác thuộc cùng VRRP Group cũng như gửi cho những router khác bản tin Advertisement chưa các thông số VRRP của nó. Router sẽ so sánh priority của mình với priority nhận được từ bản tin Advertisement, nếu lơn hơn và router đang rất được cấu hình Preempt Mode = True, nó sẽ giữ lại được nguyên trạng thái Master. Nếu không đạt đủ các tham gia trên, nó sẽ nhảy xuống làm Backup.

Trong trường hợp priority bằng nhau, nó sẽ so sánh địa chỉ IP của interface được cấu hình VRRP vơi src-IP của gói tin Advertisement, nếu lơn hơn thì giữ nguyên trạng thái Master, thấp hơn thì xuống làm Backup.

Sau lúc bình chọn xong Master, thằng nào là Master Router sẽ gửi trả lời bản tin ARP Request cho host sử dụng Virtual MAC.

Master Router định kỳ gửi các bản tin Advertisement cho tất cả Virtual Router Backup để thông tin về trạng thái hoạt động của mình. Backup dựa vào các bộ timer của mình để xác định Master có gặp sự cố hay là không. Nếu có sự cố, các VRRP Router còn sót lại trong VRRP Group sẽ tiến hành bình chọn lại VRRP Master Router theo trật tự như trên.

Theo quy định của chuẩn, mặc định các Master router sẽ KHÔNG xử lý các gói tin gửi đến địa chỉ Virtual IP (ngoại trừ gói tin ARP) nếu địa chỉ này khác với địa chỉ cổng vật lý của router. Vì vậy, trong trường hợp này, tất cả chúng ta sẽ không còn thể thực hiện ping, telnet, ssh đến địa chỉ Virtual IP.

Nếu Master chết (gọi là Router A), xong Backup router khác lên thay (gọi là Router B), xong Router A sống lại…Nếu Router A có Primary IP = Physical IP, hoặc được cấu hình bật preempt mode => Nó sẽ tiến hành khôi phục làm Master. Nếu không, nó sẽ giữ lại được ở trạng thái Backup và khôi phục lại Priority cũ.

OK, như vậy tất cả chúng ta đã đi hết 1 lượt về VRRP. Just make a discussion now!!!!!

You May Also Like

About the Author: v1000