Adguard home là gì?
Khi làm việc với môi trường mạng nội bộ, việc truy cập các dịch vụ qua domain thay vì IP là điều vô cùng cần thiết. Tuy nhiên, phương pháp truyền thống là thêm từng entry vào file hosts (/etc/hosts trên Linux/Mac hoặc C:\Windows\System32\drivers\etc\hosts trên Windows) lại có nhiều bất tiện.

Tại Sao Không Nên Dùng File Hosts?
Việc quản lý domain local bằng file hosts tồn tại nhiều hạn chế nghiêm trọng:
Khó bảo trì và mở rộng: Khi có nhiều máy trong mạng, bạn phải chỉnh sửa file hosts trên từng máy riêng lẻ. Nếu IP của server thay đổi, bạn lại phải cập nhật lại tất cả các máy, gây tốn thời gian và dễ sai sót.
Không hỗ trợ wildcard: File hosts không thể định nghĩa subdomain động. Ví dụ, bạn không thể khai báo *.local.dev trỏ về một IP duy nhất, mà phải liệt kê từng subdomain cụ thể.
Thiếu tính linh hoạt: Không có khả năng load balancing DNS, không thể thiết lập DNS fallback, và không có logging để troubleshoot các vấn đề về phân giải tên miền.
May mắn là AdGuard Home, công cụ chặn quảng cáo và DNS server mà chúng ta đã cài đặt ở bài trước, có thể giải quyết tất cả những vấn đề này một cách hiệu quả.
Lợi Ích Của DNS Local Server Với AdGuard Home
AdGuard Home không chỉ là công cụ chặn quảng cáo mà còn là một DNS server đầy đủ tính năng. Khi sử dụng AdGuard Home làm DNS local, bạn sẽ có:
Quản lý tập trung: Tất cả domain mapping được cấu hình ở một nơi duy nhất, dễ dàng cập nhật và quản lý.
Hỗ trợ wildcard domain: Bạn có thể định nghĩa *.mylab.local trỏ về một IP, tất cả subdomain sẽ tự động hoạt động.
DNS Rewrite linh hoạt: Có thể rewrite domain thành IP, hoặc thậm chí rewrite domain này thành domain khác để xây dựng các luồng phức tạp.
Load Balancing DNS: Phân tải truy vấn DNS qua nhiều upstream DNS server, tăng tốc độ và độ tin cậy.
Cấu Hình DNS Rewrite – Tạo Domain Local
Xem hướng dẫn cài đặt adguard home: Phần 4: AdGuard Home: Hướng dẫn DNS Local & Chặn Quảng cáo
Để tạo domain local trong AdGuard Home, chúng ta sử dụng tính năng DNS Rewrite. Đây là cách cấu hình:
Bước 1: Truy Cập Giao Diện Quản Trị
Mở trình duyệt và truy cập vào AdGuard Home dashboard tại địa chỉ http://<IP_SERVER>:3000. Đăng nhập với tài khoản admin đã tạo.

Bước 2: Thiết Lập DNS Rewrites

Vào menu Filters > DNS rewrites. Đây là nơi bạn định nghĩa các rule mapping domain sang IP.
Thêm domain đơn lẻ: Click nút Add DNS rewrite, nhập domain (ví dụ: nas.local) và IP tương ứng (ví dụ: 192.168.1.100). Click Save.
Thêm wildcard domain: Để tất cả subdomain của một domain trỏ về cùng IP, sử dụng ký tự *. Ví dụ: *.lab.local với IP 192.168.1.50 sẽ khiến web.lab.local, api.lab.local, db.lab.local… đều trỏ về 192.168.1.50.
Lưu ý về domain local: Nên sử dụng các TLD như .local, .lan, .internal hoặc .home cho mạng nội bộ. Tránh dùng các TLD thực như .com, .net để tránh xung đột với domain công khai.
Bước 3: Kiểm Tra Cấu Hình
Sau khi thêm DNS rewrite, bạn có thể test ngay bằng công cụ Query Log trong AdGuard Home hoặc dùng lệnh nslookup trên terminal:
nslookup nas.local <IP_ADGUARD>
Nếu kết quả trả về đúng IP bạn đã cấu hình, DNS rewrite đã hoạt động chính xác.

Cấu Hình Load Balancing DNS
Load balancing DNS giúp phân tải truy vấn qua nhiều DNS server, tăng tốc độ phân giải và đảm bảo uptime cao hơn. AdGuard Home hỗ trợ tính năng này thông qua Upstream DNS servers.
Thiết Lập Upstream DNS

Vào Settings > DNS settings, tìm mục Upstream DNS servers. Bạn có thể thêm nhiều DNS server, mỗi DNS trên một dòng:
1.1.1.1
1.0.0.1
8.8.8.8
8.8.4.4
https://dns.google/dns-query
https://cloudflare-dns.com/dns-query
AdGuard Home sẽ query song song tất cả các upstream DNS và chọn response nhanh nhất. Điều này không chỉ tăng tốc độ mà còn đảm bảo nếu một DNS server bị lỗi, các server khác vẫn hoạt động bình thường.

