I have a GL-AR750 with latest firmware 3.216.
I have a self-hosted WireGuard server (PiVPN) accessible with port forwarding and a dynamic DNS. It works fine from phones, so the basics are operational.
However, when I enter a config into the GL-AR750 it hangs trying to connect. The red Abort button is displayed permanently until it is clicked to abort. WAN traffic is blocked while it is trying to connect. No error messages are displayed.
The VPN server is reachable by pinging the dynamic DNS address (both from the computer attached to the router, and from an SSH session in the router (root@GL-AR750:)
Here is the redacted config file generated by pivpn:
[Interface]
PrivateKey = U***********
Address = 10.246.104.4/24,fd11:5ee:bad:c0de::af6:6804/64
DNS = 8.8.8.8, 8.8.4.4
[Peer]
PublicKey = *************=
PresharedKey = /*****************=
Endpoint = my.dnsplace.org:51820
AllowedIPs = 0.0.0.0/0, ::0/0
I was able to SSH into the router, and look at the log using logread. There are many errors and warnings, but it is unclear what the root cause is.
Sat Aug 9 17:20:23 2025 user.notice wireguard: wireguard client start
Sat Aug 9 17:20:24 2025 daemon.info dnsmasq[10063]: exiting on receipt of SIGTERM
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: started, version 2.80 cachesize 150
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: DNS service limited to local subnets
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: compile time options: IPv6 GNU-getopt no-DBus no-i18n no-IDN DHCP DHCPv6 no-L ua TFTP conntrack ipset auth nettlehash DNSSEC no-ID loop-detect inotify dumpfile
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq-dhcp[10708]: DHCP, IP range 192.168.11.100 -- 192.168.11.249, lease time 12h
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain test
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain onion
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain localhost
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain local
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain invalid
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain bind
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain lan
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: reading /tmp/resolv.conf.vpn
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain test
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain onion
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain localhost
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain local
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain invalid
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain bind
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using local addresses only for domain lan
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: using nameserver 8.8.4.4#53
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: read /etc/hosts - 4 addresses
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq[10708]: read /tmp/hosts/dhcp.cfg01411c - 2 addresses
Sat Aug 9 17:20:25 2025 daemon.info dnsmasq-dhcp[10708]: read /etc/ethers - 0 addresses
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: Section @zone[1] (wan) cannot resolve device of network 'wan6'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: Section @zone[1] (wan) cannot resolve device of network 'wwan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: Option 'wireguard'.masq6 is unknown
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: Option 'sambasharewan'.dest_proto is unknown
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: Section 'sambasharewan' does not specify a protocol, assuming TCP+U DP
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: Option 'sambasharelan'.dest_proto is unknown
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: Section 'sambasharelan' does not specify a protocol, assuming TCP+U DP
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Clearing IPv4 filter table
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Clearing IPv4 nat table
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Clearing IPv4 mangle table
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Clearing IPv4 raw table
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Populating IPv4 filter table
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'input_wireguard_rule'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'output_wireguard_rule'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'forwarding_wireguard_rule '
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-DHCP-Renew'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-Ping'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-IGMP'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-IPSec-ESP'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-ISAKMP'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Rule 'guestzone_DHCP'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Rule 'guestzone_DNS'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Rule #11
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Rule #12
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-Wireguard'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Forward 'lan' -> 'wan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Forward 'guestzone' -> 'wan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Forward 'wireguard' -> 'wan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Forward 'wireguard' -> 'lan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Forward 'lan' -> 'wireguard'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Forward 'guestzone' -> 'wireguard'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Forward 'wireguard' -> 'guestzone'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'lan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'wan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'guestzone'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'wireguard'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Populating IPv4 nat table
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'prerouting_wireguard_rule '
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'postrouting_wireguard_rul e'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'lan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'wan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'guestzone'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'wireguard'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Populating IPv4 mangle table
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'lan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'wan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'guestzone'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'wireguard'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Populating IPv4 raw table
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'lan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: - Using automatic conntrack helper attachment
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'wan'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'guestzone'
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: - Using automatic conntrack helper attachment
Sat Aug 9 17:20:26 2025 daemon.err gl_monitor[3459]: * Zone 'wireguard'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Clearing IPv6 filter table
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Clearing IPv6 nat table
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Clearing IPv6 mangle table
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Populating IPv6 filter table
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'input_wireguard_rule'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'output_wireguard_rule'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'forwarding_wireguard_rule '
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-DHCPv6'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-MLD'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-ICMPv6-Input'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-ICMPv6-Forward'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-IPSec-ESP'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Rule 'Allow-ISAKMP'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Rule 'guestzone_DHCP'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Rule 'guestzone_DNS'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Rule #11
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Rule #12
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Forward 'lan' -> 'wan'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Forward 'guestzone' -> 'wan'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Forward 'wireguard' -> 'wan'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Forward 'wireguard' -> 'lan'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Forward 'lan' -> 'wireguard'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Forward 'guestzone' -> 'wireguard'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Forward 'wireguard' -> 'guestzone'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'lan'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'wan'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'guestzone'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'wireguard'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Populating IPv6 nat table
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'prerouting_lan_rule'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'postrouting_lan_rule'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'prerouting_wan_rule'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'postrouting_wan_rule'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'prerouting_guestzone_rule '
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'postrouting_guestzone_rul e'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'prerouting_wireguard_rule '
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'postrouting_wireguard_rul e'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'prerouting_rule'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: Warning: fw3_ipt_rule_append(): Can't find target 'postrouting_rule'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'lan'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'wan'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'guestzone'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'wireguard'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Populating IPv6 mangle table
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'lan'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'wan'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'guestzone'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Zone 'wireguard'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Set tcp_ecn to off
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Set tcp_syncookies to on
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Set tcp_window_scaling to on
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Running script '/etc/firewall.user'
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: uci: Entry not found
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: uci: Entry not found
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: uci: Entry not found
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: iptables: No chain/target/match by that name.
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: iptables: No chain/target/match by that name.
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: ipset v7.3: The set with the given name does not exist
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: iptables: No chain/target/match by that name.
Sat Aug 9 17:20:27 2025 daemon.err gl_monitor[3459]: * Running script '/usr/bin/glfw.sh'
Sat Aug 9 17:20:28 2025 daemon.err gl_monitor[3459]: * Running script '/var/etc/gls2s.include'
Sat Aug 9 17:20:28 2025 daemon.err gl_monitor[3459]: ! Skipping due to path error: No such file or directory
Sat Aug 9 17:20:28 2025 daemon.err gl_monitor[3459]: * Running script '/usr/sbin/glqos.sh'
Sat Aug 9 17:20:29 2025 daemon.err gl_monitor[3459]: ifconfig: br-guest: error fetching interface information: Device not found
Sat Aug 9 17:20:30 2025 daemon.err gl_monitor[3459]: /sbin/uci: Invalid argument
Sat Aug 9 17:20:30 2025 daemon.err gl_monitor[3459]: /sbin/uci: Invalid argument
Sat Aug 9 17:20:31 2025 user.info mwan3rtmon[3048]: Detect rtchange event.
Sat Aug 9 17:20:32 2025 daemon.err gl_monitor[3459]: uci: Entry not found
Sat Aug 9 17:20:33 2025 user.notice wiregaurd: client start completed, del glwg.lock
Sat Aug 9 17:20:33 2025 daemon.err gl_monitor[3459]: uci: Entry not found
Sat Aug 9 17:21:45 2025 user.notice wireguard: wireguard client stop
I reviewed these other similar posts, but did not find a solution:
GL-AR150, GL-AR750: WireGuard Client cannot connect to a GLiNet WireGuard server Routers
GL-AR750S Wireguard client cannot connect to external wireguard server Routers
GL.iNet GL-AR750s-EXT Wireguard VPN & Clients section Routers
One suggested providing the output of cat /etc/config/wireguard
The file exists, and contains the information from the config file shown in redacted form above.
