We've got more and more boxes on the network at London Hackspace. I wanted a way to find them all automatically and give me a menu to ssh into them.
It turns our that it's pretty easy to do with avahi, on the servers - apt-get install avahi-daemon, and then drop this into /etc/avahi/services:
<?xml version="1.0" standalone='no'?><!--*-nxml-*--> <!DOCTYPE service-group SYSTEM "avahi-service.dtd"> <service-group> <name replace-wildcards="yes">%h</name> <service> <type>_ssh._tcp</type> <port>22</port> </service> <service> <type>_sftp-ssh._tcp</type> <port>22</port> </service> </service-group>
Then on your laptop install install avahi-ui-utils and run bssh for a list of things to connect to.
There is one annoyance, if you get an entry for ipv4 and ipv6, and if you have both ethernet and wifi you get an entry for each, so each host is repeated 4 times!
It wasn't actually the blockhosts script that was the problem, it was the tcpwrapper libwrap trying to convert text ipv6 addresses to ipv4 addresses, so I get a lot of these in the logs:
warning: /etc/hosts.allow, line 14: unable to convert [ipv6 address] to address
That's annoying but harmless.
What's more of the problem is that spamcop doesn't support ipv6 addresses in email headers, and since I have an ipv6 connection to my server when I'm at home and in the space I get most of my mail over ipv6.
So I can't report spam any more, not that it would of made much difference, but it was satisfying.