Browser Issue: You must log in to this network before you access the internet

Greetings!
I discovered an interesting issue with Firefox that might just be a bug, but it’s (relatively) easy to fix.

Issue:
When attempting to log into your GoPiGo robot, running Dexter OS, (which is always in stand-alone access-point mode) or the new GoPiGo OS, (which defaults to stand-alone access-point mode), you get a message at the top of your browser that says:

This appears to primarily affect users running a recent version of Firefox, as it uses a feature called “Captive Portal Detection”.

When Firefox detects a potential “captive portal” - i.e. a network “login” screen - it disables certain functionalities for whatever reason, presumably to prevent you from bypassing the portal and getting the Mozilla Foundation sued out of it’s socks.

The result is that your ability to access features of your 'bot may work strangely, or may not work at all. This is something that is entirely out of the control of Dexter/Modular Robotics because it’s a browser feature, not a robot feature.

How to fix it:
This is something set by a “hidden” setting on Firefox’s “about:config” page.

  1. Open a new browser window/tab and enter about:config in the URL line at the top of the browser window.
  2. Acknowledge the warning you receive, if you have not disabled it.
  3. Search for the setting network.captive-portal-service.enabled, which should be set to true.
  4. Double-click on it. The setting should change to false and the whole line will become bold-face text.
  5. Entirely close the entire browser and all windows, (just to make sure!), and re-open the browser.

Access to your robot’s portal should now work correctly and you will not see that annoying alert.

======================================

What’s happening here? (for the curious)

Some browsers, (Firefox, at least), for whatever God Forsaken reason, try to “automatically detect” captive portals for you. Why? I don’t know. It’s not like you aren’t going to slam into them when you use your browser anyway. . . .

The way they do it is by spamminig a “hidden” URL, (http://detectportal.firefox.com/success.txt, that does only one thing, displays the text “success”) that the browser periodically, (very frequently for that matter, possibly flooding your network depending on capacity), to see if it actually has a connection to the live internet. If that request fails, for whatever reason, it “assumes” you are behind a “captive portal” and have to jump through hoops - disabling important functionality in the process.

If you are accessing a device, (like your GoPiGo), that has it’s own private network access point, the attempt to reach anything at firefox.com will fail miserably, resulting in that warning.

The solution is obvious: Disable the feature.

Dexter/Modular Robotics could mitigate the feature by including a “counter-feature” that would automagically capture any reference to http://detectportal.firefox.com/success.txt and always return a HTML “success” message and an empty page. However, disabling the feature will save you mucho-bandwidth and - if you’re on a metered connection - a lot of your internet allotment.

1 Like

man-in-the-middle phish detector

1 Like

Not according to what I read on Wikipedia.

A “captive portal” is the page/prompt you get at many cafe’s, airports, or other public WiFi hotspots, asking you to register, pay, or whatever.

IMHO, it’s a pointless exercise because the portal will “capture” you regardless.

Even worse is that some portals require some of the features that the captive portal detector disables - and as a consequence you cannot validate on that network.

1 Like

Sorry, didn’t see that on my smartphone when I replied.

Makes sense

1 Like

We already have something in DexterOS to handle those hotspots.
However Firefox has added theirs since then and it’s not in our list. I am attempting to add it in, but of course, they expect ‘success.txt’ and not ‘Success.html’ like the others.

Still investigating to see if I can find a solution.

2 Likes