Rewrite as bash script with ipify verification
Replace Python implementation with simpler bash script that: - Uses tailscale set --exit-node instead of tailscale down/up - Verifies IP change via api.ipify.org before and after switching - Shows clear status with public IP
This commit is contained in:
parent
68683fa920
commit
c58e5f8655
2 changed files with 125 additions and 235 deletions
47
README.md
47
README.md
|
|
@ -1,60 +1,55 @@
|
|||
# Tailscale-Mullvad
|
||||
|
||||
> 🤖 Gevibecode met **OpenCode 1.14.50** en **Deepseek v4 Pro**
|
||||
|
||||
CLI-tool om Mullvad exit nodes te gebruiken via Tailscale op macOS en Linux.
|
||||
|
||||
## Wat het doet
|
||||
|
||||
Schakelt Mullvad exit nodes in en uit via de Tailscale CLI. Al het internetverkeer loopt dan via een Mullvad VPN-server, terwijl Tailscale-peers direct bereikbaar blijven. Toont voor en na activatie het externe IP-adres.
|
||||
Zoekt een Mullvad exit node op basis van stad/land/hostname, activeert deze via
|
||||
`tailscale set --exit-node=...` en verifieert met een IP-check via api.ipify.org.
|
||||
Bij uitzetten wordt de exit node verwijderd en het IP eveneens geverifieerd.
|
||||
|
||||
## Installatie
|
||||
|
||||
```bash
|
||||
git clone https://git.eddydevink.nl/eddy/tailscale-mullvad.git
|
||||
git clone ssh://git@nextcloud:2222/eddy/tailscale-mullvad.git
|
||||
cd tailscale-mullvad
|
||||
chmod +x tailscale-mullvad
|
||||
sudo cp tailscale-mullvad /usr/local/bin/
|
||||
```
|
||||
|
||||
Geen compilatie nodig — het is een Python 3 script.
|
||||
|
||||
**Vereisten:**
|
||||
- Python 3
|
||||
- Bash
|
||||
- Tailscale CLI (`tailscale`)
|
||||
- Mullvad VPN add-on geactiveerd in je Tailscale admin console
|
||||
- Jouw device toegevoegd aan Mullvad VPN in de admin console
|
||||
- Je device toegevoegd aan Mullvad VPN in de admin console
|
||||
|
||||
## Gebruik
|
||||
|
||||
```bash
|
||||
tailscale-mullvad on <stad of land> # Verbind met Mullvad exit node
|
||||
tailscale-mullvad off # Verbreek Mullvad exit node
|
||||
tailscale-mullvad status # Toon huidige status
|
||||
tailscale-mullvad on <query> # Verbind met Mullvad exit node
|
||||
tailscale-mullvad off # Verbreek Mullvad exit node
|
||||
tailscale-mullvad status # Toon huidige status
|
||||
```
|
||||
|
||||
Matching is **case-insensitive** op stad of land. Bij meerdere nodes in dezelfde regio wordt er willekeurig één gekozen.
|
||||
De query is case-insensitive en zoekt op hostname, land of stad in de exit
|
||||
node lijst (`tailscale exit-node list`).
|
||||
|
||||
### Voorbeelden
|
||||
|
||||
```bash
|
||||
$ tailscale-mullvad on amsterdam
|
||||
Current IP: 94.157.20.52
|
||||
Connecting to Mullvad: Netherlands - Amsterdam (nl-ams-wg-201.mullvad.ts.net)
|
||||
...
|
||||
Mullvad: ON -> nl-ams-wg-201.mullvad.ts.net
|
||||
IP: 94.157.20.52 -> 169.150.196.4
|
||||
Huidig IP: 94.157.20.52
|
||||
Verbinden met nl-ams-wg-201.mullvad.ts.net...
|
||||
Nieuw IP: 169.150.196.11
|
||||
Exit node actief -- IP gewijzigd
|
||||
|
||||
$ tailscale-mullvad status
|
||||
Mullvad: ON -> nl-ams-wg-201.mullvad.ts.net
|
||||
Exit node actief
|
||||
Publiek IP: 169.150.196.11
|
||||
|
||||
$ tailscale-mullvad off
|
||||
Mullvad: OFF
|
||||
|
||||
$ tailscale-mullvad on japan
|
||||
Current IP: 169.150.196.4
|
||||
Connecting to Mullvad: Japan - Tokyo (jp-tyo-wg-001.mullvad.ts.net)
|
||||
...
|
||||
Mullvad: ON -> jp-tyo-wg-001.mullvad.ts.net
|
||||
IP: 169.150.196.4 -> 146.70.45.83
|
||||
Huidig IP: 169.150.196.11
|
||||
Exit node uitzetten...
|
||||
Nieuw IP: 94.157.20.52
|
||||
Exit node uit -- IP gewijzigd
|
||||
```
|
||||
|
|
|
|||
Loading…
Reference in a new issue