Как прокси-сервер SOCK 5 для DNS работает в браузерах?

Браузеры могут проксировать DNS-запросы через SOCKS 5. Чего я не понимаю, так это того, как этот процесс работает.

Поправьте меня если я ошибаюсь. При нормальной работе DNS программа выполняет разрешение DNS через свою операционную систему, которая, в свою очередь, настроена на доступ к определенным DNS-серверам и выполнение запросов к ним. Таким образом, при нормальной работе браузер не должен сам делать DNS-запросы по сети.

Теперь, когда используется SOCKS-прокси, браузеру нужно выполнять собственные запросы. Как браузер узнает, какой DNS-сервер будет находиться на другом конце прокси-туннеля?


person dsign    schedule 13.10.2015    source источник


Ответы (5)


Тогда браузер не выполняет собственный поиск DNS. Я не знаю, есть ли реальные ситуации, в которых браузер будет говорить DNS с DNS-сервером. Но с настроенным прокси-сервером SOCKS5 браузер просто просит SOCKS5 подключиться к хостам, используя имя хоста хоста вместо его IP-адреса. Затем прокси-сервер SOCKS5 должен выполнить поиск.

Я знаю это, потому что поддерживаю реализацию SOCKS5.

person dsign    schedule 05.12.2015

Это зависит от вашего браузера. Firefox, например, отправляет имя хоста на SOCKS-прокси без его разрешения. Вы можете подтвердить это с помощью Wireshark.

PS. предположим, что вы используете прокси-сервер SOCKS5/4a. SOCKS4 не поддерживает имя хоста. Ссылка: https://en.wikipedia.org/wiki/SOCKS#SOCKS4a

person petertc    schedule 04.07.2019

Если вы не используете firefox about:config для изменения настроек DNS, перенастройте интерфейс адаптера Windows и установите

DNS2SOCKS.exe /la:socks.log 127.0.0.1:1080 8.8.8.8:53 127.0.0.1:53

Это настройки по умолчанию для google dns

см. DNS через прокси-сервер socks. Как изменить настройки Windows для разрешения домена.

person user5803375    schedule 18.01.2016

Возможны 3 варианта:

  • Программное обеспечение по-прежнему использует системный DNS для разрешения имени хоста и дает команду Socks-серверу подключиться к IP-адресу. Это может быть режим по умолчанию или единственный поддерживаемый режим для случаев, когда Socks реализован лениво.

  • Программное обеспечение дает команду серверу Socks подключиться к имени хоста. Этот режим может потребоваться настроить дополнительно; Firefox и старая Opera имеют специальные флаги для включения этого режима.

  • Программное обеспечение вручную выполняет поиск DNS с помощью UDP-over-Socks и дает команду Socks-серверу подключиться к IP-адресу. Самый сумасшедший режим, и он требует, чтобы программное обеспечение знало DNS-адрес, но теоретически это возможно.

person Fr0sT    schedule 27.11.2017

целевой адрес прокси может быть ipAddress или DOMAINNAME. Браузеры используют ДОМЕННОЕ ИМЯ .

person QiuChen    schedule 27.05.2020