A Bluetooth-based VPN application for Android.
BluetoothVPN allows multi-hop connectivity between Android devices using P2P routing. It can be used for group messaging and sensor data collection when the deployment scenario requires capabilities that a simple piconet cannot support: an arbitrary number of inter-connected peers in the network (up to 20 devices in transitive proximity), and a wider range (when peers are scattered as relays over a large coverage area).
- Dowload sources and build with
Gradle
- Install the
BluetoothVPN
APK on devices to connect
- Go to Bluetooth settings to scan and pair Bluetooth peers
- Launch the BluetoothVPN app
- Configure device's peering mode (2 modes are available: listening and connecting mode)
- Grant VPN permissions at the system prompt
- For each device, configure at least one gateway
- Select
Routing Peers
in the main menu - Click on a discovered peer to open a peering connection (the selected device must be configured to accept peering connections)
- (Note that some devices can accept more than one connection)
- Select
- Devices should reconnect to their configured peers on start from now on
- Note the network address namespace created by the VPN (
3.3.0.0/16
): traffic to IP addresses in that range will be routed through the VPN.