Through no fault of my own (I hope?), my implementation of HA was configured to use homeassistant:8123 instead of homeassistant.local:8123. The Raspberry Pi setup I followed states the following:
Within a few minutes you will be able to reach Home Assistant on homeassistant.local:8123. If you are running an older Windows version or have a stricter network configuration, you might need to access Home Assistant at homeassistant:8123
For whatever reason, mine selected the latter.
So when I go to connect Nest, Google requires a top level domain, but .local is exempt from this requirement. I wouldn’t have set it up this way (without *.local) if I’d had a choice.
You gets homeassistant:8123 instead of homeassistant.local:8123 because there is something else not working with mDNS protocol in your network environment. Likely you will have to make mDNS work from router setup, not from HA.
But then, mDNS or not, it’s minor and irreverent - because homeassistant.local:8123 is still NOT a top level domain you are (or Google is) looking for.
(I’m sure you have read the documentation on Nest integration, but) to connect to Nest:
Google applies strict Redirect URI validation rules to keep your login credentials secure. In practice, this means that you must access Home Assistant over SSL and a public top-level domain when setting up this integration. See the documentation on Securing or Troubleshooting, […]
To achieve this, you either (a) do as the documentation said: get yourself a domain, expose your HA to internet over SSL, and properly secure your HA setup. There are tons of discussions around this topic here and on YouTube.
If you are not sure how to do all that, alternatives would be to (b) go through Nabu Casa. Yes there’s a fee but it makes things dead simple.
So if you are ready to roll something yourselves (securely!) then go with (a). It’s a journey… and enjoy the ride!
Or go with (b), get the integration working and move on.