私が見たDNSプロキシサービスは、openvpnを利用し、VPNを介したDNSトラフィックのみを使用していることに気づきました。VPNの地理位置情報のユーザーをマスクし、ユーザーシステムが他のすべてのトラフィックに初期接続を使用できるようにします。
これは、VPNを利用する私が取り組んでいるプロジェクトに非常に役立ち、トンネルを介してルーティングされるトラフィックは、特定のイントラネットサイト専用のDNSになります。
Openvpnを介してそれらの設定がどのように機能するかを考えてみましたが、openvpnの送信元/宛先フィルタリングに関する情報が見つからないようです。私が見つけたのは、1つのopenvpnクライアントが別のopenvpnクライアントと通信できるようにクライアントアクセストラフィックをフィルタリングするopenvpn管理者の例です。
私が考えることができることからこれを達成する唯一の方法は、管理者が除外IPフィルターリストに配置できる管理者向けのフィルタリングオプションがopenvpnにある場合です。たとえば、ユーザーがDNS経由でgoogle.caを照会した場合、openvpn IP除外フィルターはgoogle.caを表示します(openvpnはlayer3までであることを知っているため、入ってくるgoogleのリクエストは単にgoogleのIPではありません除外リストのIP)は、トンネルを介したトラフィックの許容IPではありませんが、ユーザーがmyIntranetServer.comと通信したい場合、VPNはVPNを介したトラフィックを許可することを認識しています。
Openvpnサーバーは、google.caのIPトラフィックを拒否します。これは、googleのIPが、VPN経由でのトラフィックが許可されているIPのリストにあるIPではないため、クライアントOSがDNSを作成するための通知をopenvpnクライアントに送信します。 openvpnのDNSルートではなくクエリ。
私はopenvpnが提供するすべてのオプションに精通しておらず、このタイプのセットアップの明示的な情報を見つけることができないように思われるので、そのサービスがこれをどのように行っているかについて皆さんはどう思いますか?
件名に少し触れた1つの例を見つけましたが、トラフィックの指定方法がよくわかりません: 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のみをフィルターに掛けます。