Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Mar 2010 09:18:48 +0000
From:      Matthew Seaman <m.seaman@infracaninophile.co.uk>
To:        Peter Steele <psteele@maxiscale.com>
Cc:        "freebsd-questions@freebsd.org" <freebsd-questions@freebsd.org>
Subject:   Re: Generating a random hostname
Message-ID:  <4BA1EFF8.7030907@infracaninophile.co.uk>
In-Reply-To: <4BA1E51F.20304@infracaninophile.co.uk>
References:  <7B9397B189EB6E46A5EE7B4C8A4BB7CB3B27DFDA@MBX03.exg5.exghost.com> <4BA1E51F.20304@infracaninophile.co.uk>

next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 18/03/2010 08:32:31, Matthew Seaman wrote:
> On 17/03/2010 22:06:30, Peter Steele wrote:
>> Is there any facility in FreeBSD for generating a random hostname? We
>> have a template with a fixed hostname that has to be changed after
>> the template is closed. It would be useful to have a hostname
>> generated randomly.
> 
> perl -le '@a=(a..z,0..9); print map {$a[rand @a]} (1..8)'
> 
> That gives you 2,821,109,907,456 different possibilities so you should
> be able to use it for a while without too much fear of duplicates.


Thinking about this some more, a good trick would be to generate a
hostname from the MAC address of the host, since that is guaranteed to
be unique.

Something like this:

% cat hngen
#!/usr/bin/perl

use strict;

MAIN:
{
    use integer;

    my @a   = ( 'a' .. 'z' );
    my $mac = shift;
    my $n   = '';

    $mac =~ tr/://d;
    $mac = hex $mac;    # Convert to decimal integer

    while ( $mac > 0 ) {
        $n = $a[ $mac % @a ] . $n;
        $mac /= @a;
    }
    print "$n\n";
}

% ./hngen 00:40:05:a5:8d:b7
bigdehkkt

It does mean that hosts from the same manufacturer will tend to have
similar names -- this might be construed as a feature...

	Cheers,

	Matthew

- -- 
Dr Matthew J Seaman MA, D.Phil.                   7 Priory Courtyard
                                                  Flat 3
PGP: http://www.infracaninophile.co.uk/pgpkey     Ramsgate
                                                  Kent, CT11 9PW
-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.14 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkuh7/gACgkQ8Mjk52CukIz4egCfc6ErdXCEhIYz3emGZmPN51YX
iYAAnjbBxLaAOh6pAUkfgdgZH/PyU/EM
=KZ8m
-----END PGP SIGNATURE-----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4BA1EFF8.7030907>