Parallel Requests và Fastest IP
Trong phần DNS settings, bật tùy chọn Parallel requests để AdGuard Home gửi request đến tất cả upstream DNS đồng thời và sử dụng kết quả trả về nhanh nhất. Tùy chọn Fastest IP address sẽ chọn IP có response time thấp nhất nếu một domain trả về nhiều IP.
Bootstrap DNS
Nếu bạn sử dụng DNS-over-HTTPS hoặc DNS-over-TLS, cần cấu hình Bootstrap DNS để phân giải hostname của upstream DNS server. Thêm vào mục Bootstrap DNS servers:
1.1.1.1
8.8.8.8
Cấu Hình Client Sử Dụng AdGuard DNS
Sau khi AdGuard Home đã sẵn sàng, bước tiếp theo là cấu hình các thiết bị trong mạng để sử dụng nó làm DNS server. Có hai cách tiếp cận chính:
Phương Án 1: Cấu Hình Trên Router (Khuyến Nghị)
Đây là cách đơn giản và hiệu quả nhất. Khi cấu hình DNS trên router, tất cả thiết bị kết nối vào mạng sẽ tự động sử dụng AdGuard Home mà không cần cấu hình thủ công từng máy.
Truy cập router: Mở trình duyệt, nhập địa chỉ gateway (thường là 192.168.1.1 hoặc 192.168.0.1), đăng nhập với tài khoản admin.
Tìm phần DHCP settings: Thường nằm trong mục LAN hoặc Network settings. Tìm tùy chọn Primary DNS hoặc DNS Server.
Thiết lập DNS: Nhập IP của AdGuard Home làm Primary DNS (ví dụ: 192.168.1.10). Secondary DNS có thể để trống hoặc thêm một DNS public như 1.1.1.1 làm fallback.
Lưu và khởi động lại: Save cấu hình và reboot router. Các thiết bị mới kết nối hoặc renew DHCP sẽ nhận DNS từ AdGuard Home.
Phương Án 2: Cấu Hình Trên Từng Máy Client
Nếu không thể cấu hình router hoặc chỉ muốn một số máy sử dụng AdGuard DNS, bạn có thể cấu hình thủ công trên từng thiết bị.
Windows: Vào Control Panel > Network and Internet > Network Connections. Right-click vào adapter đang dùng, chọn Properties. Double-click vào Internet Protocol Version 4 (TCP/IPv4), chọn “Use the following DNS server addresses”, nhập IP của AdGuard Home.
macOS: Mở System Preferences > Network. Chọn kết nối đang dùng (Wi-Fi hoặc Ethernet), click Advanced > DNS. Thêm IP của AdGuard Home vào danh sách DNS servers.
Linux: Cách cấu hình phụ thuộc vào distro và network manager. Với NetworkManager, edit connection bằng nmcli hoặc GUI, thêm DNS server vào ipv4.dns. Ví dụ:
nmcli con mod "Wired connection 1" ipv4.dns "192.168.1.10"
nmcli con down "Wired connection 1" && nmcli con up "Wired connection 1"
Android: Vào Settings > Network & Internet > Wi-Fi, long press vào network đang kết nối, chọn Modify network > Advanced options. Thay đổi IP settings thành Static, nhập DNS 1 là IP của AdGuard Home.
iOS: Vào Settings > Wi-Fi, tap vào (i) bên cạnh network đang kết nối. Chọn Configure DNS > Manual, xóa các DNS hiện có và thêm IP của AdGuard Home.
Kiểm Tra và Troubleshooting
Sau khi cấu hình xong, cần verify rằng mọi thứ hoạt động đúng:
Test DNS Resolution
Sử dụng lệnh nslookup hoặc dig để kiểm tra:
nslookup nas.local
nslookup google.com
Kết quả phải trả về đúng IP của domain local và có thể phân giải domain công khai bình thường.
Kiểm Tra Query Log
Trong AdGuard Home dashboard, vào Query log để xem real-time các DNS query từ các thiết bị. Nếu thấy queries từ các máy trong mạng, nghĩa là cấu hình thành công.
Test Truy Cập Service
Mở trình duyệt và truy cập vào domain local bạn đã cấu hình (ví dụ: http://nas.local). Nếu trang web load được, DNS đã hoạt động chính xác.
Xử Lý Vấn Đề Cache
Nếu domain không resolve ngay sau khi cấu hình, có thể do DNS cache. Clear DNS cache trên client:
Windows: ipconfig /flushdns
macOS: sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
Linux: sudo systemd-resolve --flush-caches (nếu dùng systemd-resolved)
Best Practices và Lưu Ý
Đặt IP tĩnh cho AdGuard Home: Server chạy AdGuard Home nên có IP tĩnh hoặc DHCP reservation để đảm bảo DNS server không thay đổi IP.
Backup cấu hình: Thường xuyên backup cấu hình AdGuard Home qua Settings > General settings > Export. File YAML này chứa tất cả DNS rewrites và settings.
Monitoring: Theo dõi Query log và Statistics để phát hiện các vấn đề hoặc query bất thường.
Security: Nếu AdGuard Home exposed ra internet, bắt buộc phải dùng HTTPS và strong password. Tốt nhất là chỉ cho phép access từ mạng nội bộ.
Fallback DNS: Luôn cấu hình ít nhất 2 upstream DNS để đảm bảo service không bị gián đoạn khi một provider gặp sự cố.
Kết Luận
AdGuard Home là giải pháp toàn diện để quản lý DNS trong môi trường mạng nội bộ. Thay vì phải chỉnh sửa file hosts trên từng máy, bạn có một hệ thống DNS tập trung, linh hoạt với khả năng wildcard domain, load balancing và logging chi tiết. Việc cấu hình cũng rất đơn giản, chỉ cần vài phút là có thể triển khai cho toàn bộ mạng.
Với DNS local server, việc truy cập các service trong mạng trở nên dễ dàng và chuyên nghiệp hơn. Không còn phải nhớ IP, không còn phải cập nhật file hosts mỗi khi có thay đổi. Mọi thứ được quản lý tập trung, dễ bảo trì và mở rộng theo nhu cầu.