Vai al contenuto principale

Raggiungere i computer su altre reti

Per gli amministratori: collegare BeeBEEP tra sottoreti e VPN come Tailscale con un file beehosts.ini, le porte da aprire e l'isolamento del Wi-Fi.

Per: amministratori · Da BeeBEEP 6.0.0 · Aggiornata il

BeeBEEP trova da solo gli utenti di una rete locale. Un computer su un'altra rete -- un'altra sottorete del tuo ufficio, una VPN come Tailscale, una rete che non lascia passare il broadcast -- va indicato una volta, con il suo indirizzo o con il suo nome host. Questa pagina è per chi gestisce la rete: come indicare molti computer insieme con un solo file, cosa deve lasciar passare la rete e cosa fa un Wi-Fi con l'isolamento dei client. Come un utente aggiunge una persona a mano è spiegato in trovare le persone che vuoi raggiungere.

Perché alcuni computer non vengono trovati

BeeBEEP si annuncia con pacchetti broadcast e multicast, che non escono mai dalla rete su cui sono inviati. Un router tra due sottoreti li ferma, e una VPN trasporta solo i pacchetti inviati a un indirizzo preciso: Tailscale, per esempio, non trasporta né broadcast né multicast. I computer possono comunque raggiungersi; devono solo sapere dove cercare.

Quando due utenti sono collegati, tutto funziona come su una sola rete: chat, gruppi e file.

BeeBEEP prova anche da solo su una rete che scarta il broadcast: a ogni avvio e a ogni ricerca invia il suo annuncio direttamente agli indirizzi dove ha incontrato altri utenti l'ultima volta, e agli indirizzi della sua rete (cosa prova BeeBEEP da solo). Oltre la sua rete gli serve l'elenco qui sotto.

Quali interfacce di rete usa BeeBEEP

Un computer ha spesso più interfacce di rete delle reti su cui una persona lavora: bridge per container e macchine virtuali, tunnel VPN. BeeBEEP invia i suoi annunci broadcast, e chiede se una rete è privata o pubblica, solo sulle interfacce che possono portare ad altre persone:

  • attive e funzionanti, non il loopback, e non indicate dal sistema come virtuali;
  • non un bridge per container o macchine virtuali: su Linux e macOS, i nomi che iniziano con docker, veth, virbr, br-, vboxnet o vmnet;
  • non un tunnel punto a punto: tun, e su macOS utun;
  • su macOS, non le radio di AirDrop, awdl e llw.

Un adattatore TAP -- una VPN che collega il computer a una rete locale remota come un ponte -- conta come una rete qualsiasi: BeeBEEP vi si annuncia e trova le persone di quella rete.

Questo elenco decide solo dove BeeBEEP si annuncia con il broadcast e su quali reti ti fa domande. Un computer indicato con il suo indirizzo, sotto Aggiungi un utente dal suo indirizzo o in beehosts.ini, viene raggiunto attraverso l'interfaccia che sceglie il sistema, anche un tunnel: è così che BeeBEEP funziona su Tailscale.

Collegare un intero gruppo con beehosts.ini

Se i computer sono più di un paio, scrivili tutti in un solo file e copialo su ogni computer del gruppo. Il file è beehosts.ini, nella cartella dei dati (vedi la cartella dei dati); BeeBEEP lo legge a ogni avvio. Un amministratore può metterne uno anche accanto alla policy (vedi la policy): quello vale sempre, e il tuo si aggiunge.

# The computers of the office, one per line
office-pc.tailnet-name.ts.net
laptop-anna.tailnet-name.ts.net
192.168.3.32
server.example.com tcp
# A whole network of the office
10.0.5.0/24

Ogni BeeBEEP riconosce nell'elenco il proprio nome e i propri indirizzi e li salta, quindi lo stesso file funziona su ogni computer. Il computer che si avvia dopo raggiunge gli altri, e quando la rete di un computer cambia, BeeBEEP contatta di nuovo l'elenco.

