--- /tmp/Python27/Lib/uuid.py.orig Sun Jul 04 07:34:10 2010 +++ /tmp/Python27/Lib/uuid.py Wed Aug 25 12:03:22 2010 @@ -318,7 +318,7 @@ # This works on Linux ('' or '-a'), Tru64 ('-av'), but not all Unixes. for args in ('', '-a', '-av'): - mac = _find_mac('ifconfig', args, ['hwaddr', 'ether'], lambda i: i+1) + mac = _find_mac('ifconfig', args, ['hwaddr', 'ether', 'address:'], lambda i: i+1) if mac: return mac @@ -329,12 +329,6 @@ mac = _find_mac('arp', '-an', [ip_addr], lambda i: -1) if mac: return mac + + # This works on NetBSD + ip_addr2 = "(%s)" % ip_addr + mac = _find_mac('arp', '-an', [ip_addr2], lambda i: i+2) + if mac: + return mac # This might work on HP-UX. mac = _find_mac('lanscan', '-ai', ['lan0'], lambda i: 0)