コンテンツにスキップ

DNSフィルタリングのテスト

このセクションでは、Gateway DNS構成を検証する方法について説明します。

前提条件

開始する前に、ポリシーが適用されているDNSロケーションに関連付けられたネットワークに接続されていることを確認してください。

DNSポリシーのテスト

ドメインをブロックするDNSポリシーを作成したら、digまたはnslookupを使用してポリシーが意図した通りに機能しているかを確認できます。

たとえば、example.comをブロックするポリシーを作成した場合、Gatewayがexample.comを正常にブロックしているかを確認するには、次の手順を実行します。

  1. ターミナルを開きます。

  2. dig example.com(Windowsを使用している場合はnslookup example.com)と入力し、Enterを押します。

  3. ポリシーのブロックページが無効になっている場合、回答セクションに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.12162.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.12
    example.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に置き換えます
    • すべての文字を小文字にします

一般的なテストドメイン

カテゴリテストドメイン
Anonymizeranonymizer.testcategory.com
Command and Control & Botnetcommandandcontrolandbotnet.testcategory.com
Cryptominingcryptomining.testcategory.com
Malwaremalware.testcategory.com
New Domainsnewdomains.testcategory.com
Parked & For Sale Domainsparkedandforsaledomains.testcategory.com
Phishingphishing.testcategory.com
Private IP Addressprivateipaddress.testcategory.com
Spamspam.testcategory.com
Spywarespyware.testcategory.com
Unreachableunreachable.testcategory.com

EDNS構成のテスト

DNSロケーションに対してEDNSクライアントサブネットを有効にした場合、次の手順でEDNSを検証できます:

  1. DNSロケーションのDOHサブドメインを取得します:

    1. Zero Trustに移動し、Gateway > DNS Locationsを選択します。
    2. テストしているDNSロケーションを選択します。
    3. DNS over HTTPSの値をメモします。
  2. ターミナルを開き、次のコマンドを実行します:

    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
    }
  3. EDNSクライアントサブネットを確認するために、ソースIPアドレスを取得します:

    Terminal window
    curl ifconfig.me
    136.62.12.156%

    ソースIPアドレスは、EDNSクライアントサブネットで指定された/24範囲内である必要があります。

DNSキャッシュのクリア

最新のウェブブラウザとオペレーティングシステムは、DNSレコードを一定の時間キャッシュするように設計されています。DNSレコードのリクエストが行われると、ブラウザキャッシュが最初にチェックされる場所です。応答がすでにキャッシュされている場合、DNSポリシーが機能していないように見えることがあります。

DNSキャッシュをクリアするには:

ChromeOS

  1. chrome://net-internals/#dnsに移動します。
  2. ホストキャッシュをクリアを選択します。

Windows

  1. 管理者コマンドプロンプトまたはPowerShellを開きます。
  2. 次のコマンドを実行します:
Terminal window
ipconfig /flushdns

macOS

  1. ターミナルを開きます。
  2. 次のコマンドを実行します:
Terminal window
sudo killall -HUP mDNSResponder
sudo killall mDNSResponderHelper
sudo dscacheutil -flushcache