<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Hi All<br></div><div><br></div><div>A novice user here and looking for some pointers on how i could fix this issue.</div><div><br></div><div>I had been successfully using wireguard to get access to my local network. Recently i started looking into a VPN service that i could connect to my router. So i started playing with mullvad vpn and setup my router to have a vpn client so all my network traffic goes via vpn. I followed the following guide <a href="https://mullvad.net/en/guides/asus-merlin-and-mullvad-vpn/">https://mullvad.net/en/guides/asus-merlin-and-mullvad-vpn/</a></div><div><br></div><div>Ever since i enabled this i am not able to connect to wireguard from outside my home network. What is interesting is that when i check the status of the connections on the server the endpoint entry has the correct ip but the latest handshake time does not get updated and i no longer have access to my internal network.<br></div><div><br></div><div>peer: xxxx<br>  endpoint: 73.xx.xx.xx:1543<br>  allowed ips: 192.168.100.x/32<br>  latest handshake: 21 minutes, 24 seconds ago<br>  transfer: 1.24 MiB received, 5.46 MiB sent</div><div><br></div><div>Logs from the wireguard client on my android phone have the following:</div><div><br></div><div>03-06 00:23:51.800 28912 17051 D WireGuard/GoBackend/wg0: peer(vDK2…wCDs) - Starting...<br>03-06 00:23:51.800 28912 28935 D WireGuard/GoBackend/wg0: peer(vDK2…wCDs) - Routine: sequential receiver - started<br>03-06 00:23:51.800 28912 28935 D WireGuard/GoBackend/wg0: peer(vDK2…wCDs) - Routine: nonce worker - started<br>03-06 00:23:51.800 28912 28935 D WireGuard/GoBackend/wg0: peer(vDK2…wCDs) - Routine: sequential sender - started<br>03-06 00:23:51.800 28912 17051 I WireGuard/GoBackend/wg0: Device started<br>03-06 00:23:52.551 28912 10784 D WireGuard/GoBackend/wg0: peer(vDK2…wCDs) - Sending handshake initiation<br>03-06 00:23:52.567 28912 10784 D WireGuard/GoBackend/wg0: peer(vDK2…wCDs) - Awaiting keypair<br>03-06 00:23:57.557 28912 15089 D WireGuard/GoBackend/wg0: peer(vDK2…wCDs) - Sending handshake initiation<br>03-06 00:24:02.561 28912 10784 D WireGuard/GoBackend/wg0: peer(vDK2…wCDs) - Handshake did not complete after 5 seconds, retrying (try 2)<br>03-06 00:24:02.561 28912 10784 D WireGuard/GoBackend/wg0: peer(vDK2…wCDs) - Sending handshake initiation</div><div><br></div><div><br></div><div>I can connect to my network using ISP or VPN IP. The above issue is what i am running into when i use the isp ip address to talk to wireguard.</div><div><br></div><div>I tried using VPN IP to talk to wireguard but i could not get port forwarding to work.  I have confirmed port forwarding via mullvad is working as i am using it for other services. As per the mullvad guide i had added the following rule to forward the port to wireguard.<br></div><div><br></div><div>#iptables -t nat -A PREROUTING -i tun+ -p udp --dport 9934 -j DNAT --to-destination <a href="http://192.168.1.63:54930">192.168.1.63:54930</a></div><div><br></div><div><br></div><div>So i am not sure if there are additional forwarding rules required and/or policy rules for the vpn client to get this setup working.<br></div><div><br></div>On my server my conf is<div><br></div><div>[Interface]<br>Address = <a href="http://192.168.100.1/32">192.168.100.1/32</a><br>PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE<br>PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE<br>ListenPort = 54930<br>PrivateKey = xxxxx<br><br>[Peer]<br>PublicKey = xxxx<br>AllowedIPs = <a href="http://192.168.100.2/32">192.168.100.2/32</a></div><div><br></div><div><br></div><div>on my client my config is</div><div><br></div><div>[Interface]<br>Address = 192.168.100.2<br>PrivateKey = xxxxx<br>ListenPort = 21841<br>DNS = 192.168.1.63<br><br>[Peer]<br>PublicKey = xxxx<br>Endpoint = ddns:xxx</div><div>AllowedIPs = <a href="http://192.168.1.0/24">192.168.1.0/24</a><br><br># This is for if you're behind a NAT and<br># want the connection to be kept alive.<br>PersistentKeepalive = 25<br></div><div><br></div></div><div dir="ltr"><div><div><div dir="ltr" class="gmail_signature"><div dir="ltr"><div>--</div>Arpit</div></div></div></div></div></div></div></div></div></div></div>