Analysis updated 2026-06-24
Bypass network filters in Iran by routing browser or Telegram traffic through a SoroushPlus voice call.
Study how a LiveKit data channel can carry SOCKS5 proxy traffic between two peers.
Build a manual peer-to-peer proxy that uses an existing chat app as the rendezvous layer.
Pair a home server with a restricted client so the restricted side gets free internet access.
| theermia/splustunnel | autolearnmem/automem | cortex-ai-network/crypto-arbitrage-bot-automated-trading | |
|---|---|---|---|
| Stars | 31 | 32 | 32 |
| Language | Python | Python | Python |
| Setup difficulty | hard | hard | moderate |
| Complexity | 3/5 | 5/5 | 2/5 |
| Audience | developer | researcher | general |
Figures from each repo's GitHub metadata at analysis time.
Both sides must sign in at web.splus.ir, place a voice call, and copy a LiveKit token from browser dev tools each time the call drops.
SPlusTunnel is a Python tool that lets two computers send normal internet traffic through what looks like a voice call on SoroushPlus, an Iranian chat app. The README is direct about why it exists: the author built it to help users in Iran reach websites and apps that are blocked by their network. Inside the call, the project rides on WebRTC, the same browser technology that powers video chat, and uses an encrypted data channel run by LiveKit to carry the actual data. One side is the server, and it runs on a machine that has open internet access. The other side is the client, and it runs on the restricted device. The client opens a local SOCKS5 proxy on port 1080, so a browser or Telegram can be pointed at 127.0.0.1:1080 and have their traffic forwarded through the call. Getting it running is a manual process. Both users sign in at web.splus.ir, place a voice call to each other, and then open the browser's developer tools to copy out a LiveKit access token from the WebSocket connection to k.splus.ir:8446. Each side has its own token. The server is started first with python app.py server, then the client with python app.py client, pasting the right token in each. If the voice call drops, a new pair of tokens has to be pulled again. The README quotes a working speed of around 500 KB per second, fast enough for Telegram and light browsing but not for heavy downloads. The project needs Python 3.10 or newer and depends on livekit version 0.11.1 plus the certifi package. It is released under the MIT license, and the author closes the README with the line, hoping for better days for Iran.
Python tunnel that sends regular internet traffic through a SoroushPlus voice call, using a LiveKit WebRTC data channel and a local SOCKS5 proxy on port 1080.
Mainly Python. The stack also includes Python, LiveKit, WebRTC.
MIT license. You can use, modify, and redistribute the code for any purpose, including commercially, as long as you keep the copyright notice.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.