メモのページ - チラシの裏メモ 3枚目

通信技術や気になった事を黙々とメモし続ける

Cloudflare DEXを使用してみた

Cloudflare Zero TrustにCloudflare DEXという新しいサービスが追加された。Cloudflare DEX(Digital Experience Monitoring)とは、Cloudflare Zero Trustに登録されているユーザの端末の監視やネットワークパフォーマンスのテストおよび評価を行う為のサービスである。
今回はCloudflare DEXの使用手順のメモ。


Cloudflare DEXとは
Cloudflare社は、エンドユーザの接続性やパフォーマンスを可視化する事を目的とした、Cloudflare Zero Trustサービスのうちの1つであるCloudflare DEXのベータ版のリリースを2023年6月に発表。Cloudflare Zero Trustの管理者はDEXを使用する事により、Cloudflare WARPが動作しているユーザ端末を監視をするだけでなく、管理者によって予め定義されたアプリケーションテストを実行する事が出来る。Cloudflare DEXはユーザ端末のライブ分析、サーバーとtracerouteとの間の通信のテスト、接続先のアプリケーションの監視、WARP展開に関するリアルタイムの監視などの為のフリートステータスなどの機能を備えている。
Zscalerのサービスで例えるとZscaler Digital Experience(ZDX)の超簡易版といった感じである。


 
 
Cloudflare DEXの主な機能
当記事を公開した段階では、以下の2つの機能が公開されている。
・Fleet Status:Cloudflare WARP経由でWebサービスやサーバに接続している全ての端末の接続状況やモードや位置のステータスに関するリアルタイムな情報を提供する。
・Tests:ユーザ端末がCloudflare WARP経由でプライベート エンドポイントまたはパブリック エンドポイントに接続出来るかどうかをテストする。 Tests機能を使用する事により、特定のアプリケーションの可用性を監視し、ユーザ端末から報告されたパフォーマンスの問題を調査出来る。
 
Fleet Statusについて
ユーザ端末と接続ステータスを監視し、以下の情報をほぼリアルタイムに表示する。
・Devices connected by data center:特定のCloudflareデータセンターに接続されているユーザ端末の数
・Connectivity Status:接続状態にある、Cloudflare WARPが稼働しているユーザ端末の割合。
・Mode:WARPモードで稼働しているCloudflare WARPの割合。
・Data center:特定のCloudflareデータセンタに接続されている端末の割合。
・Platform:接続している端末のOSの割合。
・Major Version:接続している端末で稼働しているCloudflare WARPのバージョン。

Testsについて
ユーザ端末がCloudflare WARP経由で接続できるかどうか以下のテストを実施する事が出来る。 ただしCloudflare Zero TrustのFree版を利用している為なのか、Cloudflare DEXがベータ版である為なのか不明であるが、現段階ではHTTP testのみ実行可能である。
・HTTP test:ユーザ端末から特定のWebアプリケーションに対しGETリクエストを送信する。 応答メトリックを使用し、接続の問題のトラブルシューティングを行う事が可能。
・Traceroute test:ユーザ端末〜サーバ区間にてIPパケットによる疎通確認を実施する。テスト結果を使用しネットワークの問題のトラブルシューティングを行う事が可能。


Cloudflare DEXによるユーザ端末の監視
では早速、Cloudflare DEXを使ってみる。Cloudflare WARPがインストールされた以下の3台を使用する。
Cloudflare Zero Trustのアカウントは既に持っている事とする。
・MacBook Pro 2020, macOS 13.4.1
・iPhone 8, iOS 16.5.1
・iPad mini 2, iOS 12.5.7

Cloudflare Zero Trustのアカウント作成および初期設定に関しては以下を参照。
https://debslink.hatenadiary.jp/entry/20221103/1667482863 Cloudflare Zero Trustを導入してみた - POC環境構築編
 
1.Cloudflare DEXにアクセス
Cloudflare Zero Trustにログインし、画面左側の「DEX」から「Monitoring」にアクセスする。
Cloudflare DEXに表示させたい端末は、WARPを立ち上げてあらかじめどこかのサイトにアクセスする。リアルタイムにCloudflare DEXに反映されるという事になっているものの、実感としては接続後数分でCloudflare DEXに反映されているように見える。

※画像をクリックすると拡大表示します

Cloudflare DEXのトップ画面は「Fleet Status」になっている。
上の画像のように「Devices connected by data center」に世界地図が表示され、「Connectivity Status」にグラフが表示されていれば、端末の情報がCloudflare DEXに反映されている事を示す。
上の画像では、3台の端末がCloudflare Zero Trust経由で接続済み、3台共に世界地図にマークされている場所のデータセンタに接続している事を示す。

