function bootstrapClientIp() {
    // double check the Client IP (sometimes the Drone assignes 192.168.1.3)
    chrome.socket.getNetworkList(function(entries) {
      if (entries) {
        for (var i = 0; i < entries.length; i++) {
          if (entries[i] && entries[i].address
            && entries[i].address.indexOf("192.168.1.") == 0) {
            if (CLIENT_IP != entries[i].address) {
              CLIENT_IP = entries[i].address;
              log("Client IP changed to "+CLIENT_IP);
            }
            connectDrone();
            return;
          }
        }
      }
      callbacks.onConnectionError();
    });
  }
Called whenever one of our udp sockets receive messages