So I use a router that has NATloopback disable and I cannot access my duckdns localy. When out of the house it does work so no problem there. The problem come with chromecast TTS that cant use local ip to play audio. Since it cant resolve the duckdns ip localy nor the local ip. how should I go about this ?
I’ll tell you how I did it, the same may or may not work for you.
You probably have the base_url property set in order to go to your duckdns.org address, right? In the TTS component, there is a separate base_url property. I set this one to my internal IP address and without https. This allows the cast target device to connect back to your HA instance in order to receive the TTS MP3.
I am not sure if this matters, but I actually run nginx to provide my HTTPS front-end, and don’t have HTTPS configured in HA at all.
That works because you fo not have https configured on HA, With DuckDNS normally https is configured on HA. If you try https with the local IP you would get a certificate error.
Then without the nginx layer to separate HTTPS from the HA instance, I think you might be screwed here.
Unless you can get tts to ignore the certificate error.
I don’t think google cast devices will ignore that error. If there’s another solution to this problem, I’d love to hear it.
Read the part about Google Cast devices
Depending on the OPs in stallation, the nginx proxy may be the best option.
Mark as solve
I manage to block google dns via router “static route” block 18.104.22.168 and 22.214.171.124 forworded to 255.255.255.0 with gateway my router ip. also iv had my base url for duck dns as a https and set up a http base url for the tts google.