OpenWrt YAMon bandwidth monitor with /23 subnet setup (basics of networking)

SUMMARY: Here is my situation. I'm on Xfinity cable with no special config. I had a Netgear C7000 as my gateway to start. It has minimal traffic monitoring and absolutely no QoS features. I need both in a house of 4 with 2 internet greedy teenagers and an ISP data cap, so I've added an R7800. TL;DR at bottom.

HARDWARE DETAILS: I bought a Netgear R7800 because of the 128Mb Flash and 512Mb RAM onboard. This gives me plenty of space to configure and play with it. My plan was to disable DHCP serving and WAP on the C7000 and use the R7800 as the WAP, DHCP server with IPv4 ONLY. Initially Both devices were set up to operate on the same subnet, C7000 at 192.168.0.1 and R7800 set at 192.168.0.254. DHCP range on the R7800 was set to IPv4 range 0.10 to 0.249 with a subnet mask of 255.255.255.0 and gateway set to the C7000 address. This way I could funnel everything through the R7800 to monitor the traffic through YAMon package in DD-WRT.

FIRMWARE STATUS: My initial FW conversion was from stock Netgear v1.62 to Kong's DD-WRT 10/2018 build. I then grabbed YAMon Bandwidth monitor package and installed it but could never quite get it to accurately reflect usage; routing, DHCP and WAP worked as expected though. While perusing possible causes of my inaccurate results I noticed OpenWRT and how flexible it was in comparison to DD-WRT so I switched tracks from DD-WRT to OpenWRT 18.06.2 without a hitch; couldn't have been a smoother transition. I fell back to the C7000 as a full feature gateway interim while learning and configuring OpenWRT.

ISSUE: My issue now becomes this - I have followed the quick setup instructions, user guide instructions and solutions for this issue but as yet have found a successful configuration that allows me to use the R7800 as the WAP, DHCP and router as intended.

I've tried this with four different configurations:

  1. Different subnet with mask /23 using the C7000 ONLY as the gateway at 192.168.0.1/23 and the R7800 as WAP, DHCP and router at 192.168.1.1/23 subnet. Result: ends in failure to maintain stable wifi connections, comes and goes seemingly at random (In other words I can't observe a pattern to it, doesn't mean there isn't one I don't know to look for though. Tried release and renew after network changes so it's not as simple as renewing the DHCP leases from a new server).

  2. Different subnet with mask /23 using C7000 as the gateway at 192.168.0.1/23 and WAP broadcasting on one set of SSID and channel sets; R7800 is the DHCP, router and WAP broadcasting on a different SSID and channel set to prevent interference and conflict. Result: no internet connection at all through the R7800 including the wired LAN ports; eventual unrecoverable failure of internet connection through the C7000 WAP SSIDs.

  3. (Similar to #1 but with static routes set up) Different subnet with mask /23 using C7000 ONLY as the gateway at 192.168.0.1/23 and the R7800 as WAP, DHCP and router at 192.168.1.1/23; static IP set on R7800 WAN at 192.168.0.254/23 and static routes set from 192.168.1.1/23 LAN to 192.168.0.254/23 WAN port, inbound and outbound, including dropping the firewall on the WAN. Result: No internet connection on LAN or WiFi interfaces.

  4. (Similar to #2 but with static routes set up) Different subnet with mask /23 using C7000 as the gateway at 192.168.0.1/23 with WAP broadcast on and the R7800 as WAP, DHCP and router at 192.168.1.1/23; static IP set on R7800 WAN at 192.168.0.254/23 and static routes set from 192.168.1.1/23 LAN to 192.168.0.254/23 WAN port, inbound and outbound, including dropping the firewall on the WAN. Result: No internet connection on the R7800 LAN or WiFi interfaces and the C7000 intermittently drops and renews connection to clients.

I could probably just revert back to same boring /24 subnet like I always use but I really would like to learn and understand how to make a /23 subnet work for practical experience.

I'm no network guru, I'll accept the noob branding. I just learned basic concepts of subnetting, VLAN and DHCP. I've got basic Linux skills and can navigate fairly fluently in CLI. Telnet or SSH I'm no stranger to. I'm only attempting this /23 setup because I want to learn and understand the concepts behind making this network setup work along with establishing accurate monitoring of bandwidth use by device through YAMon package.

TL;DR -- I really want to learn how to establish a home network larger than standard /24 that is able to access all addresses in the range from any other address. Figured /23 was best place to start with. Need help to do it using a cable modem gateway with an R7800 as the WAP, DHCP and router. Would really like to use OpenWRT as the FW of choice with YAMon as bandwidth supervisor.

Nice effort....

Two things......

  1. "No internet connection"

Do you mean
-no dhcp
-no name resolution
-ip routing failure

( learn to diagnose each )

  1. It helps to modularise your modifications

You aim here is to isolate one change from another.....

Essentially you change something so that it is easily testable.....

Diving into a /23 is ok, but put it down on paper....

If any element of the concept is flakey for you change it so it becomes clearer.... Id suggest you use a stock /25 or /26 .... try that.... as it should help..... and keep the subnet numbering clear.....

10.1.1.0 255.255.255.192
10.1.1.64 255.255.255.192

etc.

VLSM can cause issues with dnsmasq, and almost every service..... so you gotta know how to test on all levels of the network stack.

This means;

routing

...."access" is a very loose term

:wink:

Thanks for the response. Answers to your questions:

#1 --> DHCP works, but no name resolution nor can I ping anything outside the subnet including internet IP's like 8.8.8.8, etc.

#2 --> I will give this a shot, probably a wise idea on my first venture into something not stock.

*** Regards the "access" comment, yes I do mean "Routing". I need to be able to route traffic in both directions from one subnet to the other with DNS and IP resolution available on both.

1 Like

Some basics to consider

  1. Disable the firewall on your non-public facing router/s while your learning

  2. Disable nat on internal routers ( should happen i think in openwrt when you disable the firewall )

  3. Apart from DHCP.... run all your services from your gateway router to start with.

done

With this configuration, all that is outstanding is the edge routers awareness of the internal subnets.

  • It needs to know how to get back to them.

  • It needs to know that it needs do NAT for them.

  • Clients on the first subnet will bounce back into the second from the internal interface on the edge router.....

Later you can change it so they may go direct or whatever.

  • And any services that wont play ball with non local subnets ( i believe you have to untick one thing in dnsmasq for it to respond to non-local subnets.

As a starting point, how about you try the following:
a) QoS: start with sqm-scripts/luci-app-sqm and follow the instructions in
https://openwrt.org/docs/guide-user/network/traffic-shaping/sqm-details's
" Making cake sing and dance, on a tight rope without a safety net (aka advanced features)" section. This should isolate the different users in the house from each other so that the 2 greedy users will have a much harder time making the internet useless for the rest.

b) Accounting: try luci-app-nlbwmon as that should give you a counter for each internal IPs traffic volume, you will need to figure out how to make this persistent over reboots though.

Neither a) nor b) are exactly solving your issues, but both should help maybe enough so you can start putting the R7800 into duty as main router while you figure out how to solve your issues properly.

Sounds like a firm starting point. I'll try that route and go from there, compartmentalizing my changes as you put it.

Thanks again for your suggestions and help. I'll report back with results, etc.