Skip to content

Commit 2cb9062

Browse files
committed
docs: update README.md
1 parent cea3507 commit 2cb9062

File tree

5 files changed

+32
-5
lines changed

5 files changed

+32
-5
lines changed

README.md

Lines changed: 32 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,19 +7,21 @@
77

88
# About
99

10-
Anywherelan (awl for brevity) is a mesh VPN project, similar to tinc, direct wireguard or tailscale. Awl makes it easy to connect to any of your devices (at the IP protocol level) wherever they are.
10+
Anywherelan (awl for brevity) is a mesh VPN project, similar to tinc, direct wireguard or tailscale. Awl makes it easy to connect to any of your devices (at the IP protocol level) wherever they are. It also allows you to route traffic through remote peers like a SOCKS5 proxy.
1111

1212
Some use cases:
1313

14-
- connect to your home/work laptop with RDP/VNC/SSH, which is usually behind NAT. Much easier with awl instead of configuring port forwarding or using heavy VPNs
14+
- connect to your home/work laptop with RDP/VNC/SSH/etc, which is usually behind NAT. Much easier with awl instead of configuring port forwarding or using heavy centralized VPNs
1515
- get secure access to your selfhosted services like Nextcloud, Home Assistant or Bitwarden without exposing them to the internet
16+
- access websites from another country by using a remote peer as a SOCKS5 proxy
1617
- gaming: local multiplayer like in one LAN
1718
- as an alternative instead of ngrok to share your development server with someone on another device for demonstration
1819
- you can use your old android device remotely with [scrcpy](https://github.com/Genymobile/scrcpy) + awl to run some android-only apps instead of using an emulator on your PC
1920

2021
## Features
2122

2223
- unlike many alternatives, it works fully peer-to-peer, no need to set up or trust any third-party coordination servers. Your traffic goes directly to other devices
24+
- route traffic through remote peers like a SOCKS5 proxy
2325
- easy to use: just download the app, scan QR code of your device, and you're set up
2426
- built-in support for NAT traversal
2527
- if both devices don't have public IP addresses (thus peer-to-peer is unavailable), awl will send your encrypted data through community relays (donates for infrastructure are welcome!)
@@ -130,7 +132,7 @@ Below you can see example on how you can connect to public peer for testing purp
130132

131133
Go to web interface (http://admin.awl) or run application in case of android. You can find your `peer_id` by clicking `SHOW ID`. To invite peer you need to press `NEW PEER`. Let's add public peer as an example. Enter `peer_id` equal to `12D3KooWJMUjt9b5T1umzgzjLv5yG2ViuuF4qjmN65tsRXZGS1p8` and name it `awl-tester`. After a few seconds you will see a new peer in your list. Now try to go to the http://awl-tester.awl/. You should see a page with network speed test.
132134

133-
Note that awl dns is currently unsupported on Android, see [#17](https://github.com/anywherelan/awl/issues/17).
135+
Note that awl dns is currently unsupported on Android, see [#17](https://github.com/anywherelan/awl/issues/17). So on Android, you can only access peers by IP addresses.
134136

135137
If someone invites you, a notification will appear, and then you can accept/block this peer in the admin interface.
136138

@@ -154,6 +156,31 @@ ping 10.66.0.2
154156
ping awl-tester.awl
155157
```
156158

159+
## Using peers as SOCK5 proxy
160+
161+
Now that you have connected to your first peer, you can configure it as a SOCKS5 proxy and route your traffic through it. Any peer can be used as a SOCKS5 proxy (even Android devices), but only if they allow it.
162+
163+
To configure it on desktop with web UI go to admin page, select a peer, press Settings, then check `Allow to use my device as exit node` and press save. Now this peer can use your device as SOCKS5 proxy.
164+
165+
How to configure using cli:
166+
```bash
167+
# list all your connected peers and their EXIT NODE status (if they or you allowed to use as a proxy)
168+
awl cli peers list
169+
170+
# allow peer `peer-name` to use this device as a SOCKS5 proxy
171+
awl cli peers allow_exit_node --name="peer-name" --allow=true
172+
173+
# list available exit nodes/SOCKS5 proxies
174+
awl cli me list_proxies
175+
176+
# set current proxy. it will be available on SOCKS5 Proxy address (default 127.0.0.66:8080)
177+
awl cli me set_proxy --name="peer-name"
178+
```
179+
180+
Now you can use selected peer as SOCKS5 proxy, default address is `127.0.0.66:8080`, no auth required. On desktop, you can select peer for proxy in web GUI or in system tray.
181+
182+
When you route your traffic through a peer, there are no restrictions other than your connection between two peers. You can also connect through a relay if you do not have a direct connection. You can access a remote peer's local network through proxy, but you can't access localhost.
183+
157184
## Config file location
158185

159186
Awl looks for config file `config_awl.json` in paths in this order:
@@ -178,10 +205,10 @@ NAME:
178205
awl cli - p2p mesh vpn
179206
180207
USAGE:
181-
awl cli [global options] command [command options] [arguments...]
208+
awl cli [global options] command [command options]
182209
183210
VERSION:
184-
v0.8.1
211+
v0.12.0
185212
186213
DESCRIPTION:
187214
Anywherelan (awl for brevity) is a mesh VPN project, similar to tinc, direct wireguard or tailscale. Awl makes it easy to connect to any of your devices (at the IP protocol level) wherever they are.

docs/images/android-info.png

-17 KB
Loading

docs/images/android-peers.png

-32 KB
Loading

docs/images/desktop-tray.png

23.7 KB
Loading

docs/images/desktop.png

-5.47 KB
Loading

0 commit comments

Comments
 (0)