If you are having a SFR Illimythics or Carre unlimited data plan, you must have realized that the standard Android Wifi Hotspot is almost unusable with your other devices. You can connect to your Wifi Hotspot but all the pages are blank !
This comes from the fact that operators like SFR decided to block internet connection sharing by analysing all the data you send and by checking the User Agent declared by your browser. If the User Agent is known and accepted by the operator, the packet is carried. If not it is simply dropped. You will then get a blank page on your browser.
With a Postal comparison, its like if your postal service is starting to read every letter you send and decides to carry it or not according to what you have written ! Unbelievable … but true.
This behaviour comes from the business model mobile operators are trying to build : they expect to be able to shave an egg ! When they sell you an unlimited 3G mobile data plan for your smartphone, they want to sell you a second one for your tablet, a third one for your laptop, … This is highly logical as everybody knows that with two hands and two eyes you can surf on four devices at the same time !
Hopefully, this can be circumvented with a very simple tool : Firefox. This article explains the simple steps needed to be able to bypass SFR User Agent filtering which blocks connexion sharing. It works with any device running Firefox browser. You will then be able to use Android inbuilt Wifi Hotspot feature as it was always supposed to be used.
This connexion sharing has been tested with devices running Firefox 19+ under Ubuntu 12.04, Windows 7 and Android 4.2.
1. Technical Overview
To make sure that you can not share your smartphone unlimited data plan with any other device, operators like SFR have setup a very efficient technique called Deep Packet Inspection. This technique allows your operator to analyze the content of every data packet you generate and to determine whatever action has to be done according to its content.
To exclude internet access to other devices than your smartphone, they check a very simple thing : the User Agent sent by your browser. In fact every browser is sending some metadata with every request. One of these metadata is the User Agent. This user agent is a type of signature which indicates to the web site what type of browser it is dealing with. It allows the site to adjust the answer to the browser capabilities. Every browser is sending its own User Agent.
So, some operators are using DPI to test that the User Agent you are presenting while surfing corresponds to a User Agent they have in their authorised list. As a result, when they detect that some web packets are not coming from your smartphone web browser, they simply drop the packet, refusing to serve the request. You then get a plain, nice and simple ... blank page, whatever you do.
To circumvent this nasty technic, the simplest thing to do is to force your browser to present the same User Agent as the one of your smartphone browser ... Like that, your operator won't make any difference between your different surfing devices.
2. Get your Smartphone User Agent
First step is to get your smartphone or 3G tablet default user agent.
To get it, you just need to connect to the site http://www.whatsmyuseragent.com/ with the browser embedded in your smartphone.
You'll directly get your actual user agent (this one is from a Samsung Galaxy Tab 2 10.1 ) :
Samsung Galaxy Tab 2 10.1
Your User Agent String is:
Mozilla/5.0 (Linux; U; Android 4.0.4; fr-fr; GT-P5100 Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Safari/534.30
This is the chain you should use whenever your are surfing using your mobile data plan.
If your browser presents this chain as its user agent, your operator won't be able to detect what device you are browsing from.
3. Change Firefox User Agent
You can now configure Firefox on the other devices you want to use to surf with your mobile data plan (tablet, laptop, ...).
First step is to install a User Agent modification plugin on Firefox. Few plugins are available for this purpose .
Custom User Agent String as the main advantage of being multi-platform. You can install it on any laptop or Android Tablet.
Next step is to configure this plugin with the User Agent you've got from your official Smartphone or 3G tablet browser.
Once done you just need to restart Firefox to make sure the new User Agent setting is operational.
You can check by going back to http://www.whatsmyuseragent.com/. You should get the same string as the one you've just configured.
4. Enjoy your Full Mobility
You can now start your Android Hotspot from your Smartphone & connect your laptop or Wifi tablet.
You should now be able to surf the web from Firefox while using your 3G data connection.
For you, Deep Packet Inspection restriction by filtering User Agent is now part of the past.
5. The Definitive Solution under Linux
This tweak is usable on many platforms but it bypasses the User Agent restriction as long as you use Firefox. It doesn't solve the filtering for other applications using HTTP protocol (apt-get, wget, ...).
If you really want to get rid of the complete filtering, the definitive solution under Linux is to setup a Squid proxy on your laptop and to configure it to do on-the-fly User Agent replacement. Some articles are available on the net explaining this specific configuration.
Then, by setting up the proper http_proxy variable, most of your applications will then be able to use your mobile data connexion as their own user agent will be replaced on-the-fly before they reach your operator's network.
Hope it helps.