Un possibile svantaggio di usare i dns di Cloudflare è collegato alla mancanza dell'EDNS0 subnet client extension.
Porto un esempio: Akamai è una CDN che ha server dentro le reti degli operatori, in maniera tale da ridurre i costi per gli stessi e aumentare la velocità, fornendo contenuti in cache. I DNS del provider (e quelli che rispettano l'opzione definita sopra, come Google e OpenDNS), restituiscono i server locali. Cloudflare spesso no, perché sfrutta la sua immensa cache per offrire risposte veloci ma che possono essere fisicamente distanti (e spesso con molti hop in mezzo).
Questi due link spiegano meglio nel dettaglio i vari drawback della mancanza di edns-client-subnet.
Il vantaggio secondo Cloudflare? Maggiore privacy e possibilità di avere una grandissima cache generica. Inoltre, tante CDN sfruttano metodi più raffinati per stabilire il server migliore per l'utente.
Riporto un paio di link che secondo me sono interessanti:
https://www.saturnsoft.net/cdn/2014/08/29/analysis-edns-client-subnet-on-cdn/
https://www.samknows.com/blog/dns-over-https-performance
La mia "soluzione" è quella di usarli entrambi (nella versione DoT e DoH) forzando, su Pi-Hole, la risoluzione di alcuni domini specifici con i DNS di google (ad esempio, i domini di akamai.*, akamaiedge, quelli di netflix, cloudfront, ecc). Il resto invece tramite Cloudflare. All'atto pratico, l'80% dei domini viene risolto da Cloudflare, il rimanente 20% da Google.