To change the temp on my Nest when I'm away from home there are 4 options I can see;
- central control via the manufacturer (thermostat talks to nest server, my app talks to nest server)
- dyndns with NAT hole punching or upnp (a way for my app to know what IP the nest is listening on and connect directly to it
- a vpn from my phone to my home and the app discovers the nest as a local network device. You still need a way to make the VPN connection to your router, bringing us back to dyndns or some way to discover your IP or hope it is static
- a P2P overlay network, such as what Krebs is complaining about, or more securely, a Tor hidden service.
- central control via the manufacturer (thermostat talks to nest server, my app talks to nest server)
- dyndns with NAT hole punching or upnp (a way for my app to know what IP the nest is listening on and connect directly to it
- a vpn from my phone to my home and the app discovers the nest as a local network device. You still need a way to make the VPN connection to your router, bringing us back to dyndns or some way to discover your IP or hope it is static
- a P2P overlay network, such as what Krebs is complaining about, or more securely, a Tor hidden service.