Loading...

DHCP là gì? Cách hoạt động, cơ chế DORA và cấu hình trên Cisco

Mỗi khi laptop kết nối Wi-Fi hoặc một chiếc IP Phone được cắm vào switch, thiết bị đều tự nhận được địa chỉ IP mà không ai phải gõ tay. Phía sau là DHCP (Dynamic Host Configuration Protocol), giao thức nền tảng của hầu hết mạng LAN doanh nghiệp, trường học, nhà máy và Wi-Fi công cộng. Bài viết này giải thích DHCP hoạt động ra sao, khi nào cần DHCP Relay, cách cấu hình cơ bản trên Cisco và những rủi ro bảo mật cần chặn.

⚡ Điểm nhanh về DHCP

  • DHCP là gì: giao thức tự động cấp IP và thông số mạng cho thiết bị đầu cuối, thay cho cấu hình tay.
  • Thông tin được cấp: địa chỉ IP, subnet mask, default gateway, DNS server, lease time và các tùy chọn bổ sung (Option).
  • Cổng giao tiếp: UDP 67 (server/relay) và UDP 68 (client).
  • Cơ chế cấp phát: 4 bước DORA — Discover, Offer, Request, Acknowledge.
  • Lease: IP được cấp có thời hạn; client bắt đầu gia hạn ở 50% thời gian lease (T1) và gia hạn broadcast ở 87,5% (T2). Trên Cisco IOS, lease mặc định là 1 ngày.
  • Khác VLAN với server: cần DHCP Relay, trên Cisco là lệnh ip helper-address.
  • Bảo mật: bật DHCP Snooping để chặn DHCP Server giả mạo.

1. DHCP là gì?

DHCP (Dynamic Host Configuration Protocol) là giao thức tầng ứng dụng, chạy trên UDP, dùng để cấp phát tự động địa chỉ IP và các thông số mạng cho thiết bị khi chúng tham gia mạng.

Nhờ DHCP, quản trị viên không phải cấu hình IP thủ công trên từng máy. Việc đổi gateway, đổi DNS hay mở rộng dải địa chỉ chỉ cần làm một lần ở DHCP Server, toàn bộ client sẽ nhận cấu hình mới khi gia hạn lease.

2. DHCP cấp những thông tin gì?

Ngoài địa chỉ IP, DHCP Server có thể gửi kèm nhiều tùy chọn (Option) cho client:

Thông tinDHCP OptionÝ nghĩa
Địa chỉ IP (trường yiaddr) Địa chỉ client được phép dùng
Subnet mask Option 1 Xác định độ lớn của mạng
Default gateway Option 3 Cửa ra mạng khác, Internet
DNS server Option 6 Máy chủ phân giải tên miền
Domain name Option 15 Hậu tố tên miền nội bộ
Lease time Option 51 Thời gian client được giữ IP
TFTP server Option 66 / 150 Thường dùng để IP Phone tải file cấu hình
Relay Agent Information Option 82 Thông tin switch/cổng do relay hoặc DHCP Snooping chèn vào

3. Các thành phần trong hệ thống DHCP

  • DHCP Server: thiết bị hoặc máy chủ giữ các pool địa chỉ và cấp phát cho client. Có thể là Windows Server, Linux, router hoặc switch Layer 3 Cisco, firewall.
  • DHCP Client: thiết bị xin IP, như PC, laptop, điện thoại, IP Phone, camera, máy in.
  • DHCP Relay Agent: thiết bị Layer 3 chuyển tiếp yêu cầu DHCP của client sang server nằm ở subnet khác. Trên Cisco, chức năng này được bật bằng ip helper-address.

Mô hình triển khai phổ biến trong mạng doanh nghiệp: DHCP Server đặt ở Server Farm, SVI trên Core/Distribution làm DHCP Relay cho các VLAN người dùng.

Mô hình DHCP Relay trong mạng doanh nghiệp: DHCP Server đặt ở Server Farm, SVI VLAN 10 trên Distribution/Core làm DHCP Relay cho PC và IP Phone

Trong ví dụ này, VLAN 10 là VLAN người dùng, DHCP Server nằm ở subnet khác, còn Core/Distribution đóng vai trò DHCP Relay.

4. DHCP hoạt động như thế nào? Cơ chế DORA

Khi một client chưa có IP, nó trao đổi với DHCP Server qua 4 bước, gọi tắt là DORA:

Cơ chế DORA của DHCP: Discover, Offer, Request, Acknowledge giữa DHCP Client và DHCP Server

BướcGói tinHướngCách gửiNội dung
1 Discover Client → Server Broadcast Client tìm DHCP Server vì chưa có IP
2 Offer Server → Client Unicast hoặc Broadcast Server đề nghị một IP và các thông số kèm theo
3 Request Client → Server Broadcast Client chọn một Offer và yêu cầu dùng IP đó
4 Acknowledge Server → Client Unicast hoặc Broadcast Server xác nhận, client chính thức dùng IP

