Я заметил, что прокси-служба DNS, которую я видел, использует openvpn и туннели, предположительно, только трафик DNS через VPN, который маскирует пользователей геолокации VPN и позволяет системе пользователей использовать свое первоначальное соединение для всего остального трафика.
Я мог видеть, что это очень полезно для проекта, над которым я работаю, который использует VPN, и трафик, который я хотел бы маршрутизировать через туннель, будет dns специально для определенных сайтов интрасети, которые у нас есть.
Я попытался подумать о том, как их настройка работает через openvpn, я не могу найти информацию о фильтрации источника / назначения openvpn. Я нашел примеры того, как администраторы openvpn фильтруют трафик клиентского доступа, чтобы один клиент openvpn мог разговаривать с другим клиентом openvpn, чего я не хочу.
Единственный способ добиться этого из того, что я могу придумать, - это если openvpn имеет параметр фильтрации для администраторов, который администратор может поместить в список фильтров IP-исключений. Например, если пользователь запрашивает через DNS для google.ca, фильтр исключений IP openvpn увидит, что google.ca (я знаю, что openvpn только до уровня 3, поэтому запрос на вход Google будет просто IP-адресом Google, который не в списке исключений) IP-адрес не является приемлемым IP-адресом для трафика через туннель, но если пользователь хочет поговорить с myIntranetServer.com, vpn знает, чтобы разрешить трафик через VPN.
Когда сервер openvpn запрещает прохождение IP-трафика google.ca из-за того, что IP-адрес Google не является IP-адресом в списке IP-адресов, которым разрешено передавать трафик через VPN, он отправляет уведомление клиенту openvpn для клиентской ОС, чтобы сделать DNS query вместо DNS-маршрута openvpn.
Поскольку я не знаком со всеми параметрами, которые предоставляет openvpn, и не могу найти явную информацию для этого типа настройки, что вы, ребята, думаете о том, как эта служба делает это?
Я нашел один пример, который немного затрагивает эту тему, но я не знаком с тем, как указать трафик: OpenVPN - клиентский трафик не полностью маршрутизируется через VPN
Изучая это с другой точки зрения, я обнаружил, что с помощью маршрутов openvpn можно передавать определенный контент.
Я обнаружил, что можно использовать следующий тип настройки:
# redirect all default traffic via the VPN
redirect-gateway def1
# redirect the Intranet network 192.168.1/24 via the VPN
route 192.168.1.0 255.255.255.0
# redirect another network to NOT go via the VPN
route 10.10.0.0 255.255.255.0 net_gateway
# redirect a host using a domainname to NOT go via the VPN
route www.google.ca 255.255.255.255 net_gateway
однако с последней переменной конфигурации:
# redirect a host using a domainname to NOT go via the VPN
route www.google.ca 255.255.255.255 net_gateway
когда он запрашивает разрешение google.ca, он фильтрует только первый IP-адрес в ответе на запрос.