Hi. I'm using Xiaomi Mi Router 3G v1 that runs 24.10.5, WAN uplink is 100 Mbit from ISP, only NAT IPv4 address is provided.
Sometimes I notice that random network requests fail, for example:
- web page suddenly stops loading, file fails to download in browser
- updates from iOS AppStore can't install
- apps fail to make network requests
In all cases a simple re-attempt (but could be on second or third try) succeeds.
This can happen to both wired and wireless clients, I mostly use macOS and iOS devices and noticed the issue there. Noticed the issue right on the day 1 since I started using the router.
At first I thought that the router is buggy somehow, so I've temporarily switched to the good old ASUS WL-500W and hooked 1 wired and wireless client to it and haven't seen these issues.
My another suspect is my home server seeding torrents, it's connected by wire to the router. I've recently stopped seeding and so far not seeing any network issues on router clients. But it's not seeding like 10 MB/s all the time, and IIRC when I looked at the speed at the moment of failure it wasn't that high.
A few weeks ago I changed ISP. The previous one was providing me fiber connection and also a router (not running OpenWrt) that received the fiber as WAN, uplink was 200-300 Mbit and I haven't seen any kind of issues described above. The router was Sercomm v4, it has similar CPU as my Xiaomi if I understood correctly (and also 256 RAM), so hardware doesn't seem to be an issue.
Router's RAM usage is always below 50%, CPU also doesn't go higher than 1.0 normally, actually it's usually below 0.50. When seeding torrents number of connections is around 4k according to the router's web gui.
Not quite sure how to troubleshoot / fix this or reproduce reliably, hope for the community help.
detailed config
# ubus call system board
{
"kernel": "6.6.119",
"hostname": "OpenWrt",
"system": "MediaTek MT7621 ver:1 eco:3",
"model": "Xiaomi Mi Router 3G",
"board_name": "xiaomi,mi-router-3g",
"rootfs_type": "squashfs",
"release": {
"distribution": "OpenWrt",
"version": "24.10.5",
"revision": "r29087-d9c5716d1d",
"target": "ramips/mt7621",
"description": "OpenWrt 24.10.5 r29087-d9c5716d1d",
"builddate": "1766005702"
}
}
# 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 'fd24:802c:c937::/48'
option packet_steering '1'
config device
option name 'br-lan'
option type 'bridge'
list ports 'lan1'
list ports 'lan2'
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 'wan'
option proto 'dhcp'
option metric '1024'
config interface 'wan6'
option device 'wan'
option proto 'dhcpv6'
option reqaddress 'try'
option reqprefix 'auto'
option norelease '1'
# cat /etc/config/firewall
config defaults
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option synflood_protect '1'
config zone
option name 'lan'
list network 'lan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
config zone
option name 'wan'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
option masq6 '1'
list network 'wan'
list network 'wan6'
config forwarding
option src 'lan'
option dest 'wan'
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 'torrent mini'
option src 'wan'
option src_dport '49743'
option dest_ip '192.168.1.109'
option dest_port '49743'
config redirect
option dest 'lan'
option target 'DNAT'
option name 'torrent debsrv'
option src 'wan'
option src_dport '14051'
option dest_ip '192.168.1.100'
option dest_port '14051'