Điểm dễ nhầm:

  • Discover gửi broadcast vì client chưa có IP và chưa biết DHCP Server nào đang tồn tại trong mạng.
  • Request cũng gửi broadcast, dù client đã biết địa chỉ server qua gói Offer (Option 54, Server Identifier). Lý do chính là để mọi DHCP Server trong mạng biết client đã chọn Offer của server nào; các server không được chọn sẽ thu hồi địa chỉ đã giữ tạm. Ngoài ra, ở bước này client vẫn chưa được cấu hình IP (địa chỉ nguồn là 0.0.0.0).
  • Khi gia hạn lease ở mốc T1, client đã có IP nên gửi Request dạng unicast tới đúng server đã cấp.

📚 Muốn xem chi tiết từng bước kèm sơ đồ trình tự và lab cấu hình, học tại Bài 39: DHCP — Cơ chế DORA, cấu hình DHCP Server/Relay trong khóa học CCNA Online.

5. DHCP lease là gì và gia hạn thế nào?

DHCP không cấp IP vĩnh viễn mà cho thuê (lease) trong một khoảng thời gian. Khi lease gần hết, client tự gia hạn:

Vòng đời DHCP lease: gia hạn ở mốc T1 (50%) và T2 (87,5%)

Mốc thời gianViệc client làm
T1 = 50% lease Gửi DHCPREQUEST unicast đến đúng server đã cấp IP để gia hạn
T2 = 87,5% lease Nếu T1 thất bại, gửi DHCPREQUEST broadcast tới bất kỳ server nào
Hết lease Client ngừng dùng IP và bắt đầu lại từ bước Discover

Lease ngắn (vài giờ) phù hợp mạng Wi-Fi khách, nơi thiết bị ra vào liên tục. Lease dài (vài ngày) phù hợp mạng văn phòng ổn định, giảm lưu lượng gia hạn.

Ngoài 4 gói DORA, DHCP còn các gói tin khác:

Gói tinAi gửiKhi nào
DHCPNAK Server Từ chối yêu cầu, ví dụ client mang IP cũ sang subnet mới
DHCPDECLINE Client Phát hiện IP được cấp đã bị máy khác dùng (xung đột)
DHCPRELEASE Client Chủ động trả lại IP trước khi hết lease
DHCPINFORM Client Đã có IP tĩnh nhưng cần lấy thêm thông số như DNS

6. DHCP Relay: khi server không cùng VLAN với client

Gói Discover là broadcast nên router và switch Layer 3 không chuyển nó sang subnet khác. Giải pháp là DHCP Relay: thiết bị Layer 3 gần client nhất nhận broadcast rồi chuyển thành unicast gửi đến DHCP Server.

Switch(config)# interface vlan 10
Switch(config-if)# ip address 10.10.10.1 255.255.255.0
Switch(config-if)# ip helper-address 10.10.100.10

Lệnh ip helper-address phải đặt trên interface/SVI hướng về client, trỏ tới IP thật của DHCP Server. DHCP Relay không phải một giao thức riêng, chỉ là chức năng chuyển tiếp thêm vào đường đi của gói DHCP.

7. Cấu hình DHCP Server cơ bản trên Cisco IOS

Router(config)# ip dhcp excluded-address 192.168.10.1 192.168.10.20
Router(config)# ip dhcp pool VLAN10-USERS
Router(dhcp-config)# network 192.168.10.0 255.255.255.0
Router(dhcp-config)# default-router 192.168.10.1
Router(dhcp-config)# dns-server 8.8.8.8 1.1.1.1
Router(dhcp-config)# lease 1
  • ip dhcp excluded-address: loại một dải khỏi việc cấp tự động, dành cho thiết bị cần IP tĩnh như gateway, switch, server.
  • ip dhcp pool: tạo pool địa chỉ.
  • network, default-router, dns-server: khai báo mạng, gateway và DNS cấp cho client.
  • lease 1: thời gian lease tính theo ngày.

Các lệnh kiểm tra thường dùng:

LệnhTác dụng
show ip dhcp binding Xem IP nào đang cấp cho MAC nào, thời điểm hết hạn
show ip dhcp pool Xem mức sử dụng pool, số địa chỉ đã cấp
show ip dhcp conflict Xem các IP bị phát hiện xung đột
show ip dhcp server statistics Thống kê số gói Discover, Offer, Request, Ack, Nak

Nếu pool hết địa chỉ, client mới sẽ không nhận được IP. Cách xử lý xem tại bài DHCP server pool exhausted/empty error trên router switch Cisco.

8. So sánh DHCP động, DHCP reservation và IP tĩnh

Tiêu chíDHCP độngDHCP reservationIP tĩnh
Cách cấp IP Lấy ngẫu nhiên từ pool Server luôn cấp cùng một IP cho một MAC Gõ tay trên thiết bị
IP có đổi không Có thể đổi sau khi hết lease Không đổi Không đổi
Quản trị Tập trung, ít công sức Tập trung Rải rác trên từng máy
Rủi ro Phụ thuộc DHCP Server Phụ thuộc DHCP Server Dễ nhập sai, trùng IP
Phù hợp với PC, laptop, điện thoại, Wi-Fi, camera Máy in, camera cố định, AP Gateway, firewall, switch quản trị, server quan trọng

