Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Limit bandwidth by IP/port or application at the router

Featured Replies

OK, here is my situation...

 

Both my wife and I are able to work from home the majority of the week.  I use the built-in bandwidth schedulers of both Deluge and SAB to ensure we (our VPN connections) have enough bandwidth to for us be able to work.  My connection is 50Mbit and each app is allotted 30Mbit between 7am and 5pm.  From 5pm to 7am, the flood gates are opened.

 

However, as you can probably see, there is a major flaw in this configuration.  Deluge and SAB are not aware of the other's schedule.  So, it is very possible that both may be downloading at the same time @30Mbit each which would saturate my connection.  While this does not happen often, it can (and has) happened.

 

So, I ask:  Is there a way to accomplish the same at the router level?  Can I limit BW by IP/Port (since I use Docker containers and the IP would be consistent) or application on a schedule with a popular router?  I currently use pfsense but the only way I could find to do it was with traffic shaping which is a major PITA and I don't think supports scheduling.  I don't think I want to limit just the IP (unraid) since it may have other negative effects (like Plex or Emby), but I could be wrong.  FYI...I am only concerned with incoming (50Mbit) bandwidth.

 

How about Tomato or DDWRT?  Sophos?

 

Any suggestions would be greatly appreciated!

 

John

  • Author

 

Just looking around, it seems like pfSense should be able to do this too, there are a few video tutorials on youtube.

 

On a schedule though?  That is the part I can't find.

Use the PFsense QOS wizard and set it to priq. 

 

Now here is the secret.

 

if you are on timewarner, use their bandwidth test page that is never truthful.  Else use some other speed test site that gives you a graph

 

Now pfsense will not set your download mbs if you select priq for the qos.  type in what mbs you are paying for and run the speed test.  If you set it too low you will get a jaggety graph.  If you set it too high then the qos doesnt do anything.  for me 38mbs was jaggety, and 39mbs saturdated the line and made it useless.  38.5mbs was right on the money.

 

Odds are you have to do this for the upload section too.

 

Using this method i was able to suck the line dry with downloads, have fully useable youtube/netflix, and surf just fine, even when my bandwidth halves during prime time.  And i get to use full bandwidth,  Not the bullcrap 85-90%.  If you use hfsc you are stuck at 85-90% and if the pipe dips its worthless.

  • 3 months later...
  • Author

I'm going to dig up this old thread as I finally figured out how to do this in pfsense.  I'm sure there are better ways of doing this (true traffic shaping and QoS) but this is working well for me.  Since I am now using the pipework container in conjunction with a few of my other containers, I can assign each of them a static IP that is different from the unraid IP.  I have added both my SAB and Deluge IPs to the pool and they share the bandwidth that I allocate in the limiter during the schedule.  I was then able to disable the built-in schedulers in both of the clients themselves.

 

I'm going to keep this high level and answer questions when they come up.

 

Firewall --> Aliases

Create a new alias and include the IPs of the hosts that you would like to limit bandwidth:

 

drpAcjQ.png

 

Firewall -->  Schedules

Create a schedule for the days/times that you would like to limit bandwidth:

 

p352XXk.png

 

Firewall  -->  Traffic Shaper  -->  Limiter

Create two limiters...one for traffic coming in and one for traffic going out:

 

OQFKGD5.png

 

PXHujEn.png

 

Firewall  -->  Rules  -->  LAN

Create a LAN rule and make sure it is at the top of your rules.

 

0tXbWGZ.png

 

Protocol = any

Source = Single host or alias (and set it to the alias you created with the IPs)

         

oxkqFOT.png

 

Schedule = name of the schedule you created

In/Out = set In to your In Linmiter and Out to your Out Limiter

 

GYUtr7S.png

 

That should be it.  I have found that I needed to reboot the client for the rule to apply for some reason (doesn't make sense to me).

 

John

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.