При использовании обычного DNS это было бы невозможно, но существует недавний стандарт для DNS через HTTPS, который может почти сработать для этого.
Я говорю почти потому, что разрешение DNS на прокси-сервере фактически не происходит, но вы можете использовать прокси-сервер для доступа к одному из общедоступных DNS-серверов через HTTPS (например, 8.8.8.8 [ https://dns.google.com/ экспериментальный] для Google или 1.1.1.1 [ https://cloudflare-dns.com/dns-query] для Cloudflare, или вы можете запустить свой собственный, используя мой код https://www.hardill.me.uk/wordpress/2018/ 04/14/ dns-over-https/)
например
curl -H "Content-Type: application/dns-json" "https://dns.google.com/resolve?name=www.google.com&type=A"
дает ответ как:
{
"Status": 0,
"TC": false,
"RD": true,
"RA": true,
"AD": false,
"CD": false,
"Question":[
{
"name": "www.google.com.",
"type": 1
}
],
"Answer":[
{
"name": "www.google.com.",
"type": 1,
"TTL": 134,
"data": "216.58.210.36"
}
]
}
Затем вы должны настроить curl (или любой другой пользовательский агент) на использование прокси для выполнения запроса, например
export HTTPS_PROXY=http://proxy.server.com:8080
curl -H "Content-Type: application/dns-json" "https://dns.google.com/resolve?name=www.google.com&type=A"
Как Chrome, так и Firefox могут быть настроены на разрешение DNS с использованием DNS через HTTPS в последних версиях