Hey there,
I have running OpenWRT on my FritzBox 7530. Everything works as expected, but performance could be a bit better. I've read multiple times in various forums that overclocking could help to reduce ping and get better/stable bandwith.
I know, that oc will influence temps and stability if you do too much. But i want to test and i'll mount a Heatsink with a small fan on the cpu of the router.
So far so good, but i couldn't find a guide how to do on a FritzBox 7530. Maybe via uboot?
Please post the report (LINK) from https://www.waveform.com/tools/bufferbloat
It is typical to have 1-2ms latency over NAT, but you can increase NAT throughput 2-3x (or reduce CPU usage thereof when hitting the roof) using offload.
And collect some basics from your system as follows.
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:
root@OpenWrt:~# ubus call system board
{
"kernel": "5.15.162",
"hostname": "OpenWrt",
"system": "ARMv7 Processor rev 5 (v7l)",
"model": "AVM FRITZ!Box 7530",
"board_name": "avm,fritzbox-7530",
"rootfs_type": "squashfs",
"release": {
"distribution": "OpenWrt",
"version": "23.05.4",
"revision": "r24012-d8dd03c46f",
"target": "ipq40xx/generic",
"description": "OpenWrt 23.05.4 r24012-d8dd03c46f"
}
}
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
config atm-bridge 'atm'
option vpi '1'
option vci '32'
option encaps 'llc'
option payload 'bridged'
option nameprefix 'dsl'
config dsl 'dsl'
option annex 'j'
option tone 'b'
option ds_snr_offset '0'
config device
option name 'br-lan'
option type 'bridge'
list ports 'lan2'
list ports 'lan3'
list ports 'lan4'
option ipv6 '0'
option igmp_snooping '1'
config interface 'lan'
option device 'br-lan'
option proto 'static'
option ipaddr '192.168.178.1'
option netmask '255.255.255.0'
option delegate '0'
config device
option name 'dsl0'
option macaddr
config interface 'wan'
option proto 'dhcp'
option device 'lan1'
option peerdns '0'
option delegate '0'
list dns '9.9.9.9'
list dns '149.112.112.112'
list dns '1.1.1.1'
list dns '1.0.0.1'
config device
option name 'lan1'
root@OpenWrt:~# cat /etc/config/dhcp
config dnsmasq
option localise_queries '1'
option rebind_protection '1'
option rebind_localhost '1'
option local '/lan/'
option domain 'lan'
option expandhosts '1'
option cachesize '1000'
option authoritative '1'
option readethers '1'
option leasefile '/tmp/dhcp.leases'
option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
option localservice '1'
option ednspacket_max '1232'
config dhcp 'lan'
option interface 'lan'
option start '10'
option limit '150'
option leasetime '12h'
option dhcpv4 'server'
option netmask '255.255.255.0'
list dhcp_option '6, 9.9.9.9, 149.112.112.112'
config odhcpd 'odhcpd'
option maindhcp '0'
option leasefile '/tmp/hosts/odhcpd'
option leasetrigger '/usr/sbin/odhcpd-update'
option loglevel '4'
config host
option name 'MeshBuero'
list mac
option ip '192.168.178.xx
option leasetime 'infinite'
config host
list mac
option ip '192.168.178.xx
option leasetime 'infinite'
option name 'MeshBadezimmer'
config host
option name 'FabiLaptop'
list mac
option ip '192.168.178.xx
option leasetime 'infinite'
config host
option name 'DruckerHP'
list mac
option ip '192.168.178.xx
option leasetime 'infinite'
config host
option name 'iPhoneVonRamona'
list mac
option ip '192.168.178.30'
option leasetime 'infinite'
config host
list mac
option ip '192.168.178.xx
option leasetime 'infinite'
option name 'RamonaTabletA9'
config host
option name 'iPhoneFabi'
list mac
option ip '192.168.178.xx
option leasetime 'infinite'
config host
list mac
option ip '192.168.178.xx
option name 'BueroPC'
option leasetime 'infinite'
root@OpenWrt:~# cat /etc/config/firewall
config defaults
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
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 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
option mtu_fix '1'
list network 'wan'
option masq '1'
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'
Wireless is not activated, cause i've got a Mesh-System from Cudy running. One of those Beacons is connected via LAN.
I tried using Software flow offloading and Hardware flow offloading, but both didn't work properly. Ping went up to over 100ms instead of 40-50 (which is still too high for 5G IMHO) and bandwith went down to ~100Mbit/s instead of over 230Mbit/s. My ISP allows me to download with 300Mbit/s (sometimes i can reach those numbers). Upload with 30Mbit/s is almost constant, depends how much network traffic is at home.
Report without using Flow Offloading follows in a few minutes. Of course connected via LAN.
With 5G i meant the GSM from my ISP.
Cudy is connected in LAN Port 3.
But i did Speedtest and Bufferbloat-test with my PC connected via LAN Port 2.
LAN Ports 2-4 are in br-lan and lan1 is configured as WAN to get an IP from my outdoor unit with the SIM inside.
Your CPU is not particularily good for full SQM with cake etc so lets first try tuning what you got.
Leave offloading on, but lets decouple offloading from qdisc.
1/ create a bridge, call it br-lan , bring up empty bridge, MAC as shown on LAN1 - current WAN interface, txqueuelen 0 ip6 disabled. EDIT: Check checkbox to bring up empty bridge too
2/ save+apply
3/ add lan1-wan as a bridge member and change wan and wan6 backend to br-wan,
4/ save and apply and immediately restart wan interface
now offload lands in br-wan, but default fq_codel regulates wan upload.
OK, ignore wan6 part then. The changes stretch 2 tabs, and sometimes are not added in order, so wan interface (not device) needs to be explicitly re-configured.
similar configuration is used for double-wan devices like with optical and copper wan ports that are bridged and work no matter which you plug in.