DNSフィルタリングのテスト
このセクションでは、Gateway DNS構成を検証する方法について説明します。
開始する前に、ポリシーが適用されているDNSロケーションに関連付けられたネットワークに接続されていることを確認してください。
ドメインをブロックするDNSポリシーを作成したら、digまたはnslookupを使用してポリシーが意図した通りに機能しているかを確認できます。
たとえば、example.comをブロックするポリシーを作成した場合、Gatewayがexample.comを正常にブロックしているかを確認するには、次の手順を実行します。
-
ターミナルを開きます。
-
dig example.com(Windowsを使用している場合はnslookup example.com)と入力し、Enterを押します。 -
ポリシーのブロックページが無効になっている場合、回答セクションに
REFUSEDが表示されるはずです:Terminal window dig example.com; <<>> DiG 9.10.6 <<>> example.com;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 6503;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0;; QUESTION SECTION:;example.com. IN A;; Query time: 46 msec;; SERVER: 172.64.36.1#53(172.64.36.1);; WHEN: Tue Mar 10 20:22:18 CDT 2020;; MSG SIZE rcvd: 29ポリシーのブロックページが有効になっている場合、回答セクションに
NOERRORが表示され、162.159.36.12と162.159.46.12が回答として表示されるはずです:Terminal window dig example.com; <<>> DiG 9.10.6 <<>> example.com;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR id: 14531;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 1452;; QUESTION SECTION:;example.com. IN A;;ANSWER SECTION:example.com. 60 IN A 162.159.36.12example.com. 60 IN A 162.159.46.12;; Query time: 53 msec;; SERVER: 172.64.36.1#53(172.64.36.1);; WHEN: Tue Mar 10 20:19:52 CDT 2020;; MSG SIZE rcvd: 83
セキュリティカテゴリまたはコンテンツカテゴリをブロックしている場合、各カテゴリに関連付けられたテストドメインを使用してポリシーが機能しているかをテストできます。
Gatewayポリシーをカテゴリをブロックするように構成すると、テストドメインにアクセスしようとするとブロックページが表示されるか、コマンドラインインターフェースでdigを実行するとREFUSEDが返されます。
-
1語のカテゴリ — 1語の名前のカテゴリ(例:Malware)の場合、テストドメインは次の形式を使用します:
<NAME_OF_CATEGORY>.testcategory.com -
複数語のカテゴリ — 名前に複数の単語が含まれるカテゴリ(例:Parked & For Sale Domains)の場合、テストドメインは次の形式を使用します:
- 単語間のスペースを削除します
&をandに置き換えます- すべての文字を小文字にします
| カテゴリ | テストドメイン |
|---|---|
| Anonymizer | anonymizer.testcategory.com |
| Command and Control & Botnet | commandandcontrolandbotnet.testcategory.com |
| Cryptomining | cryptomining.testcategory.com |
| Malware | malware.testcategory.com |
| New Domains | newdomains.testcategory.com |
| Parked & For Sale Domains | parkedandforsaledomains.testcategory.com |
| Phishing | phishing.testcategory.com |
| Private IP Address | privateipaddress.testcategory.com |
| Spam | spam.testcategory.com |
| Spyware | spyware.testcategory.com |
| Unreachable | unreachable.testcategory.com |
DNSロケーションに対してEDNSクライアントサブネットを有効にした場合、次の手順でEDNSを検証できます:
-
DNSロケーションのDOHサブドメインを取得します:
- Zero Trust ↗に移動し、Gateway > DNS Locationsを選択します。
- テストしているDNSロケーションを選択します。
- DNS over HTTPSの値をメモします。
-
ターミナルを開き、次のコマンドを実行します:
Terminal window curl 'https://<DOH_SUBDOMAIN>.cloudflare-gateway.com/dns-query?type=TXT&name=o-o.myaddr.google.com' -H 'Accept: application/dns-json' | json_pp出力には、EDNSクライアントサブネットが含まれているはずです:
{"AD": false,"Answer": [{"TTL": 60,"data": "\"108.162.218.211\"","name": "o-o.myaddr.google.com","type": 16},{"TTL": 60,"data": "\"edns0-client-subnet 136.62.0.0/24\"","name": "o-o.myaddr.google.com","type": 16}],"CD": false,"Question": [{"name": "o-o.myaddr.google.com","type": 16}],"RA": true,"RD": true,"Status": 0,"TC": false} -
EDNSクライアントサブネットを確認するために、ソースIPアドレスを取得します:
Terminal window curl ifconfig.me136.62.12.156%ソースIPアドレスは、EDNSクライアントサブネットで指定された/24範囲内である必要があります。
最新のウェブブラウザとオペレーティングシステムは、DNSレコードを一定の時間キャッシュするように設計されています。DNSレコードのリクエストが行われると、ブラウザキャッシュが最初にチェックされる場所です。応答がすでにキャッシュされている場合、DNSポリシーが機能していないように見えることがあります。
DNSキャッシュをクリアするには:
ChromeOS
chrome://net-internals/#dnsに移動します。- ホストキャッシュをクリアを選択します。
Windows
- 管理者コマンドプロンプトまたはPowerShellを開きます。
- 次のコマンドを実行します:
ipconfig /flushdnsmacOS
- ターミナルを開きます。
- 次のコマンドを実行します:
sudo killall -HUP mDNSRespondersudo killall mDNSResponderHelpersudo dscacheutil -flushcache