GL.iNet Flint 3 - A Short Review

I've been using OPNsense as my main router for the last few years. It is overkill for my home use-case, but it was really fun learning enterprise software! Now that WiFi 7 devices are more readily available, I though it would be nice to upgrade to a WiFi 7 access point and use this opportunity to also change my home networking setup.
Why Flint 3?
In the quest of finding a new WLAN router, I wanted to keep the spirit of using an open source software like my old router. The most prevalent software for WLAN router is OpenWRT. It can be flashed to many routers like Asus or TP-Link, replacing their original OS. However, WiFi 7 are still relatively new and OpenWRT support are still not there yet. In the latest release of OpenWRT, they stated that WiFi 7 is still in initial support.
After looking for a new WLAN router for a few weeks without lucks, I saw that GL.iNet is releasing a new router with WiFI 7 that I can pre-order soon. It fulfills my need perfectly. It has WiFi 7 and its 4 LAN ports are all 2.5Gbit. Most importantly, it also comes with (custom) OpenWRT. Their OpenWRT has an GL admin panel, which is supposedly more user friendly. It is also priced really competitively during pre-order, around €130 if you're fast enough or if you're slow like me then it was just below €150 with shipping.
Hardware
The build quality is solid. Compared to my old Asus AX82 router, I would say both are built equally good. Unlike my old Asus router though, the antennas of Flint 3 cannot be twisted sideways. It can only be opened from its closed position in one direction. The antennas are also not removable.
The power supply is rated up to 48W (12V, 4A), pretty high compared to WiFi 6 routers. I think WiFi 7 routers in general use more power than WiFi 6. The Flint 3 has internal fan to cool things down, if its too hot. The default temperature at which the fan starts is 75°C, but can be adjusted in the range of 70°C - 90°C. My unit is silent though, since the CPU in my Flint 3 never exceeds 70°C in an room with 20-22°C ambient temperature.

Software
GL Admin Panel
In an standard OpenWRT router, the interface (frontend/admin panel) is called LuCI. It is quite advanced compared to consumer router like Asus or TP-Link and I would describe it as not user-friendly. The GL.iNet team solution to this was to develop their own interface, which they called GL admin panel. The user-friendliness of GL admin panel is similar to any other consumer routers. It is really easy to use and configure. However, the GL admin panel does not expose all of OpenWRT capabilities.
One example for this was the first time I tried to setup the DHCP server. In routers like OPNsense you could set an NTP server in the DHCP configuration easily. On the other hand, GL admin panel doesn't allow me to set an NTP server. Luckily, the LuCI interface is still available under System -> Advanced Settings -> Go to LuCI
.


GL Admin Panel and LuCI in Flint 3
Built-in Adguard Home
If you're interested in networking, then of course you've heard of DNS blocking with software like Pi-Hole or AdGuard Home (AGH). In Flint 3, you could install Adguard Home with just one click in the GL admin panel. The default settings will let all connected clients use the default DNS server (dnsmasq), which then uses AGH as an upstream DNS server. However, you could also choose to bypass the dnsmasq and let all clients to directly use AGH. In the GL admin panel, there is also an option to redirect all unencrypted DNS request (port 53) to the Flint 3 itself.
Speed Comparison
I really wanted to show case the WiFi speed of Flint 3, but I don't have any WiFi 7 client device now. Does that mean my upgrade to Flint 3 is useless? Nope, even using 6Ghz channel already improved my speed so much.
This is not very scientific comparison, but in my PC, which is equipped with an AX210 WiFi card, I can reach speed of around 600-650 Mbps in iperf3 with my original Asus AX82 router (5Ghz Band, 80Mhz width). With the new Flint 3 router, I can reach around 900-950 Mbps in 6Ghz band with 160Mhz width. This new speed can fully saturates a gigabit LAN connection. Although, I can't wait to have a WiFi 7 card to replace my AX210, so that I can get even more speed, since my NAS is capable of 2.5 Gbps.
Advanced Customization
Installing Chrony: an NTP (Network Time Protocol) server
I have a Proxmox machine and it runs many VMs. I think it's a waste of resource to have all of the VMs connect to an external NTP server. So I prefer to run my own NTP server with chrony. The easiest way to distribute the IP of my chrony instance automatically to all VMs and my own local devices is to set the IP in the DHCP server. Currently only Linux machines will use the NTP server, but most of my VMs are Linux anyway.
Installing a new package is pretty easy. Both GL admin panel and LuCI allows us to search and install packages. Before installing chrony, I needed to turn disable the default NTP client first.


Then, to install chrony, I just need to search and install chrony-nts
package. Then, to edit the chrony configuration, I first connect to the Flint 3 via SSH. There I edited the file /etc/chrony/chrony.conf
like the following.
# Comment out the default Flint 3 configuration
#confdir /var/etc/chrony.d
...
# Add my own configurations
allow 192.168.0.0/16
allow 10.0.0.0/8
server ptbtime1.ptb.de iburst nts
server ntp0.fau.de iburst nts
# other NTP server below...
Adding NTP Server in DHCP Options via LuCI
Now that I have an NTP server, I need to inform all local clients connected to Flint 3 to use this new time server. I can go to individual machine (Linux/Windows/macOS) and edit the configuration manually, but this is too time consuming! Luckily, DHCP can also relay this information from the router, although currently Windows and macOS doesn't respect this option.
This is my first time using OpenWRT, but how hard can setting up DHCP server can be? I just need to search for the DHCP options in LuCI and then change something there... right? So I clicked Network -> DHCP and DNS
and there I check all tabs and configuration but found nothing about DHCP options. After a lengthy google session, I found that I needed to first go to Network -> Interfaces -> Edit on LAN Interface -> DHCP Server -> Advanced Settings
. There, I could fill the DHCP options with option:ntp-server,10.10.1.1
. Now all of my local Linux machines use a local NTP server.

What doesn't work: IP Set
In my old OPNsense router, I have a whitelist of IPs that are allowed to connect to an internal VM. Of course this is also easy to do with OpenWRT, we just need to use an IP set and then select them in the port forwarding rules. In my test, having a list of IPs works, but somehow not with a list of subnets. I've a created a ticket on the GL.iNet forum with detailed information. Hopefully, they can patch this quickly.
Conclusion
I found that the Flint 3 is a very solid router with a very competitive price (during pre-order it was around €130 for super-early bird and €150 for early-bird). It runs OpenWRT, which feels great if you're already familiar with Linux. The Flint 3 also supports the new WiFi 7 in three different bands. I could also install familiar software like unbound, chrony, Adguard Home and even htop. It ticks all my needs and I'm very happy with my purchase!
If you have any questions about Flint 3, comment down below and I will try to answer them!
Member discussion