Hello,
I’m using Home Assistant supervised and set SSL certificate with custom host name accoding to documentation. It’s very simple setup from technical point of view as I’m using public authority issued certificate (Sectigo). There is a split-DNS setup. In the local network, the LAN IP is resolved by the local DNS server (which is not the router), from external, the internet DNS servers resolve the external IP address (the external host name has an underlying fix IP, even not using ddns).
I can connect to Home Assistant from the LAN using web browsers (Edge, Firefox, even Safari on Apple devices), but cannot connect using the official iOS app. Connection ends up in error NSURLErrorDomain -1005
Server side setup:
Core: 2024.1.5
Supervisor: 2023.12.1
Operating System: 11.4
configuration.yaml
http:
server_port: 54635
login_attempts_threshold: 5
ssl_certificate: /ssl/ha_services_maydomain_com_fullchain.pem
ssl_key: /ssl/ha_services_mydomain_com_key.pem
Settings → System → Network
Running instance name on the local network: ha
IPv4 - Auto (Static reservation set up on the DHCP server by MAC)
iPv6 - Disabled (I’m not using IPv6 on my LAN)
Home Assistant URL Internet: https://ha.services.mydomain.com:54635
Home Assistant URL Local network: https://ha.services.mydomain.com:54635 (Auto switch disabled)
Clinet (app) side setup:
Both, internal and external URL set to https://ha.services.mydomain.com:54635
Tried with removing one or the other, but doesn’t change anything.
Some facts to save time:
- iOS devices are able to connect even from LAN using https in Safari. The SSL certificate is trusted, especially as it’s from public authority
- iOS devices are able to connect from external even using the app, this also works
- I’m not using AdGuard or any similar blockers on iOS devices, it’s all out of the box, no VPN, corporate mobile device management either.
- I’m even not hitting the router from the internal network so there is nothing in the game like NAT reflection, loopback protection, etc. My DNS server is on the LAN and it’s not the router, the traffic goes through the LAN switch only towards the local DNS server and to the home assistant server IP in the LAN.
Any idea would be appreciated how to overcome with this issue. The only thing which comes to my mind is the app cache the resolved IP , therefore it’s trying to connect the external IP even internal, but this is just guessing and don’t really want to go into assumptions and would keep the discussion on technical level.
last comment: I know how to set this up using http/80 on the internal network, but I don’t want to see http in 2024 anywhere as it’s very basic today to connect to service endpoints using ssl. If I would be fine with http, I would not open this thread at all. Many thanks for understanding and again any help is higly welcomed.