I have a mini pc running Linux. It has a 3G modem, wifi modem, runs nodogsplash for the captive portal, hostapd, dnsmasq, web server that gives out data that the user needs.
I have the 3G device for the pc to have an internet connection. I don't want to give out internet to the users connected to my wifi hotspot. This setup works now.
But it gives me a bad User Experience with my web app. When the users are connected to the hotspot, they are disconnected from the internet so they miss out on the chat messages and other notifications that are important.
So We wanted to work this out in two ways.
Check if there is a way for Android and iPhones to be connected to both wifi and mobile internet. And still, route the browser call to the web server I run and other traffic through the mobile hotspot?
Provide internet to the user but limit the speed. I want to control the traffic because I don't want to pay much to the mobile carrier. The image below shows the architecture of my project. I want to know at what step the throttling happens and is it possible to request in step 4 that I want only 30 kbps of speed in my response?
tc
andiptables
: you can tag the outgoing traffic with some tag, leaving the internal traffic untagged (or, perhaps, you can tag it with a different tag). Tags happen onmangle
table, and you can useiptables
to configure it (the target will beMARK
).You can see some examples and documentation here: https://wiki.archlinux.org/index.php/advanced_traffic_control