I have run into an perplexing problem, and I am interested to know if anyone can think of a way around it.
I have a script which makes the router use a different hotspot "html-directory" to serve the login.html page if it has detected that the uplink to the Internet is down. The purpose for this is so that the login.html page that appears for users trying to login, while the uplink is down, will see on a page saying that the router knows that the Internet is currently unavailable and tells them that once it is back up, they will be able to get online. Once the uplink comes back up, the script then sets the "html-directory" back to the normal location which will provide them the login.html which can let them in.
Okay. The problem is that since the DNS servers are out on the Internet, if the uplink is down, the wireless client therefore cannot resolve DNS and their web browser times out trying to reach their original homepage ($link-orig) destination before the router will attempt to redirect them to the hotspot login page as it does normally for a user who is not logged in. I know this becuase if I try to go to a webpage by IP address instead, the web browser immediately redirects to the login.html as it is supposed to. I suppose DNS queries are allowed for users who are not authenticated for walled-garden purposes and for this sequence of login events. If it did not allow the DNS queries, users would never get redirected to the login page ever.
What I am wondering, is if anyone can think of a way to get the router to redirect the user to the login.html BEFORE it tries to query DNS to deliver them to the $(link-orig) as it always does before shipping them to the login.html page since they are not logged in yet?
I am stumped. Obviously, it is not the first time