Tạm biệt Excel: Cách cài đặt phpIPAM để quản lý hạ tầng IP chuyên nghiệp

Network tutorial - IT technology blog
Network tutorial - IT technology blog

Khi file Excel trở thành “hố đen” dữ liệu

Kịch bản này chắc hẳn rất quen thuộc: 2 giờ sáng, hệ thống ERP của công ty đột ngột sập. Sau 30 phút rà soát, bạn phát hiện một máy ảo mới vừa chiếm mất IP của Gateway. Nguyên nhân? Ai đó trong team quên cập nhật vào file IP_Management_Final_v2.xlsx. Những sai sót thủ công như vậy thường gây ra các đợt downtime không đáng có, làm tiêu tốn hàng giờ xử lý sự cố.

Nếu bạn đang quản lý trên 50 subnet hoặc hàng trăm thiết bị, việc dùng bảng tính là một rủi ro lớn. Đó là lúc phpIPAM phát huy tác dụng. Đây là công cụ quản lý địa chỉ IP mã nguồn mở cực kỳ mạnh mẽ. Nó không chỉ liệt kê IP mà còn hỗ trợ quản lý VLAN, VRF và tích hợp quét mạng tự động. Mọi thứ được hiển thị trực quan trên giao diện web thay vì những dòng cột khô khan.

Trước khi nạp dữ liệu vào hệ thống, mình thường dùng toolcraft.app/vi/tools/developer/ip-subnet-calculator để tính toán nhanh dải CIDR. Công cụ này giúp xác định chính xác số host và dải broadcast, tránh việc cấu hình sai ngay từ bước quy hoạch ban đầu.

Chuẩn bị môi trường cài đặt

Để vận hành ổn định cho mạng quy mô khoảng 5.000 IP, bạn chỉ cần một VPS cơ bản (1 vCPU, 2GB RAM). Mình khuyến khích sử dụng Ubuntu 24.04 LTS để được hỗ trợ lâu dài. Hệ thống sẽ chạy trên stack LAMP truyền thống.

Bước 1: Cài đặt các gói thành phần

Đầu tiên, hãy cập nhật hệ thống và cài đặt Apache, MariaDB cùng các module PHP. Lưu ý: phpIPAM bắt buộc phải có php-gmp để xử lý các phép tính toán học trên IPv6.

sudo apt update && sudo apt upgrade -y
sudo apt install apache2 mariadb-server php php-curl php-gd php-intl php-pear php-imap php-mysql php-mbstring php-xml php-gmp php-json php-xmlrpc php-zip libapache2-mod-php git -y

Bước 2: Thiết lập cơ sở dữ liệu

Đừng bao giờ để database mở cửa tự do. Hãy bảo mật MariaDB và tạo user riêng cho ứng dụng.

sudo mysql_secure_installation

# Đăng nhập vào MySQL
sudo mysql -u root -p

# Tạo database và cấp quyền
CREATE DATABASE phpipam;
GRANT ALL PRIVILEGES ON phpipam.* TO 'phpipam_user'@'localhost' IDENTIFIED BY 'MatKhauSieuKho@123';
FLUSH PRIVILEGES;
EXIT;

Bước 3: Tải và cấu hình phpIPAM

Sử dụng Git để tải source code giúp việc nâng cấp phiên bản sau này rất nhàn. Bạn chỉ cần git pull là xong.

cd /var/www/html
sudo git clone https://github.com/phpipam/phpipam.git .
sudo chown -R www-data:www-data /var/www/html

Tiếp theo, hãy tạo file cấu hình từ bản mẫu:

cp config.dist.php config.php
sudo nano config.php

Bạn tìm các dòng khai báo database và điền thông tin đã tạo ở Bước 2 vào. Nhớ kiểm tra kỹ port mặc định là 3306.

Hoàn tất qua giao diện Web

Bây giờ, hãy truy cập vào IP server của bạn qua trình duyệt. Giao diện cài đặt sẽ hiện ra.

1. Khởi tạo Database tự động

Chọn “New phpipam installation”, sau đó chọn “Automatic database installation”. Hệ thống sẽ tự động tạo các bảng dữ liệu cần thiết mà bạn không cần phải import file SQL thủ công.

2. Tối ưu đường dẫn (Pretty Links)

Để các URL như /subnets/1/ hoạt động thay vì dạng query string phức tạp, bạn cần kích hoạt Mod_Rewrite của Apache:

sudo a2enmod rewrite
sudo nano /etc/apache2/sites-available/000-default.conf

Chèn cấu hình AllowOverride All vào block <Directory /var/www/html>, sau đó restart Apache bằng lệnh: sudo systemctl restart apache2.

Vận hành thực tế: Tự động hóa và Giám sát

Sau khi đăng nhập, việc đầu tiên bạn nên làm là chia Sections (ví dụ: Core Network, Guest Wi-Fi). Điều này giúp phân loại tài nguyên mạch lạc hơn.

Quét mạng tự động với fping

Đây là tính năng giúp bạn thoát khỏi việc nhập tay từng IP. Hệ thống sẽ tự quét dải mạng và báo cáo IP nào đang online. Hãy cài đặt fping:

sudo apt install fping -y

Để hệ thống tự cập nhật trạng thái mỗi 15 phút, hãy thêm các dòng sau vào crontab (sudo crontab -e):

*/15 * * * * /usr/bin/php /var/www/html/functions/scripts/pingCheck.php
*/15 * * * * /usr/bin/php /var/www/html/functions/scripts/discoveryCheck.php

Lời khuyên từ thực tế

Khi mình import hơn 1.000 bản ghi từ Excel vào phpIPAM, lỗi trùng lặp hiện ra đỏ rực. Đó là lúc bạn nhận ra file Excel cũ đã sai lệch khủng khiếp thế nào. Đừng quên bật Email Notification. Mỗi khi có thiết bị lạ cắm vào mạng hoặc một server quan trọng bị mất kết nối, bạn sẽ nhận được cảnh báo ngay lập tức.

Việc triển khai có thể mất một buổi chiều. Tuy nhiên, giá trị nó mang lại là sự an tâm tuyệt đối. Bạn sẽ luôn biết chính xác thiết bị nào đang giữ IP nào, vào bất cứ lúc nào.

Share: