Hình V-16: Sơ đồ chuyển tiếp trạng thái

Một phần của tài liệu Thiết kế hệ thống mạng diện rộng có tính năng sẵn sàng cao tại tổng cục thuế TP HCM (Trang 61 - 72)

Mỗi Router VRRP thực thi trong một trường hợp của máy trạng thái cho mỗi sự lựa chọn Router ảo mà nó tham gia.

Trạng thái Initialize.

Mục đích của trạng thái này là đợi sự kiện Startup xảy ra. Nếu sự kiện Startup đã xảy ra thì:

Nếu Priority = 255 (địa chỉ IP của Router đó kết hợp với Router ảo). • Gởi một thông điệp quảng bá.

• Broadcast một Request ARP ngẫu nhiên chứa địa chỉ MAC của Router ảo tới mỗi địa chỉ IP kết hợp với Router ảo.

• Thiết lập Adver_Timer thành Advertisement_Interval. • Chuyển sang trạng thái Master.

Ngược lại

• Thiết lập Master_Down_Timer thành Master_Down_Interval. • Chuyển tiếp đến trạng thái Backup.

Trạng thái Backup.

Mục đích của trạng thái Backup để điều khiển tính sẵn sàng và trạng thái của Master Router.

Trong trạng thái này, VRRP Router phải thực hiện:

- Không đáp ứng Request ARP cho địa chỉ IP kết hợp với Router ảo.

- Phải loại bỏ những gói tin mà có địa chỉ MAC đến bằng với địa chỉ MAC Router ảo.

- Không chấp nhận những gói tin được địa chỉ hoá với địa chỉ IP kết hợp với Router ảo.

- Nếu nhận được một Shutdown Event thì: • Hủy Master_Down_Timer.

• Chuyển sang trạng thái Initial. - Nếu Master_Down_Timer hết hạn thì: • Gởi một thông điệp quảng bá.

• Broadcast một request ARP ngẫu nhiên chứa địa chỉ MAC của Router ảo tới mỗi địa chỉ IP kết hợp với Router ảo.

• Thiết lập Adver_Timer thành Advertisement_Interval. • Chuyển sang trạng thái Master.

- Nếu nhận được một thông điệp quảng bá thì:

Và nếu Priority trong thông điệp quảng bá là Zero thì: • Thiết lập Master_Down_Timer thành Skew_Time.

Nếu Preempt_Mode có giá trị False, hoặc Priority <= local Priority thì: • Thiết lập lại Master_Down_Timer thành Master_Down_Interval.

• Loại bỏ thông điệp quảng bá.

Trạng thái Master.

Chức năng của Router trong trạng thái Master là chuyển tiếp các gói tin với địa chỉ IP kết hợp với Router ảo.

Trong trạng thái Master thì Router phải thực hiện:

- Phải đáp ứng Request ARP cho địa chỉ IP kết hợp với Router ảo.

- Phải chuyển tiếp các gói tin với địa chỉ MAC đến là địa chỉ MAC của Router ảo.

- Không chấp nhận những gói tin được địa chỉ hóa bằng địa chỉ IP kết hợp với Router ảo mà không phải là địa chỉ IP của chính nó.

- Chấp nhận những gói tin được địa chỉ hóa bằng địa chỉ IP kết hợp với Router ảo mà là địa chỉ IP của chính nó.

- Nếu nhận được một Shutdown Event thì: • Hủy Adver_Timer.

• Gởi thông điệp quảng bá với Priority = 0. • Chuyển sang trạng thái Initial. (adsbygoogle = window.adsbygoogle || []).push({});

- Nếu Adver_Timer hết hạn thì: • Gởi một thông điệp quảng bá.

• Thiết lập lại Adver_Timer thành Advertisement_Interval. - Nếu nhận được một thông điệp quảng bá thì:

Nếu Priority trong thông điệp quảng bá bằng Zero thì: • Gởi một thông điệp quảng bá.

• Thiết lập lại Adver_Timer thành Advertisement_Interval.

Nếu Priority trong thông điệp quảng bá lớn hơn Local Priority hoặc Priority trong thông điệp quảng bá bằng Local Priority và địa chỉ IP nơi gởi lớn hơn địa chỉ IP cục bộ thì:

• Hủy Adver_Timer.

• Thiết lập Master_Down_Timer thành Master_Down_Interval. • Chuyển sang trạng thái Backup.

Ngược lại

• Loại bỏ thông điệp quảng bá.

Tổng hợp các trạng thái và sự kiện.

V.5. Truyền và nhận gói tin VRRP. V.5.1 Truyền các gói tin VRRP.

Khi truyền các gói tin VRRP cần thực hiện :

• Điền vào các trường trong gói tin VRRP với trạng thái cấu hình Router ảo thích hợp.

• Tính toán Checksum.

• Thiết lập địa chỉ MAC nguồn thành địa chỉ MAC của Router ảo.

• Thiết lập địa chỉ IP nguồn thành địa chỉ IP của Interface (Primary IP Address).

• Thiết lập giao thức IP 112.

V.5.2 Nhận các gói tin VRRP.

Khi nhận các gói tin VRPP cần thực hiện: • Phải kiểm tra trường IP TTL bằng 255.

• Phải kiểm tra trường Version trong định dạng VRRP.

• Phải kiểm tra chiều dài gói tin nhận được lớn hơn hay bằng VRRP Header.

• Phải kiểm tra Checksum.

• Phải thực hiện loại chứng thực đã xác định bởi trường Auth Type. • Phải kiểm tra VRID là giá trị trên Interface nhận.

• Kiểm tra địa chỉ IP kết hợp với VRID là hợp lệ.

• Nếu một trong số những điều kiện trên không thỏa thì nơi nhận phải loại bỏ các gói tin này.

Hơn nữa:

• Nếu các gói tin không được tạo bởi địa chỉ IP của chính nó (tức là Priority không bằng 255) thì nơi nhận phải loại bỏ gói này, ngược lại thì tiếp tục xử lý.

V.6. Đặc điểm của VRRP.

V.6.1 Thông điệp quảng bá VRRP.

VRRP gởi đến địa chỉ Multicast 224.0.0.18 cho các thông điệp quảng bá nhằm làm giảm số Router phục vụ cho các địa chỉ Multicast và cho phép kiểm tra chính xác mã của các gói tin VRRP. Tổ chức IANA đã gán cho VRRP số giao thức IP là 112. (adsbygoogle = window.adsbygoogle || []).push({});

Master Router ảo gởi những thông điệp quảng bá VRRP tới các Router VRRP khác trong cùng một nhóm. Những thông điệp quảng bá này truyền đạt các thông tin như Priority Number và tình trạng của Master Router ảo. Các thông điệp quảng bá VRRP sẽ được đóng gói trong IP Packet. Và các thông điệp quảng bá này gởi mặc định mỗi giây. Khoảng thời gian này có thể cấu hình.

V.6.2 Địa chỉ MAC của Router ảo

Địa chỉ MAC của Router ảo kết hợp với một Router ảo là một địa chỉ MAC IEEE 802 được định dạng trong hệ Hexa như sau: 00-00-5E-00-01-VRID.

Ba Octet đầu tiên được xuất phát từ IANA's OUI. Hai Octet tiếp theo (00- 01) cho biết khối địa chỉ được gán cho giao thức VRRP. VRID là một định danh của Router VRRP, nó xác định số nhóm VRRP. Ví dụ như xác định VRRP nhóm 1 thì địa chỉ MAC ảo sẽ là 00-00-5E-00-01-01. Tùy theo từng mạng mà hỗ trợ lên đến 255 Router trên một mạng. Như vậy khi mà cấu hình lên đến 255 nhóm Router ảo thì khi đó giá trị VRID ở dạng Hexa sẽ là FF.

V.6.3 Proxy ARP.

Nếu Proxy ARP được sử dụng trên Router VRRP thì ngay sau đó Router VRRP phải quảng bá địa chỉ MAC của Router ảo trong thông điệp đáp ứng lại Proxy ARP. Nếu không làm như vậy thì các Host sẽ học địa chỉ MAC thực của Router VRRP.

Khi một Host gởi một ARP Request đến một trong số địa chỉ IP của các Router ảo. Master Router ảo phải đáp ứng ARP Request bằng địa chỉ MAC ảo và không được đáp ứng bằng địa chỉ MAC vật lý của nó. Điều này cho phép Client luôn sử dụng cùng địa chỉ MAC đến mà không cần quan tâm đến Master Router hiện hành đang Down hay Up.

Khi Router VRRP khởi động lại thì không gởi bất kỳ thông điệp ARP nào bằng địa chỉ MAC vật lý của nó cho địa chỉ IP mà nó có. Vì vậy, Router VRRP gởi thông điệp ARP chỉ bao gồm địa chỉ MAC ảo.

Khi cấu hình VRRP, các Router VRRP quảng bá ARP Request ngẫu nhiên có chứa địa chỉ MAC ảo của Router ảo cùng với địa chỉ IP trên Interface đó. Do đó mà chức năng Proxy ARP rất quan trọng trong việc giúp các Client xác định mạng có sử dụng Router dự phòng.