Reservation cho phép quản lý IP tập trung mà thiết bị vẫn có địa chỉ cố định, nên thường là lựa chọn gọn hơn so với gõ IP tĩnh trên từng thiết bị.

9. Ưu điểm và nhược điểm của DHCP

Ưu điểmNhược điểm
Tự động hóa cấp IP, giảm thời gian cấu hình Phụ thuộc vào DHCP Server; server lỗi và không có dự phòng thì thiết bị mới không có IP
Giảm lỗi nhập sai IP, mask, gateway, DNS Cần thêm biện pháp bảo mật, nếu không dễ gặp Rogue DHCP Server
Hạn chế trùng IP nhờ quản lý theo pool Không phù hợp cho thiết bị hạ tầng quan trọng nếu không dùng reservation
Đổi cấu hình tập trung, dễ mở rộng Pool cạn thì client mới không vào được mạng

10. Rủi ro bảo mật của DHCP và cách phòng tránh

DHCP dựa trên broadcast và mặc định client tin bất kỳ server nào trả lời trước. Điều này tạo ra hai kiểu tấn công phổ biến:

  • Rogue DHCP Server: thiết bị giả mạo (hoặc router Wi-Fi cắm nhầm vào mạng) cấp sai gateway và DNS, mở đường cho tấn công man-in-the-middle.
  • DHCP Starvation: kẻ tấn công gửi hàng loạt Discover với MAC giả để vét cạn pool, khiến client hợp lệ không còn IP.

Các lớp phòng thủ trên switch access:

Biện phápChống được gìTài liệu
DHCP Snooping Rogue DHCP Server, DHCP Starvation, tạo Binding Table Cấu hình DHCP Snooping Cisco, Bài 71
Dynamic ARP Inspection ARP Spoofing dựa trên Binding Table Bài 79
Port Security Giới hạn số MAC trên mỗi cổng Bài 78

11. Lỗi DHCP thường gặp và cách kiểm tra

Triệu chứngNguyên nhân thường gặpCách kiểm tra
Client có IP dạng 169.254.x.x (APIPA) Không liên lạc được DHCP Server Kiểm tra VLAN, đường tới server, ip helper-address
Client VLAN khác không nhận IP Thiếu hoặc sai ip helper-address trên SVI show running-config interface vlan X
Không còn IP để cấp Pool cạn hoặc lease quá dài show ip dhcp pool, rút ngắn lease, mở rộng pool
Hai máy trùng IP Có máy đặt IP tĩnh nằm trong pool show ip dhcp conflict, dùng excluded-address
Client nhận sai gateway hoặc DNS Có Rogue DHCP Server trong mạng Bật DHCP Snooping, xem show ip dhcp snooping binding
Bật DHCP Snooping xong mất IP toàn mạng Chưa đặt cổng uplink hoặc cổng tới server là trusted show ip dhcp snooping

12. Khi nào nên dùng DHCP?

Dùng DHCP cho hầu hết thiết bị đầu cuối: máy trạm, laptop, điện thoại, IP Phone, camera, thiết bị Wi-Fi. Với thiết bị hạ tầng (gateway, firewall, switch quản trị) và server quan trọng, nên dùng IP tĩnh hoặc DHCP reservation để địa chỉ luôn cố định.

13. Kết luận

DHCP là giao thức nền tảng giúp cấp IP và thông số mạng tự động, giảm lỗi cấu hình và dễ mở rộng. Để vận hành ổn định, cần chú ý ba điểm: thiết kế pool và lease phù hợp, dùng DHCP Relay khi server khác subnet, và bảo vệ DHCP bằng DHCP Snooping trên switch access.


FAQ về DHCP

DHCP dùng cổng nào?

DHCP Server (và relay) lắng nghe ở UDP 67, client dùng UDP 68.

Tại sao Discover và Request đều là broadcast?

Vì client chưa có địa chỉ IP hợp lệ nên không thể gửi unicast. Request dạng broadcast còn giúp các DHCP Server khác biết client đã chọn Offer của server nào.

DHCP Server ở VLAN khác thì client có nhận được IP không?

Có, nếu bật DHCP Relay (ip helper-address) trên interface/SVI hướng về client. Không có relay, gói Discover broadcast sẽ không vượt qua được router hay switch Layer 3.

Lease nên đặt bao lâu?

Mạng văn phòng ổn định có thể dùng lease vài ngày. Mạng Wi-Fi khách, quán cà phê, sự kiện nên đặt vài giờ để IP được thu hồi nhanh, tránh cạn pool.

IP 169.254.x.x nghĩa là gì?

Đó là địa chỉ APIPA mà hệ điều hành tự gán khi không nhận được phản hồi từ DHCP Server. Hãy kiểm tra kết nối tới server, VLAN và cấu hình relay.

DHCP có an toàn không?

Bản thân giao thức không có xác thực, nên cần DHCP Snooping để chặn server giả mạo, kết hợp Dynamic ARP Inspection và Port Security cho phòng thủ nhiều lớp.

Thông tin liên quan