[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Best way to get IP addresses from VMs without logging in to them?



I have been working on an "on-ramp" application to introduce new
people to Xen Project (more on that later), when I ran into a simple
scenario which seems to lack a simple solution:

When I start up a new VM which employs DHCP, how can I
programmatically determine what IP address it obtained?

When I look at the Wiki, I find the following reference:

http://wiki.xenproject.org/wiki/Xen_FAQ_Networking#IP_Determination

Which suggests using tcpdump for sniffing out packets relating to a
known MAC address.  But that depends on traffic flow from VM, which
could be time consuming if the machine happens to be idle.

I devised the following bash script which uses nmap to determine the
correlation of MAC address to IPv4 address in a Class C network with a
known subnet root:

# Use nmap to find the IP of the MAC address:
ADDRLINE=`nmap -sn $IPROOT.1-254 | egrep -i $MACADDR -B 3 | egrep $IPROOT`
IPADDR=${ADDRLINE#*(}
ADDRLINE=${IPADDR%)*}

It works, but it is clunky (and currently limited to Class C networks).

Is there a better way to programmatically do this?  If so, we need to
document it in the Wiki (and I'd be glad to work on that).  But how
can we do this simply?

Thanks,

Russ

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.