I have a new hotel & casino network to build.
The network will be an open network.
The network will have many APs. All APs will bridge the wireless network to an ethernet port on the RB.
All APs will will have ethernet connections to cisco switches.
There will be a single core router (might be mikrotik) performing NAT for all AP client connections - this permits roaming from AP to AP.
This is not a pay-for-use system - it is free.
My question is, (at the core nat router) what is a good way to redirect the first http web page reqest from a client to a web server where the client can then read the rules then click “I accept” to continue using the internet?
The best option is a Hotspot set up on that ethernet port on a Mikrotik router that all the APs are bridged to.
The login.html for the Hotspot either uses a meta refresh or JavaScript (meta refreshes are implemented by more clients, so that’s the better method) to redirect to a web server that is permitted in the walled garden (ideally on the IP level). The web server displays whatever it displays, and eventually submits a form back to the router’s login servlet when the user clicks the “I Accept” button. That form contains a hidden field named ‘username’ and a hidden field named ‘password’ that have as values a Hotspot user on the router, that user must be linked to a Hotspot user profile that has shared-users set to 0 so that an unlimited amount of users can log into the account. If you need to dynamically determine which Hotspot router to submit back to there are GET variables available to make the web server able to detect that.
Alternatively login.html can just contain the “I Accept” page, but routers make poor web servers so using an external server is certainly a very good way to go.
All that is really very simple to set up, and very robust. I regularly do setups at events with thousands of users using just that method to provide free WiFi with login tracking and ‘splashpages’ that either ask for acceptance of terms of service or display the sponsor of the wireless network once at login.
If you are expecting many concurrent users and start having CPU issues with all the dynamic simple queues, PCQ can be used to override them and knock about 40% off the CPU requirements - though it does make the deployment more complex, and isn’t worth worrying about until you hit about 1000 users on an RB1100 that isn’t primarily dedicated to being a Hotspot router.
Re queues… I am considering queues which do the following - what do you think?
-(if possible - a up/down queue per associated client)
-A maximum up/down queue per antenna/sector/radio-card (where no one AP card can saturate the entire AP network)
maximum up/down queue for the entire network.
I suspect there will normally be 30 to 100 clients or much much more if there is a big event at the hotels and they are full.
I am thinking about a 10-max down/3 up on the entire open-public-SSID network - i have the pipe to do much more if needed and when needed.
To do all three you’d have to do one of them transparently on the AP.
I would do per user, and total for the network. At a rate of 10/3 for the network there is no danger of a single client overwhelming an AP as any AP can easily handle all of that bandwidth by itself. That is easily done via PCQ - PCQ type queues do the per user rate limits, the queue itself that has the PCQ children does the network rate limiting.
While overplanning things of course will not hurt, in my experience you can expect about half of the people at an event to use the wireless at all, and about one quarter of those be online at the same time. For 2000 people that means 250 users. Of course that wildly varies with the type of event but may provide some rough guidelines for capacity planning.