Thay đổi IP VPS server trên DirectAdmin
Hướng dẫn DirectAdmin · cập nhật 13/08/2026
Để thay đổi IP VPS hoặc server trên DirectAdmin, bạn cập nhật license sang IP mới, chạy script ipswap.sh để đổi IP trong toàn bộ cấu hình, rồi khởi động lại các dịch vụ. Mất khoảng 10 phút, cần quyền root qua SSH.
Việc này cần làm sau khi nhà cung cấp cấp IP mới cho máy chủ, khi chuyển máy chủ sang dải IP khác, hoặc khi đổi IP để gỡ khỏi danh sách chặn. Bỏ qua bước sửa cấu hình thì website và email trên máy vẫn trỏ về địa chỉ cũ và ngừng hoạt động.
- Cập nhật license DirectAdmin sang IP mới.
- Khởi động lại DirectAdmin để nhận license.
- Chạy script đổi IP cũ thành IP mới trong toàn bộ cấu hình.
- Khởi động lại web server, FTP và các dịch vụ email.
- Kiểm tra website, email và bản ghi DNS.
License DirectAdmin gắn với đúng một địa chỉ IP. Đổi IP mà chưa cập nhật license thì DirectAdmin từ chối khởi động, kéo theo cả bảng điều khiển lẫn dịch vụ trên máy ngừng chạy. Vì vậy phải làm bước license trước, không đảo thứ tự.
Vì sao đổi IP làm DirectAdmin ngừng chạy
License DirectAdmin phát hành theo cặp client ID và license ID, gắn cứng với một địa chỉ IP. Mỗi lần khởi động, DirectAdmin đối chiếu IP hiện tại của máy với IP trong file license. Hai bên lệch nhau thì nó dừng ngay và ghi lỗi vào log.
Ngoài license, địa chỉ cũ còn nằm rải trong cấu hình của Apache hoặc Nginx, trong file vùng DNS của từng tên miền, và trong cấu hình mail. Thay số ở mức hệ điều hành không tự sửa những chỗ đó, nên phải chạy script chuyên dụng của DirectAdmin.
Chuẩn bị trước khi thay đổi IP máy chủ
Ba thứ cần có trong tay trước khi gõ lệnh đầu tiên. Thiếu bất kỳ thứ nào thì quy trình dừng giữa chừng và máy chủ nằm ở trạng thái nửa vời, khó gỡ hơn lúc chưa bắt đầu.
| Cần có | Lấy ở đâu | Thiếu thì sao |
|---|---|---|
| IP cũ và IP mới | Chạy ip a để lấy IP hiện tại, IP mới do nhà cung cấp cấp | Chạy sai script, cấu hình trỏ về địa chỉ không tồn tại |
| Client ID và license ID | Nơi mua license DirectAdmin | DirectAdmin không khởi động lại được sau khi đổi IP |
| Quyền truy cập console | Bảng điều khiển VPS của nhà cung cấp | Mất SSH giữa chừng là không vào lại được máy |
Riêng quyền truy cập console cần chú ý. Địa chỉ mới làm phiên SSH đang mở đứt kết nối, mà IP mới có thể chưa nhận được ngay. Có console qua bảng điều khiển VPS thì vẫn vào máy được, xem thêm bài hướng dẫn sử dụng KVM IP. Nên chạy quy trình này ở khung giờ ít truy cập, và tạo bản sao lưu trước.
Cách thay đổi IP VPS server trên DirectAdmin
Bốn bước dưới đây chạy bằng quyền root qua SSH. Làm đúng thứ tự: license trước, đổi cấu hình sau, khởi động lại dịch vụ sau cùng. Đảo thứ tự thì DirectAdmin không khởi động được và bạn phải sửa file license bằng tay.
1. Cập nhật license sang IP mới
Báo IP mới cho nơi bán license để họ cập nhật phía máy chủ cấp phép. Nhận được client ID và license ID rồi thì chạy:
cd /usr/local/directadmin/scripts
./getLicense.sh 1234 56789
Trong đó 1234 là client ID và 56789 là license ID của bạn. Thay hai con số này bằng số thật, giữ nguyên thứ tự client ID đứng trước. Script tải file license mới về máy.
2. Khởi động lại DirectAdmin
service directadmin restart
Lệnh chạy không báo lỗi nghĩa là license mới đã hợp lệ. Báo lỗi thì dừng ở đây, kiểm tra lại hai con số ở bước 1 trước khi đi tiếp.
3. Đổi IP trong toàn bộ cấu hình
Script ipswap.sh quét toàn bộ cấu hình DirectAdmin, thay IP cũ bằng IP mới ở mọi chỗ: file vùng DNS, cấu hình web server, danh sách IP của từng tài khoản.
cd /usr/local/directadmin/scripts
./ipswap.sh 1.2.3.4 4.3.2.1
Trong đó 1.2.3.4 là IP cũ và 4.3.2.1 là IP mới. Thứ tự hai tham số quan trọng, đảo lại là script thay ngược và cấu hình hỏng. Đọc kỹ trước khi gõ Enter.
4. Khởi động lại các dịch vụ
/etc/init.d/httpd restart
/etc/init.d/nginx restart
/etc/init.d/proftpd restart
/etc/init.d/exim restart
/etc/init.d/dovecot restart
Máy chủ không cài dịch vụ nào thì lệnh tương ứng báo không tìm thấy, bỏ qua dòng đó là được. Máy dùng OpenLiteSpeed thay Apache thì thay dòng đầu bằng service lsws restart.
Kiểm tra máy chủ sau khi chuyển sang địa chỉ mới
Bốn phép kiểm dưới đây xác nhận máy chủ đã chạy trên IP mới. Làm đủ cả bốn, vì website mở được chưa chắc email đã gửi nhận bình thường.
Bảng điều khiển. Mở https://ip-moi:2222, đăng nhập được là DirectAdmin đã nhận license mới.
Danh sách IP trong DirectAdmin. Đăng nhập bằng tài khoản admin, vào Server Manager rồi chọn IP Management. Danh sách chỉ còn IP mới, IP cũ đã biến mất.
Bản ghi DNS. Kiểm tra bản ghi A của một tên miền trên máy có trỏ về IP mới chưa:
dig +short tenmien.com A
Tên miền dùng DNS bên ngoài như Cloudflare thì ipswap.sh không sửa được, phải vào đó đổi bản ghi bằng tay. Cách làm nằm ở bài hướng dẫn quản lý DNS cho tên miền.
Email. Gửi thử một thư ra ngoài và nhận một thư từ ngoài vào. Đây là phép kiểm hay bị bỏ qua nhất, và cũng là chỗ hay hỏng nhất sau khi chuyển địa chỉ.
Xử lý các lỗi thường gặp sau khi chuyển địa chỉ
Bốn tình huống dưới đây chiếm phần lớn ca gặp trục trặc. Mỗi tình huống có dấu hiệu riêng nên nhìn triệu chứng là biết rơi vào ca nào.
DirectAdmin không khởi động. License chưa được cập nhật phía máy chủ cấp phép, hoặc hai con số ở bước 1 gõ sai. Xem log bằng tail -50 /var/log/directadmin/error.log để biết lý do. Xử lý lỗi license hết hạn nằm ở bài khắc phục lỗi license has expired trên DirectAdmin.
Website mở ra trang mặc định của máy chủ. Cấu hình web server còn giữ IP cũ. Dựng lại cấu hình bằng cd /usr/local/directadmin/custombuild && ./build rewrite_confs.
Email gửi được nhưng bị đánh dấu là thư rác. Bản ghi SPF vẫn khai IP cũ, và IP mới chưa có bản ghi PTR. Sửa bản ghi SPF cho khớp IP mới, rồi yêu cầu nhà cung cấp đặt bản ghi PTR trỏ về tên máy chủ. Cách viết bản ghi nằm ở bài SPF record là gì.
Vẫn còn IP cũ rải rác trong cấu hình. Tìm bằng grep -rl "1.2.3.4" /usr/local/directadmin/data/users/, thay 1.2.3.4 bằng IP cũ thật. Có kết quả thì chạy lại ipswap.sh một lần nữa.
Việc nên làm trong vài ngày sau khi đổi
IP mới cần thời gian để các máy chủ khác trên Internet công nhận. Bản ghi DNS lan hết mất tới 24 giờ, còn uy tín gửi thư của một địa chỉ mới thì xây trong nhiều ngày.
Ba việc nên theo dõi. Thứ nhất, kiểm tra IP mới có nằm trong danh sách chặn thư rác nào không, IP dùng lại từ khách trước có thể mang tiếng xấu sẵn. Thứ hai, xem log web trong hai ngày đầu để bắt các tên miền còn trỏ về IP cũ. Thứ ba, cập nhật mọi nơi có ghi IP cũ ngoài máy chủ: quy tắc tường lửa ở đầu khác, danh sách IP được phép kết nối MySQL từ xa, cấu hình sao lưu sang máy chủ khác.