V.6.4 Priority và Preemption của VRRP Router.

Một khía cạnh quan trọng của hệ thống dư thừa Router ảo VRRP là độ ưu tiên của Router VRRP. Độ ưu tiên xác định quy tắc cho các Router VRRP hoạt động khi Master Router bị lỗi. Nếu một Router VRRP có địa chỉ IP của Router ảo và địa chỉ IP của Interface vật lý thì Router này sẽ có chức năng là một Master Router ảo. Độ ưu tiên cũng dùng để xác định một Router ảo dự phòng có Priority Number cao hơn sẽ trở thành Master Router ảo thay thế Master Router ảo bị lỗi.

Có thể cấu hình độ ưu tiên của Router ảo dự phòng với giá trị từ 1-254, dùng lệnh vrrp priority.

Ví dụ, nếu Router A là Master Router ảo trong mạng LAN. Khi Router này bị lỗi thì có sự chọn lựa lại một trong các Router ảo dự phòng sẽ lên làm Master Router ảo thay thế. Nếu Router B được cấu hình với độ ưu tiên 101 và Router C là 100 thì Router B sẽ được chọn làm Master Router ảo. Nếu cả Router B và C đều được cấu hình với cùng độ ưu tiên là 100 thì Router ảo dự phòng nào có địa chỉ IP cao hơn sẽ trở thành Master Router ảo.

Mặc định, cơ chế Preempt của VRRP được Enable, điều này cho phép Router ảo nào có độ ưu tiên cao hơn sẽ được chọn làm Master Router ảo ngay lập tức và Master Router có thể trở lại trạng thái Master một lần nữa sau khi bị Down nhưng lại lấy lại được trạng thái cũ. Còn khi Disable cơ chế Preempt (sử dụng lệnh no vrrp preempt) thì Router ảo dù có Priority cao hơn vẫn không thể trở thành Master Router được.

V.6.5 VRRP Object Tracking.

VRRP Object Tracking cho phép Router VRRP theo dõi đối tượng chỉ định bên trong Router, ví dụ như theo dõi trạng thái Up-Down của các Interface nối với Router. Object Tracking có thể làm thay đổi Priority Number của một Router ảo với một nhóm VRRP chỉ định. Đây là cách để tạo điều kiện cho Router VRRP nào có Priority Number cao hơn trở thành Master Router ảo cho một nhóm.

VRRP Object Tracking là một tiến trình độc lập để tạo, theo dõi và hủy bỏ các đối tượng Track của một Interface. Router VRRP đăng ký Track Object và Track này hoạt động khi trạng thái của Object thay đổi.

Mỗi Track được xác định bởi một con số duy nhất được chỉ định trên giao diện dòng lệnh Command-line Interface. Router VRRP sử dụng số này để theo dõi một đối tượng đã chỉ định.

Tiến trình Track định kỳ thăm dò đối tượng Track và quan tâm đến mọi thay đổi trạng thái của nó. Trạng thái của đối tượng có thể là Up hoặc Down.

VRRP cung cấp một Interface cho tiến trình Track. Mỗi nhóm VRRP có thể có nhiều đối tượng Track được theo dõi mà qua đó làm giảm (hoặc tăng) Priority Number của Router VRRP.

Để cấu hình Object Tracking, sử dụng dòng lệnh: track object-number

interface type number {line-protocol | ip routing}.

• Từ khoá line-protocol theo dõi trạng thái Up-Down của Interface chỉ định.

• Từ khoá ip routing cũng kiểm tra định tuyến IP có Enable và Active trên Interface không.

Để áp Object Tracking vào cấu hình VRRP, dùng lệnh: vrrp group track

object-number [decrement priority].

Lưu ý:

Nếu một nhóm VRRP cấu hình địa chỉ IP ảo là IP Address owner thì Priority của nó đã được cố định là 255 và không thể bị giảm nữa khi có cấu hình Tracking. Đây cũng là một hạn chế của VRRP.

V.6.6 ICMP Redirect.

Cũng giống như giao thức HSRP thì VRRP cũng được hỗ trợ ICMP Redirect. ICMP là một giao thức Internet tầng mạng để cung cấp những gói tin thông điệp tường thuật lỗi xảy ra trên đường truyền. Mục đích là tránh mất mát dữ liệu trên đường truyền và chọn đường dẫn tối ưu nhất. (adsbygoogle = window.adsbygoogle || []).push({});

ICMP Redirect được sử dụng một cách bình thường khi VRRP đang chạy trên một nhóm các Router. Điều này cho phép VRRP được sử dụng trong các mô hình mạng không cân đối.

