DHCP Failover trong Windows Server 2012 R2 (Full)
Phần 1
A) Giới thiệu
DHCP Failover trong Windows Server 2012 là tính năng mới cho phép 2 DHCP Server cùng chia sẻ chung dịch vụ DHCP , tăng độ sẵn sàng (High Availability) và phục vụ liên tục trong mạng.
Khi 2 DHCP Server được cấu hình tính năng Failover, 2 bên sẽ replicate các scope và các thông tin cho nhau như DHCP Option, Reservations, Policies và Active Lease (những IP đã được cấp và đang sử dụng). Và các DHCP Server này sẽ giao tiếp được với nhau là nhờ vào Failover Relationships
Thay vì replicate tất cả các Scope mà Primary DHCP Server có được qua cho Partner DHCP Server. Bạn cũng có thể định nghĩa cho phép một số scope được replicate với nhau.
B) Đặc tính của DHCP Failover
- Tính năng DHCP Failover chỉ hỗ trợ từ Windows Server 2012
- DHCP Failover chỉ hỗ trợ DHCPv4.
- 2 DHCP Server sẽ duy trì liên lạc với nhau thông qua TCP/IP
- Có thể cấu hình trực tiếp DHCP Failover mà không cần stop hoặc restart dịch vụ DHCP
- 1 Scope chỉ cho hỗ trợ tối đa 2 DHCP Server chạy Failover với nhau.
- 1 trong 2 máy DHCP Server có thể tự động thiết lập việc replicate và synchronize cho nhau.
- Client phải giao tiếp được cả 2 DHCP Server, có thể là trực tiếp hoặc có thể nhờ DHCP Relay.
C) DHCP Failover Relationships
DHCP 1 và DHCP 2 có thể thiết lập failover là nhờ vào Failover Relationships. Nó giống như là một kênh để 2 DHCP Server giao tiếp với nhau. Thuộc tính của Failover Relationships gồm :
- 1 mối quan hệ (Failover Relationship) chỉ hỗ trợ tối đa 2 DHCP Server
- DHCP Server A cho phép tạo tối đa 31 mối quan hệ (Failover Relationship) với một DHCP Server B. Nhưng DHCP Server A cũng có thể tạo nhiều mối quan hệ giữa các DHCP Server khác trong mạng như C,D,E,F.
- Trên failover relationship có thể chứa một hoặc nhiều scope (tùy thuộc ta cấu hình)
Mô hình trên mô tả mối quan hệ giữa các DHCP Server với nhau :
- DHCP 1 – DHCP 2 : giao tiếp với nhau nhờ vào kênh Failover Relationship 1, và kênh này có tên là DHCP1-DHCP2. Trên kênh này chứa 2 Scope là A và B, 2 bên sẽ định nghĩa một shared secret để trao đổi với nhau. Và chạy cơ chế Load-Balancing (50-50).
- DHCP 2 – DHCP 3 : giao tiếp với nhau nhờ vòa kênh Failover Relationship 2, và có tên là DHCP3-DHCP2. Trên kênh này dùng Scope B để phục vụ, 2 bên cũng định nghĩa một shared secret key để giao tiếp với nhau. Chạy cơ chế Hot Standby ( DHCP 3 là active, DHCP 2 là standby).
D) DHCP Failover Mode
Có 2 cơ chế chạy trong DHCP Failover là Hot Standby và Load Balancing
- Hot Standby (Active – Passive)
- Sẽ có một server là active và server còn lại là standby. Server chạy active sẽ chịu trách nhiệm phục vụ cấp địa chỉ IP trong mạng khi client request. Server chạy standby còn lại là để dự phòng và không phục vụ, chỉ khi DHCP Server Active chết thì nó mới đứng ra thay thế.
- Một DHCP Server có thể là active của Failover Relationship 1 (Hot Standby) nhưng cũng có thể là standby của Failover Relationship 2 (Hot Standby)
- Khi bạn cấu hình Hot standby mode, có một thông số là Reserved IP address, mặc định là 5%. Thông số này có nghĩa là Standby server sẽ giữ 5% lượng IP trong Scope để nhằm phục vụ cho client trong trường hợp client không liên lạc được với Active server để nhờ cấp IP (trong khi Active server vẫn tồn tại trong mạng).
- Thông số Maximum Client Lead Time (MCLT) là thời gian mà Standby server gia hạn IP cho client. Trường hợp này xảy ra khi client đã được cấp IP và đến lúc gia hạn lại mà không liên lạc được với Active server, thì lúc này Standby server đứng ra gia hạn cho client và áp dụng thời gian gia hạn tạm thời (MCLT).
- Sau khi gia hạn cho client với một thời gian MCLT. Khi client hết hạn mà vẫn không liên lạc được với Active server, lúc này Standby server sẽ tiếp tục gia hạn chứ không cấp IP mới cho client.
2. Load Balance :
- 2 DHCP Server failover sẽ cùng phục vụ việc cấp địa chi IP trong mạng cho client. Mặc định tỷ lệ phục vụ là 50% – 50%, bạn có thể tùy chỉnh 70 % – 30 %.
- Thuật toán sẽ dựa trên RFC 3074, tức là lấy địa chỉ MAC của client đem đi hash (băm). Sau đó so sánh với Hash bucket. Ví dụ cấu hình load balancing 50% – 50%, thì lúc này Hash bucket của DHCP Server 1 là từ 1 đến 128, hash bucket của DHCP Server 2 là từ 129 đến 256. Nếu hash của client nằm trong range 1 à 128 thì DHCP Server 1 sẽ phục vụ request của client này, nếu client nằm trong 129 à 256 thì DHCP Server 2 sẽ phục vụ.
Về việc phân bổ địa chỉ IP cho 2 DHCP Server tùy thuộc vào tỷ lệ phần trăm. Ví dụ, ta có một scope 10.0.0.0/24, từ 10.0.0.1 đến 10.0.0.200 và tỷ lệ là 50 % – 50 %. Thì DHCP Server 1 sẽ giữ resource IP từ 10.0.0.1 đến 10.0.0.100 và DHCP 2 sẽ giữ từ 10.0.0.101 đến 10.0.0.200. Nếu client request và được DHCP 1 phục vụ thì sẽ bắt đầu từ 10.0.0.1, còn client request mà được DHCP 2 phục vụ thì bắt đầu từ 10.0.0.101.
E) DHCP Failover Communication
Phần 2
Phần này sẽ hướng dẫn cấu hình DHCP Failover theo 2 cơ chế : Load Balancing và Hot Standby
A) Mô hình như sau :
- Máy DHCP Server 1 : là máy Domain Controller với domain “Huypd.com”, cài tính năng DHCP Server
- Máy DHCP Server 2 : join domain + đặt IP + cài tính năng DHCP để làm DHCP Server thứ 2
- Client : Windows 8.1 + Test
B) Cấu hình
1) Cài đặt tính năng DHCP cho cả 2 Server (thực hiện trên cả 2 máy)
- Tiến hành Authorize để xác minh DHCP Server này là “tin tưởng” trong Domain.
2) Tạo một Scope cho DHCP Server (bước này bạn muốn cấu hình trên DHCP Server 1 hoặc 2 cũng được), ở đây tôi tạo một Scope 172.1.1.0 có thông số như sau :
- IP Range từ 172.1.1.150 đến 172.1.1.200
- Exclusive IP : loại trừ những IP trong 172.1.1.150 đến 172.1.1.160
- Default Gateway : 172.1.1.1
- DNS : 172.1.1.1
- Hoàn thành cấu hình và đồng thời kích hoạt Scope này.
3) Tiếp theo là cấu hình tính năng Failover DHCP
- Cấu hình cơ chế Load-Balancing
- Chọn Scope mà cả 2 DHCP Server sẽ dùng để chạy Failover (bước này tương đương tạo 1 Failover Relationships)
- Nếu bạn có nhiều scope, bước này sẽ cho bạn lựa chọn thêm
- Khai báo Partner Server (DHCP Server thứ 2) của mình.
- Bước này chọn cơ chế Failover, chọn Load-Balancing. Thông số phần trăm (%) là tỷ lệ phục vụ, đồng thời cũng dựa trên thông số này mà Split scope (chia range IP) theo tỷ lệ tương ứng. Ở đây tôi để mặc định 50-50, tức DHCP Server 1 sẽ giữ 50% lượng IP (từ 172.1.1.161 đến 172.1.1.180) và DHCP Server 2 sẽ giữ range IP từ (172.1.1.181 đến 172.1.1.200)
- Stick vào “Enable Message Authentication” và khai báo một shared secret. Key này dùng chung để trao đổi và chứng thực cho 2 bên . Key này sẽ được dùng để Hash (băm) nội dung trong gói tin, trước khi gửi đi. Ví dụ, nếu DHCP Server nhận được một gói tin cập nhật (trong gói tin gồm data, giá trị băm) nó sẽ lấy key của mình đem băm với data của gói tin sau đó so sánh với giá tri băm của trong gói tin. Nếu match (đúng) thì cho là DHCP Server gửi đến thuộc Failover Relationship với mình và tiến hành cập nhật những gì trong gói tin nhận được đó, nếu sai thì sẽ hủy gói tin và gửi gói tin thông báo lý do cho bên kia biết.
- State Switchover Interval : thông số này có ở 2 bên. Nếu trong một khoảng thời gian 60 phút (tùy thuộc cấu hình) mà Partner của mình không liên lạc, thì DHCP Server sẽ cho là Partner Server của mình chết.
- Hoàn tất việc cấu hình
- Xem thống kê và thông tin chi tiết về Scope
- Lúc này qua bên DHCP Server thứ 2 để kiểm tra sẽ thấy trong DHCP có scope
- Test tính năng Load-Balancing : trên máy client vào Run –> CMD –> để thực hiện các lệnh IPCONFIG
- Gõ Ipconfig /release để xóa IP đang dùng
- Dùng lệnh Ipconfig /renew để xin địa chỉ IP mới
- Gõ Ipconfig /all để xem chi tiết thông tin về IP, lúc này ta thấy DHCP Server cấp IP là DHCP Server 2 (172.1.1.2)
- Tiếp theo, ta giả sử DHCP Server 2 (172.1.1.2) chết (có thể shutdown), gõ lại Ipconfig /release và ipconfig /renew lại
- Gõ Ipconfig /all để xem thông tin IP được cấp, lúc này DHCP Server 1 sẽ phục vụ cấp địa chỉ IP cho client
2. Cấu hình cơ chế Hot-Standby
- Thực hiện như các bước bên Load-Balancing, nhưng đến bước chọn cơ chế thì chọn Hot standby.
- Partner Server sẽ là DHCP Server 2 và cho nó là Standby (Passive) – dự phòng. Và hiển nhiên DHCP Server 1 là Hot Standby (Active)
- MCLT : là thời gian mà Standby server gia hạn IP cho client. Trường hợp này xảy ra khi client đã được cấp IP và đến lúc gia hạn lại mà không liên lạc được với Active server, thì lúc này Standby server đứng ra gia hạn cho client và áp dụng thời gian gia hạn tạm thời (MCLT).
- Address Reserved : là phần trăm (%) lượng IP mà DHCP Server 2 sẽ giữ để cấp cho Client trong trường hợp Client không liên lạc được với DHCP Server 1 (Active)
- 10% địa chỉ IP tương đương với 4 địa chỉ.
- Test : trên client gõ Ipconfig /release và ipconfig /renew . Sau đó gõ tiếp Ipconfig /all để xem thông tin. Lúc này DHCP Server 1 (Active) sẽ chịu trách nhiệm cấp địa chỉ IP cho Client.
- Cho DHCP Server 1 chết (shutdown), và thực hiện lại các lệnh Ipconfig /release, /renew, /all . Lúc này thông tin cho thấy DHCP Server 2 thực hiện cấp IP cho Client