dig @resolver.example -p 443 +tcp はTCPでポート443へDNSクエリを送ります。DNSCryptのネゴシエーションは行いません。

これは、プロキシのDNSヘルパーを暗号化リゾルバー向けに変更するときに重要です。サービスは見慣れたポートで待ち受けながら、まったく別のワイヤー形式を期待していることがあります。

上流との暗号化されたやり取りには、DNSCryptを理解するリゾルバーコンポーネントを使ってください。それがローカルの通常DNSインターフェースを公開しているなら、従来のDNSヘルパーは文書化されたアドレスとポートでそのインターフェースに問い合わせられます。

2つの区間を明示的に保ちます。ヘルパーからローカルリゾルバーへ、次にリゾルバーから上流へ。前半が動いても、後半が意図したプロキシ経路を通ることは証明されません。

同じ区別はDNS over HTTPSとDNS over TLSにも当てはまります。dig のポート番号を変えてもプロトコルのアダプターにはなりません。HTTPベースの別インターフェースにはGoogle Public DNSへのHTTPS JSONクエリを使ってください。タイムアウトをまた壊れたSOCKSサーバーと解釈する前に、エンドポイントの契約を確認してください。

関連記事