Địa chỉ IP nguồn của ICMP Redirect là địa chỉ của Host cuối cùng được sử dụng khi thực hiện định tuyến ở bước tiếp theo. Nếu Router VRRP đang hoạt động là trạng thái Master cho các Router ảo chứa địa chỉ không phải của nó thì sau đó nó phải xác định gói tin của Router ảo nào đã được gởi khi chọn địa chỉ Source gởi lại.

Một phương pháp để suy ra Router ảo nào được sử dụng là kiểm tra địa chỉ MAC sẽ đến trong gói tin gởi lại lần nữa.

Chức năng ICMP Redirect rất hữu dụng để Disable Redirect với những trường hợp đặc biệt khi mà VRRP được sử dụng để chia sẻ tải truyền giữa một số các Router trong mô hình mạng đối xứng.

V.6.7 Bảo mật trong VRRP.

VRRP được thiết kế cho các môi trường liên mạng, do đó có thể thực hiện các chính sách bảo mật khác nhau. Giao thức này bao gồm một số phương pháp chứng thực và phương pháp không chứng thực.

Bất kỳ loại chứng thực VRRP nào cũng bao gồm một cơ chế: thiết lập TTL=255 và kiểm tra lúc nhận. Mục đích là nhằm chống lại các gói tin VRRP giả mạo xen vào từ các mạng khác và hạn chế được hầu hết các cuộc tấn công vào mạng nội bộ.

Không chứng thực (No Authentication).

Nghĩa là sự trao đổi của các Router VRRP không cần chứng thực. Loại chứng thực này chỉ nên sử dụng trong môi trường ít có xảy ra rủi ro về bảo mật và cấu hình (ví dụ như mạng chỉ có 2 Router).

Mật khẩu văn bản đơn giản (Simple Text Password).

Sử dụng loại chứng thực này có nghĩa là khi trao đổi các giao thức VRRP được chứng thực bởi một chuỗi Text đơn giản làm Password.

Loại chứng thực này rất hữu dụng để chống lại việc cấu hình bị lỗi của Router trên mạng LAN. Nó nhằm để chống lại việc các Router sử dụng phần mềm VRRP giả mạo không mong muốn làm Router dự phòng. Với Router VRRP mới, đầu tiên nên cấu hình Password Text khi chạy VRRP với Router khác.

Tuy nhiên, loại chứng thực này không chống lại các cuộc tấn công mà mật khẩu có thể được học bởi một Host dò hỏi gói tin VRRP trong mạng LAN. Chứng thực văn bản đơn giản kết hợp với việc kiểm tra TTL làm cho các gói tin VRRP được gởi từ mạng khác khó thâm nhập được hệ thống hoạt động của VRRP.

Để đạt hiệu quả cao nhất người sử dụng cần phải thường xuyên thay đổi Password.

Cấu hình VRRP theo chứng thực MD5 sử dụng Key String.

vrrp group authentication md5 key-string [0 / 7] key-string [timeout

seconds]

Ví dụ:

Chiều dài Key_String có thể lên đến 64 ký tự và ít nhất là 16 ký tự.

Key với chỉ định 0 nghĩa là Key không bị mã hoá, chỉ định là 7 nghĩa là Key

sẽ bị mã hoá. Khoá chứng thực key-string sẽ mã hoá một cách tự động nếu có cấu hình password-encryption.

Giá trị timeout là thời gian định trước mà Key String cũ chấp nhận cấu hình cho tất cả Router trong một nhóm với Key String mới.

Chú ý: Tất cả Router bên trong nhóm VRRP phải được cấu hình với cùng

chuỗi chứng thực. Nếu không cấu hình cùng chuỗi chứng thực thì Router trong nhóm VRRP sẽ không giao tiếp được với nhau và bất cứ Router nào cấu hình bị lỗi sẽ làm thay đổi trạng thái Master của nó.

IP Authentication Header.

Khi sử dụng loại chứng thực này nghĩa là sự trao đổi giao thức VRRP sử dụng một kỹ thuật xác định bởi IP Authentication Header [Auth], sử dụng HMAC-MD5-96 với ESP ( English for Specific Purposes - Anh ngữ chuyên ngành). Chúng cung cấp cơ chế bảo vệ khá mạnh nhằm chống lại việc cấu hình bị lỗi, các cuộc tấn công lặp đi lặp lại hay thay đổi các gói tin tấn công.

V.6.8 VRRP hoạt động trên mạng Ethernet.

Hình V-17: VRRP hoạt động trên mạng Ethernet

Một phần của tài liệu Thiết kế hệ thống mạng diện rộng có tính năng sẵn sàng cao tại tổng cục thuế TP HCM (Trang 61 - 72)