Hướng dẫn cài đặt và cấu hình DHCP Server trên Rocky Linux 10 chi tiết

Trong các hệ thống mạng doanh nghiệp hoặc phòng lab ảo hóa, việc tự động cấp phát địa chỉ IP cho các máy trạm là yếu tố quan trọng giúp giảm tải cho quản trị viên và tránh trùng lặp địa chỉ. Thay vì phải cấu hình IP tĩnh thủ công cho từng thiết bị, bạn có thể sử dụng DHCP Server để đảm nhiệm việc này.

Cài đặt và cấu hình DHCP Server

1. Giới thiệu về DHCP Server

DHCP (Dynamic Host Configuration Protocol) là giao thức giúp tự động cấp phát các thông số mạng như địa chỉ IP, subnet mask, gateway và DNS cho các thiết bị trong mạng LAN.

Thay vì phải cấu hình IP thủ công cho từng máy, DHCP Server giúp bạn:

  • Tiết kiệm thời gian quản trị.

  • Tránh xung đột IP.

  • Dễ dàng mở rộng mạng nội bộ.

2. Giới thiệu về Kea DHCP

Kea DHCP là phần mềm máy chủ DHCP (Dynamic Host Configuration Protocol) thế hệ mới được phát triển bởi ISC – Internet Systems Consortium, tổ chức nổi tiếng đã tạo ra ISC DHCP truyền thống.

Kea được thiết kế hiện đại, linh hoạt và hiệu năng cao, hỗ trợ IPv4, IPv6, API RESTful, và dễ dàng tích hợp với cơ sở dữ liệu MySQL, PostgreSQL.

Ưu điểm nổi bật của Kea DHCP:

  • Cấu hình bằng JSON, dễ đọc và dễ quản lý.
  • Hỗ trợ giao diện quản trị API (Kea Control Agent).
  • Tích hợp tốt với hệ thống lớn, có khả năng mở rộng.
  • Cập nhật nhanh, hiệu năng cao, và bảo mật tốt hơn ISC DHCP.

Trong bài viết này, bạn sẽ học cách Cài đặt và cấu hình Kea DHCP Server trên Rocky Linux 10 một cách chi tiết, trực quan và dễ hiểu.

3. Chuẩn bị trước khi triển khai

Trước khi bắt đầu, bạn cần chuẩn bị:

  • Máy chủ Rocky Linux 10 đã được cài đặt đầy đủ và có quyền root.
  • Địa chỉ IP tĩnh 192.168.112.101 và card mạng hoạt động (ví dụ ens160).
  • Máy chủ có kết nối Internet để cài gói phần mềm.
  • Thông tin mạng nội bộ:
    • Domain: bknet.local
    • Gateway: 192.168.112.2
    • Dải IP: 192.168.112.200 - 192.168.112.254
    • DNS: 8.8.8.8, 8.8.4.4

Cập nhật hệ thống:

sudo dnf update -y

4. Cài đặt Kea DHCP Server

Cài gói Kea từ kho chính thức:

sudo dnf install kea -y

Sau khi cài đặt, các file cấu hình nằm trong thư mục:

/etc/kea/

Liệt kê nội dung thư mục để kiểm tra:

[root@lpi-srv01 ~]# ls -l /etc/kea
total 64
-rw-r-----. 1 root kea    45 Oct 25 22:56 kea-api-password
-rw-r-----. 1 root kea  5696 Jun  8 07:00 kea-ctrl-agent.conf
-rw-r-----. 1 root kea  1155 Jun  8 07:00 keactrl.conf
-rw-r-----. 1 root kea 22452 Jun  8 07:00 kea-dhcp4.conf
-rw-r-----. 1 root kea 19963 Jun  8 07:00 kea-dhcp6.conf
-rw-r-----. 1 root kea  3033 Jun  8 07:00 kea-dhcp-ddns.conf
[root@lpi-srv01 ~]#

Trong đó:

  • kea-dhcp4.conf: cấu hình DHCP cho IPv4 (file chính ta sẽ chỉnh).
  • kea-dhcp6.conf: cấu hình DHCP cho IPv6.
  • kea-ctrl-agent.conf: cấu hình Kea Control Agent (API).
  • keactrl.conf: file điều khiển dịch vụ Kea.
  • kea-dhcp-ddns.conf: cấu hình cập nhật DNS động (Dynamic DNS).

Backup file cấu hình gốc trước khi chỉnh sửa

sudo cp /etc/kea/kea-dhcp4.conf /etc/kea/kea-dhcp4.conf.bak

5. Cấu hình DHCP cấp phát IP động

Mở file cấu hình DHCPv4: /etc/kea/kea-dhcp4.conf

sudo nano /etc/kea/kea-dhcp4.conf

Tìm và chỉnh sửa nội dung như sau:

{
  "Dhcp4": {
    "interfaces-config": {
      "interfaces": [ "ens160" ]
    },
    "renew-timer": 900,
    "rebind-timer": 1800,
    "valid-lifetime": 3600,

    "option-data": [
      { "name": "domain-name-servers", "data": "8.8.8.8, 8.8.4.4" },
      { "name": "domain-name", "data": "bknet.local" },
      { "name": "domain-search", "data": "bknet.local" }
    ],

    "subnet4": [
      {
        "id": 1,
        "subnet": "192.168.112.0/24",
        "pools": [
          { "pool": "192.168.112.200 - 192.168.112.254" }
        ],
        "option-data": [
          { "name": "routers", "data": "192.168.112.2" }
        ]
      }
    ],

    "loggers": [
      {
        "name": "kea-dhcp4",
        "output_options": [
          { "output": "/var/log/kea/kea-dhcp4.log" }
        ],
        "severity": "INFO",
        "debuglevel": 0
      }
    ]
  }
}

