Build for Netgear R7800

You are aware that adblock >= 2.0.0 doesn't require the IPv6 NAT modules for its operations anymore (just in case that's the only reason for you to include them)?

Yep. I installed that originally for adblock, but have not bothered to remove it although adblock is now nxdomain based. But I might remove it.

Might be that actually the firewall fw3 needs tweaks for nat6. Nat6 is rare, so fw3 may have overlooked the support for it.

Did you @enri actually notice negative behaviour or just those messages???
Or did the removal improve things for you?

I do not see negative behaviour. It is just for safety because it is firewall related, so ensure no warning is my primary objective, i.e. not sure about improvement

do not have another remote site with have ipv6 to test from external

My reading of this is that the firewall fw3 only defines & creates those prerouting/postrouting hooks for ipv4, and then later some other part of the firewall finds also the ipv6 NAT table (due to nat6 being installed) and tries to attach similar hook rules to it as for the ipv4 NAT table, but it fails due to the missing hooks.

The definition of the pre/postrouting rules for only ipv4 "family" can be seen from:;a=blob;f=zones.c;hb=HEAD#l26;a=blob;f=defaults.c;hb=HEAD#l25

IPv6 NAT being installed is so rare, that it seems to expose a bug in the firewall code.

But I do not think that it generates any security risk, as it does not open anything for the outside world.

Have you tried to compile with -mfloat-abi=hard in compiler options? It breaks with
arm-openwrt-linux-muslgnueabi-gcc: error: -mfloat-abi=soft and -mfloat-abi=hard may not be used together

Seems soft fp is set somewhere

I have not. I have thought that it is enough that there is fpu feature and the cpu subtype is neon-vfpv4

I've thought the same...
It seems to be set for kernel itself and I can't find the place where it is set

Hello hnyman,

I finally got the time to test your implementation of 802.11r on my router setup with 2x Netgear R7800.

I followed the guide on reddit to get all needed values and entered them in the forms, after applying 802.11r:

Sadly it didn't work. My 5GHz band is not coming up with enabled 802.11r, no matter what settings I use. I have this problem on both routers at the 5GHz band.
Disabling 802.11r afterwards doesn't help bringing the band up again, I also need to reboot them.

I tested 802.11r with version r3375, did anything change since then?

Not really. Only the LuCI support has been recently added. The same 80211r support in hostapd/wpad has been there for some time now.

I have been happily using 80211r in my routers now, so I guess your settings were not perfect. I don't think that your problem is router/build specific, so if you want help on the 80211r settings, you might open an own thread about that.

I don't seem to be able to receive multicast packets on the LAN interfaces although I can receive them on WiFi. I am asking here just in case there is something special about hnyman's build...

Thanks very much for the build! I am trying to set up my new R7800 as my main router between my lan subnet and my WiFi subnet. This is something that I currently have a WDR4900 running OpenWRT handling so much of the config can be copied over.

But avahi is not working properly. I first noticed it because the avahi reflector is not working, but even without that, basic avahi-daemon is not working correctly. It correctly sends out the multicast notification on the lan (so clients can resolve the router name for a while) but it does not seem to respond to any resolve requests from clients which do not have the name in their cache. I am assuming that the problem is that it is not receiving the multicasted lookup requests. This works fine for Wifi clients.

The debug messages from avahi-daemon are the same as on my WDR4900, which is working (although it runs a much older OpenWRT version, and a slightly older version of avahi). Could there be anything about your build (some config option in a relevant kernel module, or something) which is preventing this?

Is multicast reception from lan interfaces working for anyone else?

By the way, I have tried disabling the firewall completely. I have also tried disabling VLANs.

My build uses all default LEDE settings for network & firewall. There is nothing build-specific (except a few additional kernel modules like nat6 etc.), but no changes to kernel options or firewall defaults etc.

But some defaults may have changed in either Openwrt DD trunk before the LEDE fork and/or in LEDE later. There are some commits that have "multicast" in their message. You might check those out, if they are relevant for you:

You should not copy settings from old Openwrt, as some of the defaults e.g. regarding VLANs have changed.

Ps. are you moving from the ancient CC15.05 or the DD trunk?

Thanks for the info. Just thought I would check before looking into it further. I will create a test program and look further into what is happening.

Don't worry, I am not just copying configs -- but I am keeping the setup as much the same as possible to allow me to drop in the R7800 temporarily while I upgrade the WDR4900 to something more modern. It is currently running an old build of my own based on a BB trunk (r36499). Time to replace that!

[quote="gcobb, post:73, topic:316"]
It is currently running an old build of my own based on a BB trunk (r36499). Time to replace that!
[/quote]Yep, it is. But the have been so many changes sine that (in CC, DD and LEDE) that no wonder if something goes differently. You may need to may more attention to the firewall, network and ipv6 options.

Just in case anyone else comes searching for this problem. This appears to be the same problem described in IPv6 works only with wan in promiscuous mode

The same fix (set the interface, eth1 in my case, into promiscuous mode) works. No solution in that thread there but I will go and discuss it over there.

Thanks for the help.


Support for kernel 4.9 is finally coming to ipq806x target platform. I have compiled a build with kernel 4.9 and it seems stable and runs ok. (Note that you can't install most snapshot repo packages to this build, as buildbot still builds snapshots with kernel 4.4 that is the official default.

There is more about the kernel 4.9 transition attempts in the R7800 exploration thread.


Kernel 4.9 is now the default. In the final steps, support for ipq40xx devices was added and that action has broken wifi in the current main sources.

My build contains a fix for that, and hopefully the PR to get the fix applied to the main sources will get accepted.

1 Like

Is it possible to install this firmware in R7000 or R8000?

No. It is only for R7800.

Thanks for fast reply.

Which routers did you make a build? I have: R7000 (but 5GHz didnt work with 17.01 ), R8000 works ok, wndr3700 works ok (with your build), ea8500 (linksys protection -.-) and ac87u (same problem of ea8500)