Trong [Phần 6] của series pfSense Lab, mình chia sẻ cách cấu hình Dynamic DNS trên pfSense để cập nhật Public IP tự động cho tên miền của bạn.
pfSense có sẵn tính năng Dynamic DNS cực kỳ mạnh mẽ, hỗ trợ rất nhiều các dịch vụ DNS phổ biến: Cloudflare, DigitalOcean, GoDaddy, FreeDNS, OpenDNS, Linode,… Mình sẽ sử dụng dịch vụ DNS của Cloudflare trong bài hướng dẫn này.
Mục Lục:
1. Yêu cầu
- Đã có sẵn tên miền và đã có tài khoản Cloudflare.
- Tên miền đã được chuyển về CloudFlare quản lý
- Router pfSense
2. Tạo A Record cho tên miền
Ví dụ mình muốn sử dụng tên miền pfsense.thuanbui.me
để truy cập đến homelab ở nhà. Bấm vào Add record và tạo một A record mới.
- Name: điền vào
pfsense
- IPv4: điền tạm
1.1.1.1
, thông số này sẽ được tự động cập nhật thành Public IP ở nhà sau khi thiết lập Dynamic DNS trên pfSense
3. Tạo Cloudflare API Token
Truy cập vào trang Cloudflare API Token để tạo Token mới
Bạn cần lưu lại Token vừa mới tạo để lưu vào script đã tạo. Token này sẽ không hiện ra lại trên Cloudflare vì lý do bảo mật. Nếu bạn quên lưu, cần phải xoá Token và tạo lại cái mới.
4. Tìm thông tin Zone ID
Từ trang chủ Cloudflare, bạn bấm vào tên miền muốn sử dụng để cập nhật IP. Sau đó kéo xuống dưới sẽ thấy mục Zone ID. Lưu lại thông số này để điền vào script
5. Tạo Dynamic DNS Client
Truy cập vào dịch vụ Dynamic DNS từ menu Services –> Dynamic DNS. Bấm Add
Nhập thông số cho DNS Dynamic Client
- Service Type: mình chọn Cloudflare. Bạn có thể chọn dịch vụ DNS khác đang sử dụng
- Interface to monitor: WAN
- Hostname: nhập vào tên miền cần cập nhật Dynamc DNS.
- Cloudflare Proxy: Tick chọn Enable Proxy để ẩn Public IP của mạng nhà.
- Username: Tuỳ theo dịch vụ bạn chọn ở mục Service Type mà thông số Username này sẽ khác nhau. Với Cloudflare, mình cần nhập vào Zone ID của tên miền (đã ghi lại ở bước 4)
- Password: nhập vào API Token của Cloudflare (đã tạo ở bước 3)
- TTL: có thể để trống
- Description: nhập nội dung tuỳ thích để ghi nhớ
Bấm Save để lưu lại.
pfSense sẽ tự động kết nối đến Cloudflare thông qua API Token và Zone ID để cập nhật Zone DNS cho tên miền pfsense.thuanbui.me
Kiểm tra lại trên Cloudflare, tên miền đã được trỏ về Public IP ở nhà, giống với Cache IP hiển thị trong pfSense.
pfSense không cho chỉnh tần suất cập nhật Dynamic DNS nên mình không rõ bao lâu nó sẽ chạy 1 lần. Có lẽ hệ thống nó đủ thông minh để cập nhật mỗi khi IP ở nhà có sự thay đổi.
Nếu mạng nhà không sử dụng pfSense, bạn có thể cập nhật Dynamic DNS lên Cloudflare bằng cách dùng Bash Script trên Linux theo hướng dẫn dưới đây.
Chúc bạn thực hiện thành công!