Trường hợp nhà mình đang NAT 2 lần: tức là mô hình Internet -> Router nhà mạng -> Router Cân bằng tải -> Server VPN. Khi Client kết nối được với Wireguard, đã có traffic (byte send và byte received) nhưng trên Client không ra Internet được.
| Tham gia kênh Telegram của AnonyViet 👉 Link 👈 |

Các Cách Fix lỗi Wireguard Client không ra được Internet khi Nat 2 lần như sau:
Trên server Wireguard thực hiện lệnh: ip -o -4 route show to default
Kiểm tra kết quả xem đang sử dụng card mạng gì? trường hợp của mình sẽ ra kết quả:
default via 192.168.1.1 dev wlan0 proto dhcp src 192.168.1.32 metric 600
Vậy là đang dùng card wlan0. Nếu Server của bạn là Card khác thì ghi nhớ tên Card
Tiếp đến nhập các lệnh sau (thay wlan0 thành card của bạn)
# Thêm NAT cho subnet WireGuard sudo iptables -t nat -A POSTROUTING -s 10.113.141.0/24 -o wlan0 -j MASQUERADE # Cho phép traffic từ wg0 đi ra LAN/Internet sudo iptables -A FORWARD -i wg0 -o wlan0 -j ACCEPT # Cho phép traffic ngược lại (gói trả về) đi vào wg0 sudo iptables -A FORWARD -i wlan0 -o wg0 -m state --state RELATED,ESTABLISHED -j ACCEPT
10.113.141.0/24 là dãy IP của Wireguard cấp cho Client, hãy xem thực tế trên máy của bạn là dãy bao nhiêu thì điền vào cho đúng. Mở file config trong thư mục /home/USER/configs/ ra xem dòng Address = để biết dãy IP bao nhiêu.
Tuy nhiên cách này khi reboot server sẽ bị mất cấu hình, để lưu cấu hình bạn thực hiện lệnh như sau:
sudo apt install iptables-persistent -y # Thêm NAT cho subnet WireGuard sudo iptables -t nat -A POSTROUTING -s 10.113.141.0/24 -o wlan0 -j MASQUERADE # Cho phép traffic từ wg0 đi ra LAN/Internet sudo iptables -A FORWARD -i wg0 -o wlan0 -j ACCEPT # Cho phép traffic ngược lại (gói trả về) đi vào wg0 sudo iptables -A FORWARD -i wlan0 -o wg0 -m state --state RELATED,ESTABLISHED -j ACCEPT sudo netfilter-persistent save
Một chút lưu ý khi làm Lab đặc biệt là ở nhà thường NAT 2 lần khi qua Router nhà mạng -> Router Wifi -> PC, anh em cần chú ý khi thực hiện














