Перейти к основному содержимому
Категории ai career dao links media notes philosophy security systems web
  1. Гисты/

VMWare Fusion Images with a static IP Address on Mac OS X Snow Leopard

·479 слов·3 минут· ·
Оглавление

VMWare Fusion Images with a static IP Address on Mac OS X Snow Leopard

setup-vmware-image-with-static-IP.markdown
#

# How to setup your VMWare Fusion images to use static IP addresses on Mac OS X

At [Crush + Lovely](http://crushlovely.com), we use [Railsmachine's](http://railsmachine.com) [Moonshine](http://github.com/railsmachine/moonshine) to automate the configuration of our servers.  When writing our deployment recipes, VMWare Fusion's ability to take snapshots and rollback to these snapshots is a huge timesaver because it takes just seconds to roll a server image to it's original state.

When you're just configuring a single server, having a static IP address for your server image isn't too important, but when you're configuring multi-server setups, it can be useful to duplicate a number of server images and give each a static IP address so you can consistently deploy to them.  While not documented well at all, it turns out that this is relatively easy to accomplish in four simple steps.

## 1. Determine the MAC address of your guest machine

Let's say you have a guest machine with the name `ubuntu-lucid-lynx-base` and you keep your guest machine images in `~/Documents/Virtual\ Machines/`.  To determine the MAC address for this VM, you can run:

cat ~/Documents/Virtual\ Machines/ubuntu-lucid-lynx-base.vmwarevm/ubuntu-lucid-lynx-base.vmx | grep ethernet0.generatedAddress


If more than one line is returned, you're looking for the one with the value like `00:0c:29:9d:2a:38`.

## 2. Add your static IP address to VMWare's `dhcpd.conf`

Open `/Library/Application\ Support/VMware\ Fusion/vmnet8/dhcpd.conf`. `vmnet8` is the virtual interface for NAT networking in VMWare the guest machines.  In this file, you'll see a subnet clause that looks something like this:

subnet 172.16.179.0 netmask 255.255.255.0 { range 172.16.179.128 172.16.179.254; option broadcast-address 172.16.179.255; option domain-name-servers 172.16.179.2; option domain-name localdomain; default-lease-time 1800; # default is 30 minutes max-lease-time 7200; # default is 2 hours option routers 172.16.179.2; }


Take note of the line starting with `range`.  The IP addresses you will assign your guest machines will need to fall *outside* that range.  Find the line that looks like this:

####### VMNET DHCP Configuration. End of “DO NOT MODIFY SECTION” #######


Below that line, add a clause for your guest machine.  It should look like this:

host ubuntu-lucid-lynx-base { hardware ethernet 00:0c:29:9d:2a:38; fixed-address 172.16.179.102; }


Make sure the `hardware ethernet` value matches the MAC address you found in step one, and the `fixed-address` is an IP outside the range listed in the `subnet` clause.

## 3. Optional: Update your `/etc/hosts` file

If you want to assign a fancy local hostname that refers to your guest machine, you can do so by editing your `/etc/hosts` file.  For instance, to assign the hostname `ubuntu.local` to the guest machine we just setup, we could add the following line to our `/etc/hosts` file:

172.16.179.102 ubuntu.local


## 4. Restart the VMWare daemons

Last thing to do is restart your VMWare daemons:

sudo “/Library/Application\ Support/VMware\ Fusion/boot.sh” –restart


* _original source_: http://crshlv.ly/rjlXdS
* _note_: These instructions have been tested on Snow Leopard only.