So for the past few weeks (at least that’s when I first noticed it) the WAN will randomly drop then come back. Most of the time this isn’t an issue because it happens so fast but when I’m playing a game or connected to a VPN I’ll get booted. I’ve done a little digging but I’m stuck at this point and I’m not sure how to troubleshoot further.
The log below is always the same every time it happens. The pingcheck was my attempt to get the VPN to reconnect automatically be restarting the Wireguard interface.
If anyone could point me in a direction I’d appreciate it.
Mon Aug 25 08:29:04 2025 daemon.notice netifd: Network device 'eth0' link is down Mon Aug 25 08:29:04 2025 daemon.notice netifd: Interface 'wan' has link connectivity loss Mon Aug 25 08:29:04 2025 kern.info kernel: [34540.236387] igb 0000:01:00.0 eth0: igb: eth0 NIC Link is Down Mon Aug 25 08:29:04 2025 daemon.notice netifd: Interface 'wan6' has link connectivity loss Mon Aug 25 08:29:04 2025 daemon.notice netifd: wan (3005): udhcpc: received SIGTERM Mon Aug 25 08:29:04 2025 daemon.notice netifd: wan (3005): udhcpc: unicasting a release of 47.14.215.18 to 71.88.17.1 Mon Aug 25 08:29:04 2025 daemon.notice netifd: wan (3005): udhcpc: sending release Mon Aug 25 08:29:04 2025 daemon.notice netifd: wan (3005): udhcpc: entering released state Mon Aug 25 08:29:04 2025 daemon.notice netifd: wan6 (3004): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "wan6" } (Permission denied) Mon Aug 25 08:29:04 2025 daemon.notice netifd: wan (3005): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "wan" } (Permission denied) Mon Aug 25 08:29:04 2025 daemon.notice netifd: Interface 'wan' is now down Mon Aug 25 08:29:04 2025 daemon.notice pingcheck[2526]: Scheduling 'offline' scripts for 'wan' Mon Aug 25 08:29:04 2025 daemon.notice pingcheck[4521]: Running 'offline' scripts for 'wan' Mon Aug 25 08:29:05 2025 daemon.notice netifd: Interface 'wan6' is now down Mon Aug 25 08:29:05 2025 daemon.info dnsmasq[1]: read /etc/hosts - 12 names Mon Aug 25 08:29:05 2025 daemon.info dnsmasq[1]: read /tmp/hosts/dhcp.cfg01411c - 4 names Mon Aug 25 08:29:05 2025 daemon.info dnsmasq[1]: read /tmp/hosts/odhcpd - 2 names Mon Aug 25 08:29:05 2025 daemon.info dnsmasq-dhcp[1]: read /etc/ethers - 0 addresses Mon Aug 25 08:29:06 2025 daemon.warn odhcpd[1878]: No default route present, overriding ra_lifetime! Mon Aug 25 08:29:07 2025 kern.info kernel: [34543.046932] igb 0000:01:00.0 eth0: igb: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX Mon Aug 25 08:29:08 2025 daemon.notice netifd: Network device 'eth0' link is up Mon Aug 25 08:29:08 2025 daemon.notice netifd: Interface 'wan' has link connectivity Mon Aug 25 08:29:08 2025 daemon.notice netifd: Interface 'wan' is setting up now Mon Aug 25 08:29:08 2025 daemon.notice netifd: Interface 'wan6' has link connectivity Mon Aug 25 08:29:08 2025 daemon.notice netifd: Interface 'wan6' is setting up now Mon Aug 25 08:29:08 2025 daemon.notice netifd: wan (4642): udhcpc: started, v1.36.1 Mon Aug 25 08:29:08 2025 daemon.notice netifd: wan (4642): udhcpc: broadcasting discover Mon Aug 25 08:29:12 2025 daemon.notice netifd: wan (4642): udhcpc: broadcasting discover Mon Aug 25 08:29:12 2025 daemon.notice netifd: wan (4642): udhcpc: broadcasting select for 47.14.215.18, server 71.88.17.1 Mon Aug 25 08:29:12 2025 daemon.notice netifd: Interface 'wan6' is now up Mon Aug 25 08:29:12 2025 daemon.info dnsmasq[1]: read /etc/hosts - 12 names Mon Aug 25 08:29:12 2025 daemon.info dnsmasq[1]: read /tmp/hosts/dhcp.cfg01411c - 4 names Mon Aug 25 08:29:12 2025 daemon.info dnsmasq[1]: read /tmp/hosts/odhcpd - 4 names Mon Aug 25 08:29:12 2025 daemon.info dnsmasq-dhcp[1]: read /etc/ethers - 0 addresses Mon Aug 25 08:29:12 2025 user.notice firewall: Reloading firewall due to ifup of wan6 (eth0) Mon Aug 25 08:29:12 2025 daemon.notice netifd: wan (4642): udhcpc: lease of 47.14.215.18 obtained from 71.88.17.1, lease time 53670 Mon Aug 25 08:29:12 2025 daemon.notice netifd: Interface 'wan' is now up Mon Aug 25 08:29:12 2025 daemon.notice pingcheck[2526]: Scheduling 'online' scripts for 'wan' Mon Aug 25 08:29:12 2025 daemon.notice pingcheck[4714]: Running 'online' scripts for 'wan' Mon Aug 25 08:29:12 2025 user.notice firewall: Reloading firewall due to ifup of wan (eth0)
let's see some additional information about your device:
Please connect to your OpenWrt device using ssh and copy the output of the following commands and post it here using the "Preformatted text </> " button:
Remember to redact passwords, MAC addresses and any public IP addresses you may have:
ubus call system board
cat /etc/config/network
cat /etc/config/firewall
root@OpenWrt:~# ubus call system board
{
"kernel": "5.15.167",
"hostname": "OpenWrt",
"system": "Intel(R) Core(TM) i3-5005U CPU @ 2.00GHz",
"model": "INTEL Corporation QHSW02",
"board_name": "intel-corporation-qhsw02",
"rootfs_type": "ext4",
"release": {
"distribution": "OpenWrt",
"version": "23.05.5",
"revision": "r24106-10cc5fcd00",
"target": "x86/64",
"description": "OpenWrt 23.05.5 r24106-10cc5fcd00"
}
}
root@OpenWrt:~# cat /etc/config/network
config interface 'loopback'
option device 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
option ula_prefix 'fd78:38e1:31e8::/48'
config device
option name 'br-lan'
option type 'bridge'
list ports 'eth1'
list ports 'eth2'
list ports 'eth3'
config interface 'lan'
option device 'br-lan'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
option ip6assign '60'
config interface 'wan'
option device 'eth0'
option proto 'dhcp'
option peerdns '0'
config interface 'wan6'
option device 'eth0'
option proto 'dhcpv6'
option reqaddress 'try'
option reqprefix 'auto'
option peerdns '0'
config device
option name 'WGINTERFACE'
option mtu '1500'
option mtu6 '1500'
config interface 'WGINTERFACE'
option proto 'wireguard'
option private_key 'REDACTED'
list addresses '10.69.148.47/32'
list addresses 'fc00:bbbb:bbbb:bb01::6:942e/128'
option force_link '1'
option auto '0'
config wireguard_WGINTERFACE
option description 'Ashburn, VA, Tzulo 001'
option public_key 'UKNLCimke54RqRdj6UFyIuBO6nv2VVpDT3vM9N25VyI='
option route_allowed_ips '1'
option endpoint_host 'us-qas-wg-001.relays.mullvad.net'
list allowed_ips '0.0.0.0/0'
option endpoint_port '51820'
option disabled '1'
config wireguard_WGINTERFACE
option description 'Ashburn, VA, Tzulo 002'
option public_key 'UUCBSYnGq+zEDqA6Wyse3JXv8fZuqKEgavRZTnCXlBg='
option endpoint_host 'us-qas-wg-002.relays.mullvad.net'
list allowed_ips '0.0.0.0/0'
option route_allowed_ips '1'
option endpoint_port '51820'
option disabled '1'
config wireguard_WGINTERFACE
option description 'Ashburn, VA, Tzulo 003'
option public_key '0s0NdIzo+pq0OiHstZHqapYsdevGQGopQ5NM54g/9jo='
list allowed_ips '0.0.0.0/0'
option route_allowed_ips '1'
option endpoint_host 'us-qas-wg-003.relays.mullvad.net'
option endpoint_port '51820'
option disabled '1'
config wireguard_WGINTERFACE
option description 'Ashburn, VA, Tzulo 004'
option public_key 'TvqnL6VkJbz0KrjtHnUYWvA7zRt9ysI64LjTOx2vmm4='
list allowed_ips '0.0.0.0/0'
option route_allowed_ips '1'
option endpoint_host 'us-qas-wg-004.relays.mullvad.net'
option endpoint_port '51820'
option disabled '1'
config wireguard_WGINTERFACE
option description 'Boston, MA, HostRoyale 001'
option public_key 'CsysTnZ0HvyYRjsKMPx60JIgy777JhD0h9WpbHbV83o='
list allowed_ips '0.0.0.0/0'
option route_allowed_ips '1'
option endpoint_host 'us-bos-wg-001.relays.mullvad.net'
option endpoint_port '51820'
option disabled '1'
config wireguard_WGINTERFACE
option description 'Boston, MA, HostRoyale 002'
option public_key 'LLkA2XSBvfUeXgLdMKP+OTQeKhtGB03kKskJEwlzAE8='
list allowed_ips '0.0.0.0/0'
option route_allowed_ips '1'
option endpoint_host 'us-bos-wg-002.relays.mullvad.net'
option endpoint_port '51820'
option disabled '1'
config wireguard_WGINTERFACE
option description ' Boston, MA, DataPacket 101 '
option public_key 'oxJ2PIqrQOmS0uiyXvnxT64E1uZnjZDWPbP/+APToAE='
list allowed_ips '0.0.0.0/0'
option route_allowed_ips '1'
option endpoint_host 'us-bos-wg-101.relays.mullvad.net'
option endpoint_port '51820'
config wireguard_WGINTERFACE
option disabled '1'
option description 'Boston, MA DataPacket 102'
option public_key 'wcmmadJObux2/62ES+QbIO21BkU7p2I0s6n4WNZZgW0='
list allowed_ips '0.0.0.0/0'
option route_allowed_ips '1'
option endpoint_host 'us-bos-wg-102.relays.mullvad.net'
option endpoint_port '51820'
root@OpenWrt:~# cat /etc/config/firewall
config defaults
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option synflood_protect '1'
config zone
option name 'lan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
list network 'lan'
config zone
option name 'wan'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
list network 'wan'
list network 'wan6'
config rule
option name 'Allow-DHCP-Renew'
option src 'wan'
option proto 'udp'
option dest_port '68'
option target 'ACCEPT'
option family 'ipv4'
config rule
option name 'Allow-Ping'
option src 'wan'
option proto 'icmp'
option icmp_type 'echo-request'
option family 'ipv4'
option target 'ACCEPT'
config rule
option name 'Allow-IGMP'
option src 'wan'
option proto 'igmp'
option family 'ipv4'
option target 'ACCEPT'
config rule
option name 'Allow-DHCPv6'
option src 'wan'
option proto 'udp'
option dest_port '546'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-MLD'
option src 'wan'
option proto 'icmp'
option src_ip 'fe80::/10'
list icmp_type '130/0'
list icmp_type '131/0'
list icmp_type '132/0'
list icmp_type '143/0'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-ICMPv6-Input'
option src 'wan'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
list icmp_type 'router-solicitation'
list icmp_type 'neighbour-solicitation'
list icmp_type 'router-advertisement'
list icmp_type 'neighbour-advertisement'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-ICMPv6-Forward'
option src 'wan'
option dest '*'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-IPSec-ESP'
option src 'wan'
option dest 'lan'
option proto 'esp'
option target 'ACCEPT'
config rule
option name 'Allow-ISAKMP'
option src 'wan'
option dest 'lan'
option dest_port '500'
option proto 'udp'
option target 'ACCEPT'
config redirect
option dest 'lan'
option target 'DNAT'
option name 'DNS'
option src 'wan'
option src_dport '53'
option dest_ip '192.168.1.1'
option dest_port '53'
list proto 'tcp'
list proto 'udp'
option enabled '0'
config rule
option name 'DNS'
option src 'wan'
option dest 'lan'
list dest_ip '192.168.1.1'
option dest_port '53'
option target 'ACCEPT'
option enabled '0'
config redirect
option dest 'lan'
option target 'DNAT'
option name 'MotorTown'
list proto 'udp'
option src 'wan'
option src_dport '7777'
option dest_ip '192.168.1.4'
option dest_port '7777'
config rule
option name 'MotorTown'
option src 'wan'
option dest 'lan'
list dest_ip '192.168.1.4'
list dest_ip 'fd78:38e1:31e8::227'
option dest_port '7777'
option target 'ACCEPT'
list proto 'tcp'
list proto 'udp'
option enabled '0'
config redirect
option dest 'lan'
option target 'DNAT'
option name 'Steam Server'
option src 'wan'
option src_dport '27015'
option dest_ip '192.168.1.4'
option dest_port '27015'
config rule
option name 'Steam Server'
option src 'wan'
option dest 'lan'
list dest_ip '192.168.1.4'
list dest_ip 'fe80::385f:3dad:394d:9fa2'
option dest_port '27015'
option target 'ACCEPT'
list proto 'tcp'
list proto 'udp'
option enabled '0'
config redirect
option dest 'lan'
option target 'DNAT'
option name 'MetaTester'
list proto 'tcp'
option src 'wan'
option src_dport '2000-2008'
option dest_ip '192.168.1.4'
option dest_port '2000-2008'
config rule
option src 'wan'
option dest 'lan'
option name 'MetaTester'
list proto 'tcp'
option src_port '2000-2008'
list dest_ip '192.168.1.4'
option dest_port '2000-2008'
option target 'ACCEPT'
config zone
option name 'WGZONE'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
list network 'WGINTERFACE'
config forwarding
option src 'WGZONE'
option dest 'wan'
config forwarding
option src 'lan'
option dest 'wan'
Here you are. Just to note, everything related to wireguard is currently disabled and the reason I have multiple wireguard peers is to have the ability to quickly switch to another one should the one I’m using go down.
There is nothing in the config that would be expected to cause the problem you are experiencing.
I am curious about this log entry:
This looks a bit unusual in that we wouldn't expect command failed to show up like that.
But, one of the things that could certainly cause issues would be a failing/marginal cable, debris or bent pints in the ports, and/or an issue with the upstream ethernet connection (i.e. the modem/ONT/etc.).
Have you tried replacing the cable with a known good one? And to isolate a potential upstream hardware issue, you could always connect an unmanaged switch between the upstream and the OpenWrt router (the only connections on that switch would be to the upstream modem/ONT and the Openwrt eth0).
Is that a kind of subnotebook with an USB network dongle for the WAN side?
I have seen such behavior on Raspberry PIs with USB dongles and weak PSU, underpowered USB ports of laptops from the 2000era and USB3 ports of older Macbooks.
I appreciate the advice. I have some spare cables so I’ll try that. I don’t have any spare switches.
@psherman If I recall correctly upgrading OpenWRT on this device is a little tricky so I’ll have to look a little deeper into that process.
@pico the device is one of those barebones network devices you find on amazon that comes with nothing installed. Just a mini motherboard, an ssd, a wifi card, and a 4-port nic. I couldn’t tell you the actual make and model since the thing got delisted before I even received it in the mail and when I did receive it, it was the only thing in the box.
@egc I did look at your post before submitting mine however since my issue happens during both high and low traffic I assummed EEE might not be my issue.
Again thank you everyone, I will post updates as I find time to troubleshoot.