Giải thích:

  • interfaces → card mạng mà DHCP sẽ lắng nghe.
  • subnet → dải mạng cấp phát IP.
  • pools → dải IP khả dụng.
  • routers → địa chỉ Gateway mặc định.
  • domain-name-servers → DNS cấp cho client.

6. Kiểm tra file cấu hình Kea DHCP

Trước khi khởi động dịch vụ, bạn nên kiểm tra cú pháp cấu hình:

sudo kea-dhcp4 -t /etc/kea/kea-dhcp4.conf

Nếu hợp lệ, hệ thống sẽ báo: Configuration file: OK

7. Khởi động và kích hoạt Kea DHCP

sudo systemctl enable kea-dhcp4
sudo systemctl start kea-dhcp4

Kiểm tra trạng thái dịch vụ:

sudo systemctl status kea-dhcp4

Nếu Firewalld đang chạy, hãy cho phép dịch vụ DHCP. Máy chủ DHCP sử dụng [67/UDP]

firewall-cmd --add-service=dhcp
firewall-cmd --runtime-to-permanent

8. Cấu hình DHCP Client

  • Qua máy trạm WIN10-CL01 cấu hình IP động

9. Kiểm tra các địa chỉ IP đã cấp phát

Qua máy chủ DHCP Kiểm tra các địa chỉ IP đã cấp phát

File lưu danh sách IP đã cấp nằm tại:

/var/lib/kea/kea-leases4.csv

Xem nội dung

cat /var/lib/kea/kea-leases4.csv

10. Gán địa chỉ IP tĩnh theo MAC

Nếu muốn gán IP cố định cho client WIN11-CL01 có địa chỉ MAC 00:0C:29:F8:DF:A1, thêm vào phần “subnet4”:

"reservations": [
  {
    "hw-address": "00:1A:2B:3C:4D:5E",
    "ip-address": "192.168.112.210",
    "hostname": "client-pc1"
  }
]

File cấu hình mẫu đầy đủ:

{
  "Dhcp4": {
    "interfaces-config": {
      "interfaces": [ "ens160" ]
    },
    "renew-timer": 900,
    "rebind-timer": 1800,
    "valid-lifetime": 3600,

    "option-data": [
      { "name": "domain-name-servers", "data": "8.8.8.8, 8.8.4.4" },
      { "name": "domain-name", "data": "bknet.local" },
      { "name": "domain-search", "data": "bknet.local" }
    ],

    "subnet4": [
      {
        "id": 1,
        "subnet": "192.168.112.0/24",
        "pools": [
          { "pool": "192.168.112.200 - 192.168.112.254" }
        ],
        "option-data": [
          { "name": "routers", "data": "192.168.112.2" }
        ],
        "reservations": [
          {
            "hw-address": "00:0C:29:F8:DF:A1",
            "ip-address": "192.168.112.210",
            "hostname": "WIN11-CL01"
          },
          {
            "hw-address": "00:0C:29:5D:03:A9",
            "ip-address": "192.168.112.211",
            "hostname": "WIN11-CL01"
          }
        ]
      }
    ],

    "loggers": [
      {
        "name": "kea-dhcp4",
        "output_options": [
          { "output": "/var/log/kea/kea-dhcp4.log" }
        ],
        "severity": "INFO",
        "debuglevel": 0
      }
    ]
  }
}

11. Thêm subnet mới

Để Kea DHCP cấp phát IP cho mạng khác, thêm vào "subnet4":

{
  "id": 2,
  "subnet": "192.168.120.0/24",
  "pools": [
    { "pool": "192.168.120.100 - 192.168.120.150" }
  ],
  "option-data": [
    { "name": "routers", "data": "192.168.120.1" }
  ]
}

Sau đó khởi động lại dịch vụ:

sudo systemctl restart kea-dhcp4

12. Kiểm tra log hoạt động DHCP

File log chính:

/var/log/kea/kea-dhcp4.log

Xem nhanh log:

sudo tail -f /var/log/kea/kea-dhcp4.log

13. Kết luận

Qua bài viết này, bạn đã nắm được toàn bộ quy trình cài đặt và cấu hình DHCP Server trên Rocky Linux 10 – từ việc cài gói Kea DHCP Server, sao lưu file cấu hình, chỉnh sửa subnet, cho đến kiểm tra IP cấp phát. Việc triển khai DHCP Server trên Linux giúp hệ thống mạng vận hành tự động, ổn định và dễ dàng quản lý, đặc biệt phù hợp cho các doanh nghiệp, phòng lab hoặc trung tâm dữ liệu.

Nếu bạn muốn nâng cao kỹ năng quản trị hệ thống Linux, tìm hiểu sâu hơn về dịch vụ mạng Linux, bảo mật máy chủ, cấu hình DHCP, DNS, FTP, NFS và nhiều kỹ năng khác, hãy tham khảo Khóa học Quản trị hệ thống Linux từ cơ bản đến nâng cao – nơi bạn được hướng dẫn thực hành trực tiếp trên môi trường thật, kèm ví dụ triển khai thực tế trong doanh nghiệp.

👉 Bắt đầu học Linux ngay hôm nay để trở thành quản trị viên hệ thống chuyên nghiệp!

Bài viết này hữu ích như thế nào?

Hãy bấm vào ngôi sao để đánh giá!

Đánh giá trung bình 5 / 5. Số phiếu bầu: 4