DNSとインフラストラクチャ · DomScan製品

DNSリゾルバー比較 APIリファレンス

CloudflareとGoogleの公開再帰DNSリゾルバーの応答を比較します。これはグローバルエニーキャストを使う2つのDoHサービスであり、地域別プローブや権威DNSサーバーではありません。

得られるもの

CloudflareとGoogleの公開再帰DNSリゾルバーの応答を比較します。これはグローバルエニーキャストを使う2つのDoHサービスであり、地域別プローブや権威DNSサーバーではありません。

同期一括RESTMCPSDKインタラクティブツール

この製品を選ぶ場面

対象ユーザー

トラブルシューティング、移行確認、インフラ調査、セキュリティレビューにこのスイートを使います。

この製品を選ぶ場面

設定済みの公開再帰リゾルバーからの応答を比較するときに選びます。世界全体への伝播を地理的に証明するものではありません。

得られるもの

CloudflareとGoogleの公開再帰DNSリゾルバーの応答を比較します。これはグローバルエニーキャストを使う2つのDoHサービスであり、地域別プローブや権威DNSサーバーではありません。

エンドポイント

統合する前に、サポートされる操作、入力、出力、実行モード、レスポンス制限を確認してください。

GET /v1/dns/propagation APIリファレンスを見る
POST /v1/dns/propagation/bulk APIリファレンスを見る
GET /v1/dns/servers APIリファレンスを見る

クレジットと認証

0-2 認証が必要。正確な料金と項目ごとの料金については、操作リファレンスを確認してください。

操作例

文書化された操作を使って、公開証拠を収集、評価、補足、検証、比較、保護、監視します。

GET /v1/dns/propagation クレジット: 2

クエリパラメータ

パラメータ タイプ 必須
domain string 必須
type string
許可された値 AAAAACNAMEMXTXTNSSOA
デフォルト A
オプション
expected string オプション

レスポンスフィールド

フィールド タイプ
domain string
record_type string
expected_value string | null
measurement_scope string
percentage_basis string
propagation_percentage number
fully_propagated boolean
consistent boolean
unique_values[] string[]
results[] object[]
results[] object
results[].server object
results[].server.name string
results[].server.ip string
results[].server.provider string
results[].server.location string
results[].server.country string
results[].server.scope string
results[].server.doh_endpoint string
results[].server.documentation_url string
results[].server.format string
results[].success boolean
results[].records[] string[]
results[].ttl integer | null
results[].response_time_ms integer
results[].error string | null
checked_at string
total_duration_ms integer
summary object
summary.total_servers integer
summary.successful integer
summary.failed integer
summary.matching_expected integer
propagation_summary object
propagation_summary.measurement_scope string
propagation_summary.percentage_basis string
propagation_summary.resolver_count integer
propagation_summary.successful_count integer
propagation_summary.failed_count integer
propagation_summary.propagation_percentage number
propagation_summary.fully_propagated boolean
propagation_summary.consistent boolean
propagation_summary.unique_value_count integer
propagation_summary.matching_expected_count integer
propagation_summary.expected_value_present boolean | null
propagation_summary.countries_checked integer
propagation_summary.providers_checked integer
propagation_summary.locations_checked integer
propagation_summary.slowest_resolver string | null
propagation_summary.slowest_response_ms integer | null
propagation_summary.fastest_response_ms integer | null
propagation_summary.disagreement_count integer
propagation_summary.confidence string
meta object
meta.served_by string

リクエスト例

curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/dns/propagation?domain=example.com&type=A&expected=192.0.2.1"
const response = await fetch("https://domscan.net/v1/dns/propagation?domain=example.com&type=A&expected=192.0.2.1", {
  headers: { "X-API-Key": process.env.DOMSCAN_API_KEY },
});
const data = await response.json();
console.log(data);
import os
import requests

response = requests.get(
    "https://domscan.net/v1/dns/propagation?domain=example.com&type=A&expected=192.0.2.1",
    headers={"X-API-Key": os.environ["DOMSCAN_API_KEY"]},
)
print(response.json())
package main

import (
	"fmt"
	"io"
	"net/http"
	"os"
)

