1

It's a strange question: i'm using a Raspberry Pi3 as a 'router' for mobile devices (Android / iOS). Raspberry will be NEVER connected to internet, so if a mobile devices connect to its WiFi, it will only be able to connect to the raspberry's local sites.

I know that Android / iOS switch automatically to 3G/4G if the WiFi can't reach internet.

In my example, i have a local website on Raspberry that has a link to paypal.com. The problem is that if i click (from my mobile device that is connected to rasp's WiFi) the link to paypal.com, my device tries to get the page using WiFi, but after 30 seconds it goes in timeout. I'd like to 'notify' to devices that the WiFi have no access to Internet, so a smartphone can automatically pass to 3G/4G for 'external' sites.

I'm using Hostapd+DNSMasq. I'd like to have the same behavior of the 'Parrot Drones' (your mobile device gets connected to the drone trough wifi but still uses 3G/4G because the device get notified that there is no internet connection).

How can i configure my raspberry wifi to notify that there is no internet connection?

1

I don't think that's how that works.

The client device (in this case the phone) connects to an access point (the Pi). It will use that network to attempt to source any requested data. If the network can't provide it, the request will fail. There's no server side protocol (at least not that I know of) that will instruct a client device to disconnect from one network and reconnect to another. That sounds like a serious security problem.

You could, I think, create an Android application that behaved like this (request data -> no data received -> disable network connection -> reconnect to other specified network connection -> request data), or perhaps even something like an IFTTT recipe might do the job. The whole thing sounds like it would be nightmarishly slow and error prone, however.

UPDATE

I took a quick look over the Parrot drone behaviour. I believe that they provide simultaneous WiFi and 3G/4G access by implementing routing rules on the Android side of the connection using their proprietary software. This is client-side behaviour and requires a software implementation on the Android device, not server side behaviour from the Pi.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.