EQVPS

VPN không kết nối được: danh sách kiểm tra

VPN bạn tự dựng không kết nối được. Hãy kiểm tra theo thứ tự tìm ra hầu hết sự cố nhanh nhất: loại gói, dịch vụ, cổng, tường lửa, chuyển tiếp, cấu hình client, và việc chặn trên mạng ở giữa.

Kiểm tra lần cuối: 2026-11-13 · WireGuard, OpenVPN, Xray trên Ubuntu 24.04 / Debian 12

Phần lớn sự cố VPN quy về một vài nguyên nhân, và kiểm tra chúng theo đúng thứ tự sẽ giúp bạn đỡ mất cả buổi tối. Hãy chạy lệnh trên máy chủ, trừ khi bước đó nói khác. Ví dụ dùng WireGuard trên cổng mặc định 51820/udp; với OpenVPN hoặc Xray, hãy thay bằng tên dịch vụ và cổng của bạn.

Kiểm tra lần cuối 2026-11-13.

1. Máy chủ có dùng gói có IPv4 riêng không?

Client VPN kết nối vào máy chủ của bạn từ bên ngoài. Gói NAT chỉ cho một cổng đi vào từ bên ngoài, đó là cổng SSH cá nhân của bạn, nên không VPN nào chạy được trên đó. Nếu bảng điều khiển hiển thị địa chỉ kèm cổng dạng 20xxx, bạn đang dùng NAT. Chuyển sang IPv4 riêng vẫn giữ nguyên dữ liệu và không cần cài lại; xem Đổi địa chỉ IP.

2. Dịch vụ có đang chạy không?

systemctl status wg-quick@wg0
journalctl -u wg-quick@wg0 -n 30 --no-pager

Với OpenVPN, unit thường là openvpn-server@server; với Xray là xray. Dịch vụ không khởi động được gần như luôn ghi lý do ở mấy dòng cuối của log: gõ sai cấu hình, thiếu file khóa, cổng đã bị dùng.

3. Nó có lắng nghe trên cổng bạn mong đợi không?

ss -ulpn | grep 51820    # UDP: WireGuard, OpenVPN over UDP
ss -tlpn | grep 443      # TCP: Xray / VLESS, OpenVPN over TCP

Không có kết quả nghĩa là dịch vụ không lắng nghe ở đó, dù cấu hình ghi gì đi nữa. Hãy so cổng này với cổng trong client.

4. Tường lửa có cho qua không?

ufw status verbose

Nếu tường lửa đang bật mà cổng của bạn không có trong danh sách, hãy mở nó:

ufw allow 51820/udp

Chú ý giao thức: WireGuard cần UDP, và quy tắc 51820/tcp chẳng giúp gì cho nó. Hãy giữ nguyên quy tắc SSH trước khi bật hoặc nạp lại tường lửa, nếu không bạn sẽ tự khóa mình ở ngoài. Nếu vẫn xảy ra, console trên trình duyệt trong bảng điều khiển sẽ đưa bạn vào lại.

5. Client có thực sự tới được máy chủ không?

Với WireGuard, handshake sẽ cho bạn biết:

wg show

latest handshake: N seconds ago ở một peer nghĩa là client đã tới máy chủ và khóa khớp nhau. Hoàn toàn không có dòng handshake nghĩa là nó chưa bao giờ tới. Khi đó hãy kiểm tra theo thứ tự: IP và cổng endpoint trong cấu hình client, tường lửa ở bước 4, và khóa công khai của client có nằm trong khối [Peer] trên máy chủ không (và ngược lại).

6. Kết nối được nhưng không mở được gì?

Đường hầm chạy, nhưng máy chủ không đẩy lưu lượng ra Internet. Kiểm tra chuyển tiếp:

sysctl net.ipv4.ip_forward

Kết quả phải là 1. Nếu không, hãy bật vĩnh viễn:

echo 'net.ipv4.ip_forward=1' > /etc/sysctl.d/99-vpn.conf
sysctl --system

Sau đó kiểm tra quy tắc NAT. Trong cấu hình WireGuard, đó là dòng PostUp có MASQUERADE, và tên card mạng trong đó phải là tên thật của card mạng trên máy chủ:

ip -br addr

Nếu dòng đó ghi -o eth0 mà card mạng của bạn tên khác, hãy sửa cấu hình rồi khởi động lại dịch vụ.

7. Thử từ một mạng khác

Kết nối bằng dữ liệu di động thay vì Wi-Fi ở nhà, hoặc nhờ ai đó ở nước khác thử. Nếu ở đó VPN chạy nhưng từ mạng quen thuộc của bạn thì không, máy chủ vẫn ổn và có thứ gì đó ở giữa đang chặn kết nối.

8. Vẫn chưa được?

Hãy mở ticket và ghi rõ bạn đã kiểm tra những gì: kết quả các bước 2–5 và tên client VPN bạn dùng. Có những thông tin đó, thường chúng tôi có thể chỉ ra chỗ hỏng ngay trong lần trả lời đầu tiên.

Trang liên quan

Câu hỏi thường gặp

VPN có chạy được trên gói NAT không?

Không. Client VPN kết nối vào máy chủ qua cổng riêng của nó, còn gói NAT chỉ cho cổng SSH cá nhân của bạn đi vào từ bên ngoài. Hãy dùng gói có IPv4 riêng; với VPN cá nhân, Nano-IP là đủ.

WireGuard không hiện handshake. Như vậy nghĩa là gì?

Gói tin của client không nhận được phản hồi từ máy chủ. Theo khả năng: cổng UDP bị đóng trên tường lửa, địa chỉ hoặc cổng endpoint trong client bị sai, hoặc khóa không khớp.

Hôm qua vẫn chạy, hôm nay thì không, mà tôi không đổi gì cả.

Nếu VPN vẫn kết nối được bằng dữ liệu di động hoặc từ nước khác, thì mạng ở giữa đang chặn nó. Một số quốc gia nhận diện và chặn WireGuard và OpenVPN; ở đó VLESS + Reality trụ tốt hơn.

VPN kết nối được nhưng không mở được trang nào.

Đường hầm đã lên nhưng lưu lượng không được chuyển ra ngoài. Kiểm tra IP forwarding đã bật chưa và quy tắc NAT (masquerade) có ghi đúng tên card mạng thật của máy chủ không.

Bình luận

Chưa có bình luận nào. Hãy là người đầu tiên.

Để lại bình luận

Bình luận được kiểm duyệt trước khi hiển thị.