func main() {
	req, err := http.NewRequest(http.MethodGet, "https://domscan.net/v1/dns/propagation?domain=example.com&type=A&expected=192.0.2.1", nil)
	if err != nil {
		panic(err)
	}
	req.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))

	resp, err := http.DefaultClient.Do(req)
	if err != nil {
		panic(err)
	}
	defer resp.Body.Close()

	data, err := io.ReadAll(resp.Body)
	if err != nil {
		panic(err)
	}
	fmt.Println(resp.Status, string(data))
}
require "json"
require "net/http"

uri = URI("https://domscan.net/v1/dns/propagation?domain=example.com&type=A&expected=192.0.2.1")
request = Net::HTTP::Get.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
  http.request(request)
end
puts JSON.pretty_generate(JSON.parse(response.body))

レスポンス例

{
  "domain": "example.com",
  "record_type": "A",
  "expected_value": "192.0.2.10",
  "measurement_scope": "configured_recursive_resolvers",
  "percentage_basis": "expected_value_match",
  "propagation_percentage": 100,
  "fully_propagated": true,
  "consistent": true,
  "unique_values": [
    "192.0.2.10"
  ],
  "results": [
    {
      "server": {
        "name": "Cloudflare 1.1.1.1",
        "ip": "1.1.1.1",
        "location": "Global anycast",
        "country": "GLOBAL",
        "provider": "Cloudflare",
        "scope": "global-anycast",
        "doh_endpoint": "https://cloudflare-dns.com/dns-query",
        "documentation_url": "https://developers.cloudflare.com/1.1.1.1/encryption/dns-over-https/make-api-requests/dns-json/",
        "format": "dns-json"
      },
      "success": true,
      "records": [
        "192.0.2.10"
      ],
      "ttl": 300,
      "response_time_ms": 38
    },
    {
      "server": {
        "name": "Google Public DNS",
        "ip": "8.8.8.8",
        "location": "Global anycast",
        "country": "GLOBAL",
        "provider": "Google",
        "scope": "global-anycast",
        "doh_endpoint": "https://dns.google/resolve",
        "documentation_url": "https://developers.google.com/speed/public-dns/docs/doh/json",
        "format": "dns-json"
      },
      "success": true,
      "records": [
        "192.0.2.10"
      ],
      "ttl": 300,
      "response_time_ms": 52
    }
  ],
  "checked_at": "2026-10-09T10:15:30.000Z",
  "total_duration_ms": 61,
  "summary": {
    "total_servers": 2,
    "successful": 2,
    "failed": 0,
    "matching_expected": 2
  },
  "propagation_summary": {
    "measurement_scope": "configured_recursive_resolvers",
    "percentage_basis": "expected_value_match",
    "resolver_count": 2,
    "successful_count": 2,
    "failed_count": 0,
    "propagation_percentage": 100,
    "fully_propagated": true,
    "consistent": true,
    "unique_value_count": 1,
    "matching_expected_count": 2,
    "expected_value_present": true,
    "countries_checked": 1,
    "providers_checked": 2,
    "locations_checked": 1,
    "slowest_resolver": "Google Public DNS",
    "slowest_response_ms": 52,
    "fastest_response_ms": 38,
    "disagreement_count": 0,
    "confidence": "high"
  }
}

HTTP ステータスコード

  • 200 成功
  • 400 不正なリクエスト
  • 401 未認証
  • 402 支払いが必要
  • 429 リクエスト過多

よくある質問

DNSリゾルバー比較のリクエストとレスポンスのリファレンスはどこで確認できますか?

DNSリゾルバー比較のAPIリファレンスで、パラメーター、レスポンスフィールド、例、ステータスコード、サポートされる操作モードを確認できます。

DNSリゾルバー比較の不明または不完全な結果はどのように解釈すべきですか?

不明または部分的な結果は、要求された証拠を完全には判定できなかったことを意味します。下流の判断では、結果の状態、信頼度、鮮度、制限を維持してください。

DNSリゾルバー比較の料金はどのように決まりますか?

料金は操作と実行モードによって異なります。現在のクレジット料金、認証要件、項目ごとのルールについては、エンドポイントリファレンスを確認してください。

これらの企業の担当者に使われています

InstantOutseerMongoDBRespondentSage Expense ManagementInstantlyD.R. HortonWhatConvertsAdobeLLM Pulse