Esiste una soluzione per usare automaticamente il mio router di sottorete quando non sono connesso alla mia LAN di casa, ma evitare il router di sottorete quando sono direttamente connesso alla mia LAN di casa? (dato che ovviamente non è necessario e rallenta le mie connessioni)
Lasciare il mio telefono collegato al server VPN Tailscale 24/7 funziona per compiti a bassa banda, ma rallenta tutto per compiti più impegnativi ad alta banda. Non considero una vera soluzione “disconnetterlo ogni volta che sono a casa”. Altre idee?
Modifica:
Le sugerimenti di seguito non hanno funzionato per me.
Pubblicizza una rotta meno specifica (ad esempio 192.168.0.0/23) sul tuo router di sottorete Tailscale in modo che la tua interfaccia di rete locale abbia la priorità quando sei a casa.
L’inganno della rete meno specifica menzionato sopra funziona per sistemi non Linux. Ecco alcune istruzioni su come vedere le priorità di routing in Linux: Troubleshooting guide · Tailscale Docs
Perché non sapevo che avessimo altri modi per farlo (come indicato in altre risposte), ho semplicemente creato ACL per limitarlo. Poiché TS non ha regole di negazione, ho semplicemente etichettato i miei dispositivi e creato regole per consentire le sottoreti a ogni dispositivo, tranne quelli all’interno di tale sottorete. Potrei rifare i miei ACL in base a questo, ma dovrei configurare ogni macchina Linux individualmente poiché sembra che la sottorete meno specifica non funzioni per essa.
Sul mio server Tailscale Linux ho eseguito:
sudo tailscale up --advertise-routes=10.100.114.0/23 --accept-routes --reset
Ho anche eseguito:
sudo ip rule add to 10.100.115.0/24 priority 2500 lookup main
Quando il mio telefono Android effettua richieste, i miei servizi vedono ancora l’indirizzo IP del mio router di sottorete e non l’IP del telefono che è connesso al Wi-Fi sulla stessa LAN ma usando il mio VPN Tailscale.
Attualmente reindirizzo 192.168.0.0/16. Sui miei computer Windows di casa, ho semplicemente disattivato il routing delle sottoreti perché è in quella rete.
Sarebbe ok 192.168.0.0/15 o c’è un modo migliore? L’ho provato e funziona bene, solo mi chiedo se sto creando un altro problema.
Sul mio server Tailscale Linux ho eseguito:
sudo tailscale up --advertise-routes=10.100.114.0/23 --accept-routes --reset
Ho anche eseguito:
sudo ip rule add to 10.100.115.0/24 priority 2500 lookup main
Quando il mio telefono Android effettua richieste, i miei servizi vedono ancora l’indirizzo IP del mio router di sottorete e non l’IP del telefono che è connesso al Wi-Fi sulla stessa LAN (ma usando il mio VPN Tailscale ovviamente).
Modifica:
Ho anche provato semplicemente
sudo tailscale up --advertise-routes=10.100.114.0/23 --reset
Hai accesso alla console di amministrazione e hai approvato la modifica della sottorete?
L’ho fatto
Inoltre ti connetti tramite IP o DNS? MagicDNS non è molto magico perché ignora la località.
Stavo usando il mio server DNS Pi-hole, non MagicDNS. Tuttavia, ho provato anche con l’indirizzo IP reale e ancora non funziona. Il mio server Plex vede ancora l’IP del mio router di sottorete e non l’IP del mio telefono, il che significa che sto ancora usando il router di sottorete come intermediario invece di connettermi direttamente.
Sento di essere vicino a una soluzione. Ma sì, i passaggi che ho seguito (la mia risposta precedente) sono quelli raccomandati da Tailscale nella loro guida (che è anche lo stesso consiglio che hai dato). Grazie comunque per l’aiuto.
Oh, questa è una casistica molto estrema, ma l’ho incontrata sul mio computer. Hai due NIC?
Avevo una workstation connessa tramite sia a una VLAN guest isolata che a una seconda NIC collegata alla LAN. La tabella di routing decideva che tramite il WAN > SubnetRouter > LAN fosse più diretto di > LAN.
Il mio router di sottorete è un Raspberry Pi che esegue Raspberry Pi OS, quindi ha una sola NIC. Il mio client Tailscale è un telefono Android 10. Avrei pensato che questa fosse una configurazione comune, ma forse qualcosa nella mia rete è impostato male.
Puoi provare la mia soluzione come ho menzionato sotto. Uso ACL per limitare i dispositivi che accedono alle sottoreti. Così, quando sono sulla mia LAN, viaggiano solo attraverso la LAN perché l’ACL non permette loro di passare attraverso il router di sottorete. L’ho testato collegandomi al mio hotspot cellulare.