CNAME aliases to MagicDNS don't seem to work on Android

I am trying to figure out what exactly is going on with my (I thought) quite straight-forward setup:

  1. I enabled MagicDNS
  2. I’ve setup CNAME aliases on public DNS (I’m using Cloudflare) from my privately owned subdomain(s) to magicDNS names
  3. This setup seems to work on (all have tailscale and are, obviously, connected) MacBook and on an iPhone, but not on (any) Android browser (I use Samsung S21 with Android 12)

Here is DNS query response on my android (CNAME gets correctly resolved)

and here is what for example Firefox on Android shows:

(I am not allowed to upload 2nd image, but basically it’s “server ip can’t be found”)

Some ending remarks:

  1. I have waited enough for DNS propagation so I don’t think that’s a problem any more at this time (DNS query result is a proof)
  2. Latest Opera, Chrome, Firefox all fail in the same way on Android
  3. if I don’t use CNAME but an A record with tailscale-provided IPs everything is fine
  4. I turned off cloudflare proxying, just in case you are wondering if that might be an issue (but, anyway, it would probably be a problem on all OSes, not only Android)

Does anyone have any ideas, is there something on the OS level in my Android that could cause this?

Thanks!

I would use an A record here. Your tailscale ip (at this time) is stable, and won’t change unless your machine key changes.

I’m assuming there’s a reason you’re using an external DNS server instead of just using the magicdns name to resolve the machine?

Hi Jay,

A works, no problem there, but I still find CNAME not working only on Android a peculiar problem.

Reasons:

  1. Easiness of usage. I find the ones under my personal domain easier to use / more logical (to me)
  2. Multiple records can point to a single reverse proxy on a tailscale node, and in that case magicdns can’t help I think, it’s fully automated domain mapping to known tailscale nodes.

Milan

It is.

If you’re using Private DNS, it might be related to issues we’ve documented here: Tailscale breaks DNS-over-TLS on Android · Issue #915 · tailscale/tailscale · GitHub

Thanks Jay, sorry for the late reply. I will turn off Private DNS and try again