Trong bài viết này mình sẽ hướng dẫn gắn tên miền cho Proxy Machine, giúp ổn định đường truyền phương thức khi sử dụng Proxy / VPN từ xa.
1. Phân biệt định dạng Proxy Local IP, Public IP và Domain
Trong danh sách Proxy có khu vực chọn định dạng Proxy để hiển thị và thao tác:
- Proxy Local để dùng trực tiếp: Chỉ máy tính / điện thoại kết nối trực tiếp vào Proxy Machine mới dùng được Proxy này.
- Proxy Public để dùng từ xa: tức là share Proxy cho người dùng ở đường truyền mạng Internet khác sử dụng, có thể dùng ở trong nước hay nước ngoài đều được.

Tuy nhiên có một vấn đề nảy sinh là IP Public cũng là một trong các địa chỉ IP động mà nhà mạng cấp cho Box Proxy Machine trong gói cước đa phiên, vì thế địa chỉ IP này sẽ bị thay đổi ngẫu nhiên sau một khoảng thời gian nhất định dẫn tới nếu sử dụng Proxy Public sẽ bị die sau một khoảng thời gian nhất định.
Ví dụ: anh A gửi cho anh B Proxy IPv4 HTTP: 1.55.9.25:4001:user1:abcd -> sau một khoảng thời gian ví dụ vài giờ đồng hồ do kết nối mạng kém ổn định / mất điện thì proxy “1.55.9.25:4001:user1:abcd” -> “42.114.1.0:4001:user1:abcd”, nghĩa là IP Public đã bị thay đổi. Về cơ bản là khi gửi Proxy Public cho người khác dùng từ xa thì sẽ phải thường xuyên gửi lại Proxy mới rất bất tiện.
Vì thế Proxy định dạng Domain sẽ khắc phục điều này, so sánh nguyên lý hoạt động mô tả qua ví dụ sau:
- Proxy Public: Client -> IP Public Proxy -> Internet:
113.2.5.3 -> 171.2.5.6:4001:user1:password1 -> Internet
- Proxy Domain: Client -> Domain Proxy -> Internet
113.2.5.3 -> proxymachine2026.ddns.net:4001:user1:password1 -> Internet
Trong đó, tên miền (domain) “proxymachine2026.ddns.net” -> 171.2.5.6 | sẽ luôn luôn tự động cập nhật trỏ về địa chỉ IP Public của Proxy, nghĩa là cho dù IP Public có thay đổi thì phía Client user cũng không cần nhập lại Proxy mới vì Domain luôn tự trỏ về chính xác địa chỉ IP này.
Các tên miền .com .vn…thông thường sẽ không hỗ trợ IP động mà chỉ hỗ trợ IP tĩnh chủ yếu phục vụ cho hosting website…vì thế trong bài viết này mình sẽ hướng dẫn anh em gắn tên miền với dịch vụ DDNS – tên miền với IP động của NO-IP và DUCKDNS, đặc biệt cả 2 đều miễn phí hoàn toàn với một vài mẹo nhỏ có đầy đủ hướng dẫn bên dưới.
Proxy Machine hiện tại hỗ trợ 2 dịch vụ DDNS là NO-IP và DUCKDNS, có thể chạy song song cả 2 tên miền này với nhau mà không có bất kỳ xung đột nào.

Khi chưa gắn tên miền thì ở trang Quản lý Proxy chọn định dạng Domain sẽ hiển thị Proxy = N/A.
- Lưu ý quan trọng:
- Khi gắn tên miền cho Proxy Machine thì mặc định tên miền sẽ trỏ về địa chỉ IP của Proxy ID =1, vì thế không Reset Proxy số 1 để ổn định server, mõi khi thay đổi địa chỉ IP thì tên miền cần từ 3-10 phút để cập nhật địa chỉ IP lên cloud DNS tên miền chính xác.
- Tương tự như Proxy IP Public WAN -> thì domain chỉ dùng được từ xa, tức là thiết bị như máy tính điện thoại kết nối khác mạng hiện tại của Proxy Machine thì mới sử dụng được.
2. Hướng dẫn gắn tên miền NO-IP cho Proxy Machine
No-IP là một dịch vụ DDNS lâu đời, miễn phí và ổn định nên mình sẽ recommend ae ưu tiên nó, làm theo hướng dẫn từ a-z sau để đăng ký tên miền và gắn cho Proxy Machine.
Bước 1: Đăng ký tài khoản NO-IP
Truy cập trang web https://www.noip.com/sign-up và bấm nút Sign Up -> Sign Up with Google (ae rành thì có thể tự đăng ký theo cách mình muốn không nhất thiết là cách này).

Chọn tài khoản google đăng ký.

Bấm Continue.

#Lưu ý có thể có lỗi “Account already exists and is not configured with Single Sign-On. Use email and password fields to log in. Forgot Password?“. Nếu ae đã đăng ký tài khoản, thì hãy bấm vào Forgot Password sau đó làm theo hướng dẫn để đổi lại mật khẩu nếu đã quên, còn nếu ae vẫn nhớ tài khoản No-IP của mình thì đăng nhập vào.

Bước 2: Tạo tên miền Domain
Sau khi đăng ký và đăng nhập thành công, ae hãy vào trang https://my.noip.com/dns/records làm theo các bước sau:
- Vào mục DNS Records.
- Bấm Create Hostname
- Nhập tên miền muốn tạo vào Host (không quá dài gây khó nhớ / khó nhập proxy về sau và cũng không quá ngắn dễ bị trùng do người khác đã sử dụng).
- Chọn đuôi tên miền mong muốn trong danh sách (Top-Level Domain – TLD). Có những đuôi tên miền miễn phí và có những loại trả phí, mình hay chọn ddns.net vì nó Free.
- Bấm nút Create để tạo tên miền.
*Lưu ý: Mỗi tài khoản noip sẽ chỉ đăng ký được 1 tên miền miễn phí nên nếu ae có nhiều thiết bị Proxy Machine hơn thì hãy đăng ký một tài khoản NO-IP khác để tạo thêm nhé!

Bước 3: Tạo DDNS Keys
Sau khi tạo xong domain, chúng ta cần Key của tên miền để gắn vào Proxy Machine sử dụng API cập nhật địa chỉ IP Public lên đúng tên miền.
Vào mục DDNS Keys -> Add Group.

Trong bảng Create DDNS Key, thực hiện:
- Description (ghi chú): nhập gì cũng được, là ghi chú để phân biệt key sau này nếu có nhiều key.
- Grouped Hostnames: chọn tên miền đã tạo trước đó.
- Bấm nút Create.

Sau khi bấm Create thì key sẽ được tạo, truy cập vào trang Cấu hình Proxy trên Proxy Machine và thực hiện:
- Ở trang Cấu hình Proxy – nhập tên miền No-IP đã tạo ở Bước 2 bên trên.
- Copy Username / Email -> Tài khoản NoIP.
- Copy Password -> Mật Khẩu NoIP.
- Bấm Lưu cấu hình Domain.
- Bấm Done ở trang my.noip.com/ddns-keys.

Sau khi gắn Proxy thì anh em có thể về trang Quản lý Proxy và chọn định dạng Proxy Domain No-IP, copy gửi cho người khác sử dụng từ xa ổn định.

Lúc này anh em hoàn toàn có thể sử dụng tên miền thay thế cho định dạng Proxy thông thường, từ sử dụng Proxy HTTP, SOCKS5 / VPN…cho tới đăng nhập trang quản trị bằng tên miền.
Trang quản trị Proxy mặc định là http://172.16.1.1:10000 -> thay thế bằng domain là http://doman:10000 (chỉ dùng được từ xa, dùng tực tiếp vẫn vào http://172.16.1.1:10000).

Cập nhật IP thủ công lên NO-IP
Khi cấu hình tên miền xong, từ một máy client ở mạng ngoài (không cắm trực tiếp vào Proxy Machine), hãy thử ping vào tên miền để kiểm tra:

