キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
1261
閲覧回数
6
いいね!
3
コメント
tkitahar
Cisco Employee
Cisco Employee

 

2022 9 30 日現在の情報をもとに作成しています

 

1. はじめに

 

AnyConnect VPN 機能と Umbrella Roaming Security Module を併用している環境において、VPN 側のグループポリシーで Tunnel All DNS を有効にしている場合の互換性の問題について説明します。

 

AnyConnect Roaming Security Module: Tunnel All DNS Compatibility

https://support.umbrella.com/hc/en-us/articles/360000715106-AnyConnect-Roaming-Security-Module-Tunnel-All-DNS-Compatibility

 

2. Tunnel All DNS について

 

Tunnel All DNS は、VPN 終端装置である Cisco ASA のグループポリシー内の設定項目の 1 つで、VPN クライアントである AnyConnect が VPN 接続を行った際にその設定情報を受け取り、AnyConnect が DNS 通信を処理する際に使用されます。

 

具体的には、Tunnel All DNS が有効になっていると、AnyConnect がインストールされた PC 上で行われる DNS の名前解決は、VPN 接続の間、VPN トンネル経由でのみ行われるようになります。

 

これをより厳密に言うと、VPN トンネル経由の DNS の名前解決が失敗した直後にフォールバックとして行われる「物理インターフェース経由の名前解決」を無効化し、結果として、VPN トンネル経由のみとなるわけです。

 

つまり、この設定は DNS 通信に使われるインターフェースを変化させるものではなく、 一部インターフェース (具体的には VPN トンネル以外) の DNS 通信にフィルタをかける主旨のものであることに注意してください。

 

以下の公開文書の split-tunnel-all-dns の項にも詳しい説明があります。

 

Cisco ASA シリーズ コマンド リファレンス、S コマンド

https://www.cisco.com/c/ja_jp/td/docs/security/asa/asa-command-reference/S/cmdref3/s16.html

 

3. Umbrella Roaming Security Module による DNS 通信

 

Umbrella Roaming Security Module AnyConnect のモジュールの 1 つで、Umbrella が提供するスタンドアローン型ソフトウェアである Roaming Client AnyConnect に移植したものです。

 

そのため、AnyConnect Umbrella Roaming Security Module を追加すると、Roaming Client と同様に、PC 上で生成される DNS クエリーは暗号化され、Umbrella DNS サーバー (208.67.222.222/208.67.220.220) に転送されるようになります。

 

この暗号化通信は UDP ポート番号 443 で行われますが、経路途中のファイアウォールでブロックされるなどの理由により暗号化通信に失敗した場合、代わりに UDP ポート番号 53 の非暗号化通信が行われます。

 

また、非暗号化通信にも失敗した場合は、DNS の名前解決そのものも失敗に終わります。

 

4. 互換性の問題

 

以下の条件を満たす場合、PC 上で外部のドメインの名前解決ができなくなります。

 

  • Split-tunneling により内部ネットワークの通信が VPN トンネル経由で行われる
  • Tunnel All DNS を有効にしている
  • Umbrella Roaming Security Module を導入している
  • 暗号化された UDP 443 DNS 通信がブロックされる

 

具体的な動作について順を追って説明します。

 

まず、PC 上で DNS リクエストが生成された際、Umbrella Roaming Security Module によってパケットの暗号化と送信先の IP アドレスおよびポート番号の変更が行われます。

 

そして、Split-tunneling により、VPN 経由ではなく、物理インターフェースから DNS 通信が行われるように準備が整えられます。

 

この後に Tunnel All DNS の機能が動作しますが、前述のとおり、AnyConnect は VPN 経由ではない DNS の名前解決を無効にします。

 

ただし、この通信は UDP 443 に変更されているため、AnyConnect によって DNS 通信とはみなされず、実際には無効化されることなく、Umbrella の DNS サーバーに転送され、名前解決が行われます。

 

ここで、もし UDP 443 DNS 暗号化通信が何らかの理由でブロックされた場合、代わりに UDP 53 の非暗号化通信が行われますが、こちらは Tunnel All DNS の無効化対象となってしまうため、結局のところ名前解決が行われません。

 

なお、この事象には回避策が用意されており、Umbrella の DNS サーバー (208.67.222.222/208.67.220.220) への通信が VPN 経由で行われるように Split-tunneling の Include 設定に追加することで回避可能です。

 

しかし、Umbrella としては、関連したトラブルが発生しないようにするため、Umbrella Roaming Security Module 使用時は Tunnel All DNS そのものを併用しないことを推奨しています。

コメント

こんばんは。

AnyConnectでSplit Tunnelを利用した環境にUmbrella Roaming Security Moduleを追加する場合の設定・動作についてご教授いただけないでしょうか。

まず環境は下記の通りです。
・AnyConnect + Umbrella Roaming Security Module
・Split Tunnel機能を有効化
・Split DNS機能を有効化
・sample.co.jp ドメインを社内用で運用(利用)している。
・AnyConnect+UmbrellaをインストールしたノートPCは、社内LANに接続して使用する場合もあれば、社外に持ち出してスマホテザリングやホテルLANで使用する場合もある。

 

上記のような環境・条件において、下記を実現する事は可能でしょうか。
・社外にPCを持ち出してAnyConnect未接続の場合、Umbrellaの機能が動作して欲しいが、sample.co.jpドメインへのDNS問い合わせだけはUmbrella機能の対象外としたい。
・社外にPCを持ち出してAnyConnectを接続した場合、Umbrellaの機能が自動的に無効化されるか、sample.co.jpドメインへのDNS問い合わせだけはUmbrella機能の対象外としたい。
・社内LANにPCを接続している場合は、Umbrellaの機能が自動的に無効化されるか、sample.co.jpドメインへのDNS問い合わせだけはUmbrella機能の対象外としたい。

 

split tunnel / dns 機能が有効・無効になっているかによってUmbrellaの動作が変わるようなので、どのような構成・設定の場合、どのような動作になるのかが今一つよく分からずに困っております。
tkitahar様の豊富な知見にすがりたく、ご回答いただけましたら幸いです。

tkitahar
Cisco Employee
Cisco Employee

Split DNS に登録したドメインは、通常 DNS サフィックス検索一覧 (ipconfig /all で確認可能) に追加されますので、Umbrella Roaming Security Module は内部ドメインとして扱います。そのため、VPN 接続をした場合、一般的に当該ドメインの名前解決はトンネル経由で行われます。特定の環境における正確な動作については言及しかねるため、上記の動作を念頭において動作検証されることお勧めします。

こんばんは。

一部だけでもご回答いただけで有難いです。

おかげさまで少し理解が進みましたので、実環境でも検証してみたいと思います。

Getting Started

検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう

シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします