Tous les emplacements actifs · 99.99% uptime
SOCKS5

Où le DNS est-il résolu avec SOCKS5 ?

C'est l'erreur la plus silencieuse que commet un utilisateur de proxy : l'adresse IP a changé, le trafic passe bien par le proxy — mais l'information sur les sites que vous visitez fuit depuis votre réseau local. La cause tient à l'endroit où la résolution DNS est effectuée.

SOCKS5 offre ici un choix explicite, et ce choix se joue à une seule lettre : socks5 ? socks5h ou ?

Deux chemins différents

FIGURELe chemin de résolution des noms en socks5 et socks5h
FLUX1socks5 — résolution localeLe client interroge d'abord le DNSLa requête part vers le résolveur local et y laisseune trace2L'IP est transmise au proxyATYP = 0x01 (IPv4)3socks5h — résolution distanteLe nom de domaine est transmis au proxy (ATYP = 0x03)La différence tient à un seul octet : la valeur ATYP

socks5 Lorsque vous l'utilisez, le client résout lui-même le nom de domaine et transmet au proxy une IP déjà prête. Cela signifie que chaque site visité est consigné dans l'enregistrement DNS local.

Comment se produit la fuite ?

Lorsque la résolution est locale, la requête DNS part vers l'un des chemins suivants :

  • Vers le résolveur de votre fournisseur d'accès à Internet — les sites que vous visitez sont enregistrés.
  • Vers le serveur DNS du réseau d'entreprise — l'administrateur réseau voit votre trafic.
  • Vers un résolveur public — la requête est alors émise depuis votre IP réelle.

Dans ces trois cas, la confidentialité apportée par le proxy est en partie perdue. Pour un panorama complet des types de fuites, consultez le proxy est-il sûr notre article, et pour le test Test de DNS leak consultez notre outil.

La bonne configuration

FIGUREForcer la résolution distante
Usage correct et usage erroné01# INCORRECT — le DNS est résolu localement, il y a fuite02curl --socks5 proxy.example.com:1080 https://example.com03export ALL_PROXY="socks5://proxy.example.com:1080"0405# CORRECT — le DNS est résolu côté proxy06curl --socks5-hostname proxy.example.com:1080 https://example.com07export ALL_PROXY="socks5h://proxy.example.com:1080"0809# Python requests10proxies = {"https": "socks5h://kullanici:sifre@proxy.example.com:1080"} # correct11# proxies = {"https": "socks5://..."} # fuite1213# Node.js — socks-proxy-agent14new SocksProxyAgent("socks5h://proxy.example.com:1080") // correct

Dans le schéma, la lettre h signifie « hostname ». Cette différence d'une seule lettre marque la frontière entre fuite et confidentialité.

Critique

Les valeurs par défaut ne sont pas sûres. Dans de nombreuses bibliothèques, écrire socks5:// effectue une résolution locale. Lorsque vous rédigez votre configuration, choisissez délibérément socks5h cette option.

La situation dans les navigateurs

Lorsqu'ils utilisent SOCKS5, les navigateurs peuvent résoudre le DNS localement par défaut. Firefox dispose d'un réglage explicite pour changer cela :

NavigateurRéglageRésultat
Firefoxnetwork.proxy.socks_remote_dns → trueLe DNS est résolu côté proxy
ChromeUtilise le réglage proxy du systèmeComportement dépendant de la plateforme
Chrome (flag)--proxy-server="socks5://..."Effectue généralement une résolution distante

Au réglage de Firefox about:config vous pouvez accéder par cette voie. Pour les détails propres à chaque navigateur Paramètres proxy de Firefox consultez notre article.

Qu'en est-il avec un proxy HTTP ?

Avec un proxy HTTP, ce problème ne se pose généralement pas : comme l'URL complète ou la cible du CONNECT est envoyée sous forme de nom de domaine dans la ligne de requête, c'est le proxy qui effectue la résolution. Cela signifie qu'un proxy HTTP est, du point de vue du DNS, plus sûr par défaut.

FIGUREComportement de résolution DNS
COMPARATIFParamètreSOCKS5Résolution par défautCôté proxyCôté clientRisque de fuiteFaibleDépend de la configurationContrôleAutomatiqueChoix explicite avec socks5hConfidentialité du nom de domainePréservéePréservée avec socks5h

SOCKS5 est plus souple mais exige plus d'attention. Cette souplesse s'accompagne ici d'une responsabilité : c'est à vous de choisir le bon schéma.

Vérification

Testez que votre configuration effectue réellement une résolution distante :

FIGUREÉtapes de vérification d'une fuite DNS
est-ce suffisant, ou faut-il monter d'un palierLancez un test de fuite DNSLe résolveur affiché est-il dans le pays du proxy ?Contrôlez l'IP de sortieLe proxy est-il réellement actif ?Vérifiez que vous avez bien écrit socks5hContrôlez visuellement la configurationContrôlez le réglage du navigateurFirefox : socks_remote_dnsVidez le cache DNS du systèmeD'anciens enregistrements peuvent induire en erreurRépétez le test sur différents réseauxUn réseau d'entreprise peut se comporter différemment

Le test de fuite depuis notre page de test de fuite DNS vous pouvez le lancer, et votre IP de sortie Mon adresse IP avec.

Résumé

En SOCKS5, l'endroit où la résolution DNS est effectuée relève du choix du client, et la valeur par défaut est généralement non sûre. socks5h Utiliser ce schéma empêche l'information de nom de domaine de fuiter depuis le réseau local. Sur ce point, le proxy HTTP est plus sûr par défaut. Après avoir rédigé votre configuration, vérifiez impérativement avec un test de fuite — une lettre manquante peut réduire à néant, pour l'essentiel, l'intérêt d'utiliser un proxy.

Questions fréquentes

01Quelle est la différence entre socks5 et socks5h ?

socks5h envoie le nom de domaine au proxy et lui confie la résolution. socks5, en revanche, résout le nom de domaine localement et transmet au proxy une IP déjà prête ; dans ce cas, la requête DNS sort de votre réseau local.

02Pourquoi la fuite DNS est-elle importante ?

Même si votre adresse IP est masquée, les sites que vous visitez sont enregistrés par le résolveur local. Cela annule une part importante de la confidentialité qu'apporte l'usage d'un proxy.

03Comment supprimer la fuite DNS dans Firefox ?

Rendez-vous sur about:config et passez la valeur network.proxy.socks_remote_dns à true. Ce réglage fait en sorte que le DNS soit résolu côté proxy lorsqu'un proxy SOCKS est utilisé.

04Ce problème disparaît-il si j'utilise un proxy HTTP ?

Avec un proxy HTTP, c'est généralement le proxy qui effectue la résolution, si bien que le comportement par défaut est plus sûr. Il reste néanmoins recommandé de vérifier avec un test de fuite.

05Comment tester s'il y a une fuite ?

Lancez un outil de test de fuite DNS et observez la localisation des résolveurs affichés. Si des résolveurs de votre propre pays apparaissent alors que le proxy se trouve dans un autre pays, c'est qu'il y a une fuite.

Articles et pages associés

ÉTAPE SUIVANTE

Renforcez votre infrastructure proxy dès aujourd'hui.

Démarrez en quelques minutes avec un forfait payant, ou essayez d'abord notre liste de proxys gratuits.

FREEPROXY.TR

Vous cherchez un proxy gratuit ? Vous êtes au bon endroit

Une plateforme proxy complète pour consulter des adresses de proxy gratuits à jour, comparer les types HTTP et SOCKS et vérifier vos connexions proxy avec des outils gratuits.