2.Modeの表示
画像内右側のグラフの下部にある点の左側から2番目の点をクリック、またはグラフの右下(またはパーセント表示の少し上)にマウスカーソルを当てて矢印を表示させてクリックすると、「Mode」のグラフが表示される。
以下の画像では3台共にCloudflare WARP経由である事を示す。


 
3.Data centerの表示
画像内右側のグラフの下部にある点の左側から3番目の点をクリック、またはグラフの右下(またはパーセント表示の少し上)にマウスカーソルを当てて矢印を表示させてクリックすると、「Data center」のグラフが表示される。
以下の画像では3台共に「NRT」(千葉県の成田付近にあるデータセンタ)のデータセンタにアクセスしている事を示す。ほほう、Cloudflareの東京リージョンは成田なのか...


 
4.Platformの表示
画像内右側のグラフの下部にある点の左側から4番目の点をクリック、またはグラフの右下(またはパーセント表示の少し上)にマウスカーソルを当てて矢印を表示させてクリックすると、「Platform」のグラフが表示される。
以下の画像では、アクセスしている端末の66%(3台のうちの2台)のOSがiOS、33%(3台のうちの1台)がmacOSである事を示す。


 
5.Major Versionの表示
画像内右側のグラフの下部にある点の左側から5番目の点をクリック、またはグラフの右下(またはパーセント表示の少し上)にマウスカーソルを当てて矢印を表示させてクリックすると、「Major Version」のグラフが表示される。
以下の画像では、アクセスしている端末の66%(3台のうちの2台)のCloudflare WARPのバージョンが6.20(2302271927.1)、33%(3台のうちの1台)のCloudflare WARPのバージョンが2023.3.460.0である事を示す。

ちなみに、左側に表示されている世界地図は拡大表示が可能である。
世界地図の右上の+やーをクリックすると、Google Mapのような拡大や縮小の操作が可能である。当画面で拡大表示をすると成田空港あたりにあるデータセンタに接続している事が分かる。


 
7.Testの実施
せっかくなので、Cloudflare DEXのテスト機能を試してみる。
画像内左側の「Tests」をクリックすると「DEX Tests」の画面に遷移する。
「Create tests to monitor endpoints」欄内の「Add test」をクリックすると、Testの設定画面に遷移する。

上記の画像にて「Add test」をクリックすると「Cloudflare DEX Test」の画面に遷移する。
今回はHTTP Getのテストを実施する。当環境では「Basic information」欄内にて以下を設定した。
・Name:Cloudflare DEX Testとした
・Description:当環境では空欄のままとした

続けて「Configuration」欄内では以下を設定した。
・Target:HTTP Getのテストの為、テスト用に公開されているサイトのURLを入力した (下記リンク先を参照)
・Test type:HTTP Getが最初から選択されていた(他は選択が出来ない状態)
・Test frequency:デフォルト値の30(30分間)のまま
上記の設定を終えたら右下に有る「Save test」をクリックし設定内容を反映させる。

その後、以下の画面に遷移する。
設定内容の修正および削除の際は右端にある点3つをクリックし、修正の場合は「Manage」削除の際は「Delete」をクリックする。

テストの実行結果は「My Team」にて確認する事が出来る。
画面内左側の「My Team」から「Devices」に入り、Cloudflare WARPで接続している端末のうちのどれかを選択。
画面内右端にある点3つをクリックし「View」を選択する。

以下の画面に遷移したら「Tests」タブを選択する。
テストが実行されると以下の画像の内容のとおり、結果が表示される。
指定したURLに対しHTTP Getを実行した結果は421msである事が分かる。


今回はここまで。
Cloudflare DEXを使用し、Cloudflare Zero Trustの利用者の端末の監視とHTTP Getを使用した接続テストの作成と実行をした。
他のZero Trust Networkサービスの同様な機能と比較するとやや薄い感じがするが、当サービスはベータ版につき使用可能な機能の増減が発生する可能性が有る。今後もCloudflare DEXに時々アクセスし、Cloudflare DEXの使用感や機能をチェックし続けたい。


参照サイトや資料
Cloudflare Zero Trust公式ドキュメント
https://www.cloudflare.com/ja-jp/products/zero-trust/ Cloudflare Zero Trust
https://developers.cloudflare.com/cloudflare-one/insights/dex/ Cloudflare DEX(Digital EXperience monitoring)

Cloudflare公式チャンネル
https://www.youtube.com/watch?v=Lxp-LYbKwiY Cloudflare Zero Trust Network Access Demo
https://www.youtube.com/watch?v=scxdKDu3amI Q4 Cloudflare Zero Trust Live Demo

HTTP Getで使用したURLについて
https://yamitzky.hatenablog.com/entry/2016/05/13/204107 通信系テストのためのサイトのススメ

Cloudflare Zero Trust関連の記事
https://debslink.hatenadiary.jp/entry/20221103/1667482863 Cloudflare Zero Trustを導入してみた - POC環境構築編
https://debslink.hatenadiary.jp/entry/20221110/1668087871 Cloudflare Zero Trustを導入してみた - ポリシー設定編①
https://debslink.hatenadiary.jp/entry/20221123/1669181060 Cloudflare Zero Trustを導入してみた - ポリシー設定編②
https://debslink.hatenadiary.jp/entry/20221129/1669714627 Cloudflare Zero TrustとZscaler ZIAのポリシーについて
https://debslink.hatenadiary.jp/entry/20230321/1679325069 Cloudflare Zero TrustのIdPとしてOktaを導入してみた①
https://debslink.hatenadiary.jp/entry/20230415/1681545093 Cloudflare Zero TrustのIdPとしてOktaを導入してみた②