Update - Recently, I couldn't get my virtual VPN router to work. Eventually, I discovered that the network lock (kill switch) function of ExpressVPN was preventing the virtual VPN router from assigning an IP address to connected devices. After I disabled the kill switch, as shown below, the problem was solved.
You may or may not need to disable the kill switch in your VPN software, depending on how your VPN provider has implemented the kill switch. Some kill switches will kill your virtual VPN router.
These instructions are written for Windows 7 but it will also work on Windows 8 and Windows 10. Some of the steps may be different for different versions of Windows and I will try to point out the differences in the steps below.
Download these 3 files and save them on your computer.
First, you will need to open an administrative command prompt (aka elevated command prompt). To do this in Windows 7 you can click the start button and type cmd and then right click cmd.exe and choose run as administrator.
Alternatively you can click Start Button --> All Programs --> Accessories --> Right click on Command Prompt and choose Run as administrator.
For Windows 8 and Windows 10 you can right click on the Start Button and then choose Command Prompt (Admin).
Now that you have started an administrative commend prompt type the following command to confirm if your network adapter supports a hosted network.
netsh wlan show drivers
If you see the text Hosted network supported : Yes as shown above then you can continue. If not then you may need to update your network adapter with the latest driver.
Now type the following command to create your virtual WIFI network adapter.
netsh wlan set hostednetwork mode=allow ssid=NETWORKNAME key=PASSWORD
Replace NETWORKNAME and PASSWORD with the network name and password of your choice. In my case I am using the network name netflix and password 88888888.
Now that the hosted network has been created you need to start it. Don't forget to run the below command in an administrative command prompt every time you restart your computer. Alternatively you can run the Start Hosted Network file available for download above to automate this.
netsh wlan start hostednetwork
Alternatively you can click Start Button --> Control Panel --> Network and Sharing Center --> Change Adapter Settings (on the left).
You should see a new Microsoft Virtual WIFI Miniport Adapter as shown below. It should be last in the list because it will be the newest adapter created. In my case it is called Wireless Network Connection 3.
Keep this network adapter settings window open because you will need it for step 3.
If you have closed the network adapter settings window from step 2 then open it again (Windows Key + R and then type ncpa.cpl).
You need to find out which adapter your VPN is using. In my case, I have several adapters because I have many different VPN services installed on my computer. Some VPNs will install their own custom named adapter for OpenVPN (such as VyprVPN and StrongVPN) and other VPNs will use the generic shared "TAP-Windows Adapter V9" (such as ExpressVPN, VPN.ac, and others).
Now connect to your VPN to identify which adapter your VPN is using. When you connect to your VPN, the status will change from Disabled or Network cable unplugged to Unidentified network and the red X on the icon will disappear. When I connect to ExpressVPN using OpenVPN, I can see that the adapter used is Local Area Connection 4 as shown below.
Note - If you are using PPTP or L2TP protocols then you will need to set up the connection manually in Windows in order to have a permanent network adapter. Most VPN software will create a PPTP or L2TP adapter when you connect and then destroy it when you disconnect. Check with your VPN provider to get instructions for manual PPTP or L2TP setup in Windows.
Right click on the adapter that your VPN is using which you identified in step 3 (Local Area Connection 4 in my case), choose properties and then click the sharing tab on the top. Enable both of the options by ticking the boxes and choose your newly created network adapter identified in step 2 (Wireless Network Connection 3 in my case). Click OK after you have made the settings.
Connect to your VPN and then your virtual VPN WIFI will be up and running, you can now connect any other devices to the new virtual VPN router WIFI network.
Note - If you find that the virtual VPN router is unable to assign an IP address to the devices you connect, you may need to disable the kill switch function in the settings of your VPN. Sometimes a kill switch can block the virtual VPN router from connecting to the clients.
Next time you restart your computer, use the files downloaded above to start and stop the virtual VPN WIFI or do it manually using the commands below.
To start the virtual VPN WIFI, type the following command in an administrative command prompt.
netsh wlan start hostednetwork
To stop the virtual WIFI router you can type the following command.
netsh wlan stop hostednetwork
To disable the adapter completely you can type the following command.
netsh wlan set hostednetwork mode=disallow
Remember that your virtual VPN router will only work while your VPN is connected. If you disconnect your VPN then the virtual WIFI will not have any connection to the internet.
If you prefer a video tutorial then you can watch it below.
You can use free software to turn your computer into a virtual VPN router instead of setting it up manually. I would recommend using the manual setup because we don't know much about the developers of these software programs (most are Chinese companies and the software could potentially monitor your internet traffic).
If you prefer to watch a video tutorial you can watch it on YouTube. You only need to watch the first few minutes, the remainder of the video is speed testing different VPN services through the hotspot (virtual router).
The software I used is called OSToto Hotspot. There are others which I have not used but will include the links below. Please leave your comments below if you have used any of these.
Make sure that you connect your VPN before enabling the hotspot. If you connect to your VPN after enabling the hotspot then it will not work.
If you want to disconnect and re-connect to your VPN (changing servers for example) make sure you disable the hotspot in the software first otherwise you may find that the wireless devices connected to the hotspot have no internet connectivity or your computer may have no internet connectivity. If this happens then close everything. Disable the hotspot, disconnect from your VPN, and then start over again.
Just remember this.
To Connect - VPN first, Hotspot second.
To Disconnect - Hotspot first, VPN second.
Note - PPTP was removed from the latest version of Mac OS. This should also work using L2TP following the same instructions. L2TP is a more secure protocol anyway so I would recommend trying L2TP first even if you have an older version of Mac OS with PPTP available.
You must create a manual PPTP connection in the Mac OS system settings. It will not work if you are connecting to PPTP using VPN software. Check the instructions from your VPN provider on how to connect manually with PPTP.
Open the system preferences menu and then choose sharing. Select Internet Sharing (but don't check the box yet) and then set the following options.
Share your connection from: Choose the PPTP connection you created in step 1.
To computers using: Choose Wi-Fi
Click the Wi-Fi Options button and set the options as follows.
Network name - Choose any network name
Channel - Choose any channel (recommended to choose a different channel than your main router)
Security - Choose any (recommended to choose WPA2 Personal)
Password - Choose any password
Verify - Same as above
In the sharing menu you can now check the box next to Internet Sharing and then click the start button.
To stop internet connection sharing simply un-check the Internet Sharing box.