         config.networkInterfaces = [{network: 'global/networks/default', accessConfigs:[]}]
         if opts.external
             # Also grant external network access (ephemeral by default)
-            config.networkInterfaces[0].accessConfigs.push(name: "External NAT", type: "ONE_TO_ONE_NAT")
-
-        if opts.storage
+            net =
+                name: "External NAT"
+                type: "ONE_TO_ONE_NAT"
+            if typeof(opts.external) == 'string'
+                if opts.external.indexOf('.') != -1
+                    # It's an ip address
+                    net.natIP = opts.external
+                else
+                    # name of a network interface
+                    opts.cb("creating static external net from interface name not yet implemented")
+                    return
+            config.networkInterfaces[0].accessConfigs.push(net)
+
+        if opts.storage? and opts.storage != ''
+            if typeof(opts.storage) != 'string'
+                opts.cb("opts.storage must be a string")
+                return
             config.serviceAccounts = [{email:'default', scopes:[]}]
             config.serviceAccounts[0].scopes.push("https://www.googleapis.com/auth/devstorage.#{opts.storage}")
 

            os          : undefined      # see https://github.com/stephenplusplus/gce-images#accepted-os-names
            tags        : undefined      # array of strings
            preemptible : false
            storage     : undefined      # 'read_write' provides read/write access to Google cloud storage
            external    : true
            cb          : required
        dbg = @dbg("create_vm(name=#{opts.name})")
        config = {}

                    changes.type = opts.type
                if opts.zone? and filename(data.zone) != opts.zone
                    changes.zone = opts.zone
                if opts.storage? and @_storage(data) != opts.storage
                    changes.storage = opts.storage
                if not opts.boot_size_GB?
                    cb(); return
                boot_disk = undefined