Mở CMD trên máy tính, nhập lệnh ping “tên miền”, sẽ có một số kết quả sau:
- Thành công: Reply from …nhưng cần kiểm tra địa chỉ IP có trùng với địa chỉ IP của Proxy ID số 1 trong danh sách Proxy IP đa phiên hay không, nếu có thì mọi thứ đã hoàn hảo có thể truy cập từ xa qua tên miền HTTP (https không được nha ví dụ https://abc.ddns.net:10000 là không được, hãy bỏ chữ “s” chỉ còn http://abc.ddns.net).
- Tên miền chưa được tạo: Ping request could not find host “…abcjsdkjs.ddns.net”. Please check the name and try again =>> Khởi tạo lại tên miền no-ip một cách chính xác!
- Trường hợp 3 là ping thành công / hoặc thất bại nhưng kết quả Reply from… phản hồi địa chỉ IP không trùng với địa chỉ IPv4 Proxy số 1 hoặc bất kỳ ID proxy nào khác trong hệ thống của bạn thì lỗi tiềm ẩn nào đó khiến không thể update chính xác địa chỉ IP lên NO-IP dẫn tới tên miền sai. Lúc này sẽ bị một số lỗi như die proxy (domain) và không thể truy cập trang quản trị Proxy từ xa (hình ảnh dưới).
- Lúc này anh em có 2 lựa chọn, một là chờ thêm hoặc reboot lại thiết bị để hy vọng mọi thứ sẽ ổn, 2 là cập nhật tên miền thủ công theo hướng dẫn dưới đây.
Bước 1: Copy địa chỉ IP proxy số 1 của Proxy Machine trong danh sách ở trang Quản lý Proxy.

Bạn cũng có thể cập nhật thủ công bằng bất kỳ địa chỉ IPv4 nào trong danh sách nhưng vì đang dùng domain và hệ thống Proxy Machine cũng đang mặc định cập nhật IP số 1 nên chúng ta thống nhất sẽ dùng IP số 1 này là cổng vào, và đặc biệt không xoay reset proxy số 1 để giữ IP tĩnh ổn định cho tên miền nhé!
Bước 2: Truy cập lại vào trang No-IP -> vào mục DNS Records -> Bấm vào nút hình cái bút ở tên miền đã tạo trong danh sách để chỉnh sửa.

Bước 3: Dán Paste địa chỉ IPv4 đã copy ở bước 1 vào ô IPv4 -> Bấm Save.

Sau khi thực hiện, DDNS cần từ vài giây cho tới vài phút để đồng bộ lên hệ thống DNS thế giới.
Nếu bạn dùng máy tính Windows thì có thể thử làm mới DNS bằng cách sau nếu muốn đẩy nhanh quá trình update DNS:
- Nhấn phím Windows, gõ “cmd”.
- Chuột phải vào Command Prompt và chọn Run as administrator.
- Nhập lệnh ipconfig /flushdns và nhấn Enter.
- Thông báo “Successfully flushed the DNS Resolver Cache” hiện ra là thành công.
Sau đó vẫn ở CMD, ping lại tới tên miền một lần nữa và kiểm tra kết quả phản hồi Reply from… đã trùng với địa chỉ IP của Proxy 1 hay chưa.
Hướng dẫn gia hạn tên miền NO-IP
Vì là miễn phí nên có một thao tác nhỏ cần làm để duy trì tên miền đã tạo, mỗi tháng thì NO-IP sẽ gửi thông báo hết hạn tên miền và có tùy chọn là mua theo năm hoặc tiếp tục gia hạn dùng miễn phí, thì mình sẽ hướng dẫn anh em cách dùng miễn phí, ae nào không muốn mỗi tháng phải xác thực một lần thì mua luôn.
Bước 1: Kiểm tra và mở mail được gửi về email của ae đã đăng ký tên miền NO-IP, thường có tên là No-IP Notices.

Bước 2: Bấm Confirm Hostname.

Bước 3: Tích chọn xác minh I’m not a robot và bấm Confirm your hostname now.

3. Gắn tên miền Duckdns cho Proxy Machine
Nếu ngại gia hạn hàng tháng như No-IP thì Duckdns là một sự lựa chọn thay thế tuyệt vời trong các dịch vụ DDNS, nó miễn phí 100% và không cần xác minh gia hạn hàng tháng, tuy nhiên mình khuyên chỉ nên dùng DuckDNS làm tên miền phụ vì nó miễn phí hoàn toàn nên độ ổn định sẽ kém hơn NO-IP.
Bước 1: Đăng nhập vào Duck DNS
Truy cập vào trang https://www.duckdns.org/ và bấm vào nút Sign in with Google (bạn có thể đăng nhập bằng nhiều hình thức khác đều ổn).

Chọn tài khoản gmail.

Bước 2: Tạo tên miền và gắn vào Proxy Machine
Đăng nhập thành công vào tragn duckdns.org/domains thì làm theo lần lượt thao tác sau:
- Nhập tên miền muốn tạo vào ô http://…duckdns.org -> bấm add domain.
- Truy cập vào trang Cấu hình Proxy sau đó copy token ducks dns -> Token Duckdns.
- Copy tên miền đã tạo thành công ở bên trên -> Tên miền Duckdns. *Lưu ý: Tên miền này khi sao chép và dán chỉ được bao gồm phần Second-Level Domain – SLD, không copy toàn bộ http://*.duckdns.org (ví dụ http://proxymachine2026.duckdns.org -> chỉ copy dán thông tin proxymachine2026).

Kết quả khi ở trang Quản lý Proxy chọn định dạng Domain DuckDNS sẽ hiển thị Proxy theo tên miền DuckDNS đã tạo, từ đây có thể copy Proxy HTTP / SOCKS5 và API link xoay theo định tên miền để ổn định proxy khi sử dụng từ xa.

Nếu ae nhập thông tin đầy đủ thông tin key tài khoản của 2 dịch vụ NO-IP và DUCKDNS thì Proxy Machine sẽ có 2 tên miền, không bắt buộc phải nhập đầy đủ thông tin cả 2.
