func (p *InstancePortTable) nextHost(host net.IP, from port.Port) port.HostPort { key := port.HostPort{host.String(), from} for { if _, ok := p.reserved[key]; !ok { p.reserved[key] = true return key } last := len(host) - 1 host[last]++ if host[last] == 255 { host[last-1]++ host[last] = 1 } key.Host = host.String() } panic("Unable to locate a valid host") }