Come si scrive una riga

Una riga è host[:port] [udp|tcp]: un indirizzo o un nome host, poi una porta se non è quella predefinita, poi il modo in cui BeeBEEP fa il primo contatto. Gli spazi attorno alle parole non contano, né le maiuscole in udp e tcp.

ModoPorta predefinitaCosa fa BeeBEEP
udp, oppure niente36475invia il suo annuncio direttamente a quel computer; l'altro BeeBEEP risponde e si ricollega; un computer spento non costa nulla
tcp6475all'avvio si collega alla porta di ascolto di quel computer, e nello stesso momento invia il suo annuncio alla porta 36475, così l'altro lato può ricollegarsi se la connessione non passa

Scrivi udp (o niente) per la maggior parte dei computer. Scrivi tcp per un computer la cui rete lascia passare solo la porta di ascolto.

Un file scritto per BeeBEEP 5.x si legge allo stesso modo: le sue righe indicano host da contattare con udp. Una riga che BeeBEEP non sa leggere viene saltata con un avviso nel log, senza fermare il resto del file.

Un'intera rete

Una riga a.b.c.d/n indica una rete: BeeBEEP invia il suo annuncio a ogni indirizzo della rete, all'avvio, quando la sua rete cambia e quando cerchi. 10.0.5.255, come lo scriveva BeeBEEP 5.x, significa 10.0.5.0/24. Si inviano solo annunci, mai una connessione, con il ritmo della ricerca descritta sopra.

Una rete più grande di 256 indirizzi viene coperta a blocchi di 256, e tutte le righe di rete del file insieme coprono al massimo 16 blocchi (circa 4 000 indirizzi); BeeBEEP scrive nel log cosa ha lasciato fuori. Una riga così non ammette né porta né tcp, e una rete IPv6 non viene mai coperta indirizzo per indirizzo: queste righe vengono saltate con un avviso.

Una riga che inizia con ! blocca invece un indirizzo (vedi gli host da bloccare).

Cosa deve lasciar passare la rete

Tra i computer, consenti:

PortaProtocolloServe per
6475TCPla connessione vera e propria (la Porta di ascolto)
36475UDPl'annuncio che chiede all'altro lato di collegarsi

Su un computer il cui firewall lo chiede, consenti BeeBEEP sulla rete che crea la VPN, non solo su quella locale. Se i computer usano una password di rete (Impostazioni > Rete > Usa password di rete), devono avere tutti la stessa: un annuncio con un'altra password non viene letto.

Tailscale

Con MagicDNS attivo, ogni computer della tailnet ha un nome come office-pc.tailnet-name.ts.net, mostrato nella console di amministrazione di Tailscale. Usa quei nomi nel campo o in beehosts.ini: continuano a funzionare quando Tailscale dà un nuovo indirizzo a un computer. Se le regole di accesso della tua tailnet limitano le porte, consenti TCP 6475 e UDP 36475 tra i computer che usano BeeBEEP.

Un nome Tailscale di solito si risolve in un indirizzo IPv4 e in uno IPv6; BeeBEEP usa quello IPv4, a meno che Preferisci IPv6 a IPv4 sia attivo.

Wi-Fi con l'isolamento dei client

Un Wi-Fi con l'isolamento dei client -- le reti per gli ospiti, quasi tutti gli hotspot pubblici, alcuni access point aziendali -- scarta ogni pacchetto tra due dispositivi wireless, broadcast e connessioni dirette allo stesso modo: nessun file e nessun elenco di indirizzi li collega. Se BeeBEEP deve funzionare sul tuo Wi-Fi, dai ai suoi utenti una rete senza isolamento dei client, oppure consenti il traffico tra i loro dispositivi; dove l'isolamento deve restare, un computer collegato via cavo con BeeBEEP permette ai dispositivi wireless di parlarsi attraverso di lui. Le reti Wi-Fi che tengono separati i dispositivi lo spiegano agli utenti.

Tutte le pagine della guida