Every vacation it’s the same issue. Wi-Fi is OK, but the range just sucks that little bit too much. Security is often a joke as well, when I’m on vacation I often end up being able to completely own the network. Perhaps I’ll get into those stories another time, for now - let’s fix those Wi-Fi range issues!
How does it work?
Using a single TP-LINK TL-WN722N v2 Wi-Fi adapter (or any other adapter that supports “Hosted networks”) to connect to Wi-Fi, whilst also sharing it via another dedicated self-hosted Wi-Fi network - you can extend the range of the primary Wi-Fi network. This works by using the built-in Windows functionality to share your Wi-Fi connection. This is documented okayish, but can be tricky to setup given the lack of error feedback and some odd bugs. There is a commercial solution that fixes this, called Connectify - but it’s paid and unnecessary. Just use my guide and script!
Extending your network
There are a few things you should know if you want this to work;
- You most likely need an external Wi-Fi adapter, you need to be able to host networks yourself. I use the mentioned TP-LINK adapter, but there are other options as well.
- You can check in PowerShell if your attached adapter supports it by executing;
netsh wlan show drivers | findstr Hosted
- You can check in PowerShell if your attached adapter supports it by executing;
- The passwords needs to be 8 characters long, if you don’t - you will have connection issues on Android devices. Don’t ask me why. Other users had this issue as well.
- You’re using your laptop as an extender with a Wi-Fi card attached, this can give the obvious disadvantages of requiring it to stay online and not being able to move it much.
hotspot.bat (Run as Administrator):
@echo off
:begin
cls
echo Choose an option:
echo 1. Configure hotspot
echo 2. Start hotspot
echo 3. Stop hotspot
echo 4. Restart hotspot
echo 5. Status hotspot
echo 6. Exit
set /p input=
if %input%==1 goto 1
if %input%==2 goto 2
if %input%==3 goto 3
if %input%==4 goto 4
if %input%==5 goto 5
if %input%==6 goto 6
:1
netsh wlan stop hostednetwork
cls
echo SSID:
set /p ssid=
echo Password:
set /p pass=
netsh wlan set hostednetwork mode=allow ssid=%ssid% key=%pass%
goto begin
:2
netsh wlan start hostednetwork
pause
goto begin
:3
netsh wlan stop hostednetwork
pause
goto begin
:4
netsh wlan stop hostednetwork
netsh wlan start hostednetwork
pause
goto begin
:5
netsh wlan show hostednetwork
pause
goto begin
:6
exit
Using the above script, you should first configure your Wi-Fi network - remember to use an exact 8 characters password! After the configuration you may start it. If it does not give any errors, you can proceed by sharing the internet connection - with the newly created Wi-Fi network in your network adapter settings.
You may now connect to your newly created network!