У меня есть 2 сервера VPS, один в Китае и другой в США. Сервер (openvpn клиент) в Китае подключен к американскому через openvpn. У меня также есть сквид, работающий в китайском сервере. Я хочу перенаправить весь трафик к сквиду через туннель openvpn к американскому серверу. (таким образом, пользователи могут получить доступ к заблокированным сайтам включая youtube.com, Facebook, Твиттер и подобные). У меня в настоящее время есть весь выход http и трафик HTTPS на китайском сервере, проходящем туннель openvpn. Я проверяю это, потому что при посещении нормальных сайтов, общедоступный IP-адрес уже стал американским IP-адресом. Все же я все еще не могу получить доступ к заблокированным сайтам из-за загрязнения DNS, и все эти сайты решают к недостижимому IP-адресу. Как я могу обойти проблему загрязнения DNS в этом случае? Я знаю, что существуют другие способы обойти gfw (например, туннель SSH, VPN), но этот метод является самым удобным для обычных пользователей.
Если DNS все еще загрязняется, то, предположительно, клиенты используют свою первоначальную конфигурацию DNS-сервера.
Вы можете пересылать новую информацию о DNS-сервере клиентам с OpenVPN сервера как часть клиентской настройки
push "dhcp-option DNS 8.8.8.8"
Более подробно о параметрах push dhcp можно прочитать в документации. Вы даже можете подумать о настройке вашего собственного кэширующего DNS сервера и заставить ваших клиентов использовать его.
Вы делаете VPN маршрутом по умолчанию для клиентов, не так ли?