AirTransit is a lightweight, zero-dependency command-line file sharing tool designed to traverse highly restrictive school, university, and corporate firewalls (including Symmetric NATs) where traditional WebRTC or P2P connections fail.
It provides a completely anonymous, registration-free, and QR-code friendly way to send files between your computers and mobile devices.
- Symmetric NAT Traversal: Uses secure HTTPS (Port 443) relays, ensuring traffic is never blocked by strict firewalls (like 42 networks).
- Zero Dependencies: Written in pure Python 3 using standard libraries (
urllib,tkinter, etc.). Nopip installrequired! - Short Codes: Generates short 6-character transfer codes (e.g.
f8agka.txt) so you don't have to type long URLs. - Terminal QR Codes: Renders a scannable ASCII QR code directly on your terminal screen when sending a file, allowing you to download files on your phone instantly.
- Anonymous & Secure: No accounts or sign-ups required. Files are encrypted in transit via TLS.
In strict networks (like the 42 school network), routers employ a Symmetric NAT which dynamically rewrites your external port mapping for every new destination IP you connect to. This completely breaks standard WebRTC hole punching.
AirTransit bypasses this by uploading and downloading files directly through standard HTTPS web endpoints. Since HTTPS traffic on port 443 is required for normal web browsing, it is never blocked by firewalls. Under the hood, files are temporarily hosted on a free anonymous storage relay (Catbox.moe) for up to 200MB per file.
- Clone the repository:
git clone https://github.com/ogudemir/transfer.git ~/kaahn/dev/transfer cd ~/kaahn/dev/transfer
- Run the installer script:
./install.sh
- That's it! The
transfercommand is now available globally in your terminal.
Upload any file (up to 200MB) from your terminal:
transfer send project.tar.gzOutput:
Uploading 'project.tar.gz' (4.20 MB) to Catbox...
✓ Upload Successful!
----------------------------------------
Short Code: j85pg4.txt
Direct URL: https://files.catbox.moe/j85pg4.txt
----------------------------------------
To download on another PC, run:
transfer receive j85pg4.txt
Scan to Download:
█████████████████████████████████████
█████████████████████████████████████
████ ▄▄▄▄▄ █▀█ █▄ ▀ █ ▄▄ █ ▄▄▄▄▄ ████
...
- For Phones: Point your phone camera at the terminal screen to scan the QR code and download the file.
- For other PCs: Run
transfer receive j85pg4.txt.
- On your sending device, open your browser and go to catbox.moe.
- Upload your file anonymously. It will generate a link (e.g.,
https://files.catbox.moe/x9ykd2.jpg). - On your target PC terminal, run:
(AirTransit will automatically resolve the short code and download the file directly into your current directory).
transfer receive x9ykd2.jpg
Distributed under the MIT License. See LICENSE for more information.