1

We provide a free WiFi in our town with the Freifunk gluon firmware. Sometimes it can happen, that a cluster of routers is connected with each other indeed, but in fact none of the routers in that cluster has an uplink to the Internet.

In this case I would like to inform the clients that it is indeed possible to connect to the wlan net, but in fact you will not get Internet over this connection. Only local Freifunk services (sip telephone, chat, file-exchange, ...) will be available, that are served in the local cluster (that can be quite big, in extreme: city-wide).

My first idea was at first changing the SSID to something containing "~local only~" or such, but it seems that this would disconnect all connected clients (see Change SSID while clients are connected )

Since the most obvious solution, a captive portal, is not a solution for us, because we don't want to fiddle with the http(s)-requests of the users,

how could I inform the users, that there is temporarily no internet connection over my WiFi Network?


related: Stop users from connecting if a WiFi is full / Stop users from connecting if a WiFi is full

8
  • If you don't get an answer here, consider asking over at networkengineering.stackexchange.com or serverfault.com
    – Jason C
    Jun 28, 2014 at 21:13
  • You could put a proxy server between your main modem/router and rest of network and create a page to serve up when no external DNS can be reached. Like a captive portal.
    – Kinnectus
    Jun 28, 2014 at 21:27
  • There is no other option but a captive portal. Of course this is an HTTP-only solution, but what else is there?
    – Daniel B
    Jun 28, 2014 at 21:41
  • @DanielB Is the DNS redirect I described in my answer not an option? If so I'll delete it. I wasn't really sure what was possible, I just kind of threw out an idea.
    – Jason C
    Jun 28, 2014 at 21:43
  • 1
    @JasonC It’s still a captive portal. Only instead of using a transparent proxy, you’re using DNS manipulation.
    – Daniel B
    Jun 28, 2014 at 21:45

1 Answer 1

0

I have no experience in this matter but my first thought is that when you detect that the internet connection is down, redirect DNS requests to a DNS server that maps all requests to a web server that says "the internet is temporarily down" (e.g. set up your own DNS server and have your DHCP server deliver that, possibly forcing renewal of all leases during change over). Of course this is only visible when web browsing but that will catch the vast majority of cases; for non-web connections the customer will likely notice that it isn't working and hopefully try to access the web. The other down side is it won't have an effect on customers that override their DNS settings (e.g. I always use Google's public DNS), but I think this is a fair minority as well. I guess there might be some issues with client-side DNS caching as well.

You probably don't want to change the SSID for a few reasons, including but not limited to:

  • The internet being down/up will not be transparent to users.

  • Users will lose their wifi connection if it switches over.

  • Users won't automatically connect to "~local only~" unless they choose to, and I know I wouldn't choose to because it's a network name I don't recognize (and doesn't look like something I'd want to connect to at e.g. a coffee shop anyways).

  • Users likely won't even make the association between your public network and "~local only~" (or necessarily know what "local only" even implies). From their point of view, the public network is gone and, independently, a new unrecognized network is present.

  • It's kind of sloppy (IMHO) and might not be a great PR move for your system.

You could also attempt to let users know in other ways that the connection is generally unreliable, e.g. if you have a web site that describes your service.

Additionally, it seems to me that these days wifi is ubiquitous enough that if the web browser is timing out making requests, they'll generally come to the natural conclusion that "the internet connection isn't working right now" without you having to tell them - so you could do nothing -- but I do think redirecting them to a page that says the service is down will give them the best experience possible.

I think this is a different technique than the captive portal discussed in the comments, as it's out of the picture entirely when the internet is up and does not involve manipulating data in place. However, if you also can't set up your own DNS server for some reason, I would definitely just do nothing rather than switching the SSID, which is essentially the same thing anyways if you consider what the general response of a user would be when faced with your public SSID no longer being present and an unrecognized new one named "~local only~".

4
  • Even if you made the name a bit more meaningful like "PublicWifi_InternetIsDownRightNow", from the user experience side the reaction would generally be one of "What is this? Why would this network exist?" rather than "Ah, the normal PublicWifi internet service is temporarily down and will return as soon as possible".
    – Jason C
    Jun 28, 2014 at 21:42
  • I think the naming is secondary here, that can be solved with an intelligent name, but it seems not possible anyway to thange the ssid without kicking the connected clients
    – rubo77
    Jun 28, 2014 at 21:50
  • no need of deleting this, there are some nice thoughts here in this Answer
    – rubo77
    Jun 28, 2014 at 21:50
  • @rubo77 Yes that much (change SSID => disconnects) is definitely true, and when the internet connection comes back up you'd also want that transition to be smooth.
    – Jason C
    Jun 28, 2014 at 21:51

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .