BeeBEEP 6: Support hostnames / Tailscale MagicDNS when adding users
You can message and share files inside your intranet without a server.
Brought to you by:
mastroddi
Hi Marco,
I would like to suggest a small feature for BeeBEEP 6.
When manually adding a user, BeeBEEP currently expects a numeric IP address. This prevents using a Tailscale MagicDNS hostname, for example:
computer-name.tailnet-name.ts.net
Could BeeBEEP 6 allow this field to accept hostnames / DNS names in addition to IPv4 and IPv6 addresses, and automatically resolve the hostname before connecting?
Ideally, the field could support:
Anonymous
Hi,
Thank you for the suggestion, and for using BeeBEEP!
You're right. In BeeBEEP 6 the "Connect to a known address" field currently accepts only a numeric IPv4 or IPv6 address. Over Tailscale that's the only way to reach a peer, because a tailnet doesn't carry the broadcast and multicast traffic BeeBEEP uses to find people automatically on a local network.
I'm planning to make the field accept a host name as well, and to rename it "IP address or host name". BeeBEEP will resolve the name through your system's resolver every time it connects, so all of these will work:
Because BeeBEEP remembers the name rather than the address it resolved to, the contact keeps working even if the other computer's IP address changes. Security doesn't depend on the address: every peer is still verified with its own encryption keys when the connection is set up.
If you have several computers, there will also be an easier way than adding each one by hand. BeeBEEP 6 will read a list of hosts to contact from a plain-text file, beehosts.ini, one address or host name per line, so MagicDNS names will work there too. You can write every computer of your tailnet into one file and copy that same file to all of them. Each BeeBEEP will recognize its own entry and skip it. An administrator can also place the file next to beebeep.rc, so that it applies to every user of a machine.
The "Connect to a known address" field, now labelled "IP address or host name", accepts IPv4 and IPv6 addresses, local host names, DNS names and Tailscale MagicDNS names such as computer-name.tailnet-name.ts.net. BeeBEEP looks the name up through your system's resolver. After the first connection it remembers the name, not the address, so the contact keeps working if the IP changes.
If you have several computers, you can list them all in a beehosts.ini file in BeeBEEP's data folder, one name or address per line, and copy the same file to every computer. Each BeeBEEP recognizes and skips its own entry.
On Tailscale, if your access rules restrict ports, allow TCP 6475 and UDP 36475 between the computers.