コンテンツにスキップ

HTTPリクエスト

NetflowsではCloudflareのエッジルーターに到達するバイトとパケットを検査できますが、HTTPリクエストではOSIモデルの一層上に位置しています。HTTPリクエストは、CloudflareのCDNによって提供されるウェブサイトに到達するエンドユーザーからの完全なHTTPリクエストを検査します。

Radarの採用と使用セクションにあるほとんどのチャートは、このデータソースから来ています。

これらのエンドポイントは大きく分けて次のように分類できます:

  • timeseries: 一群のメトリクスの時系列。たとえば、IPバージョンを見ているときは、IPv4の時系列とIPv6の時系列を表示します。
  • summary: 指定された時間範囲内の一群のメトリクスの概要を表示します。たとえば、その期間中の総HTTPトラフィックに対するIPv4トラフィックの割合です。
  • top: 特定のメトリクスの採用によってランク付けされた上位の場所または自律システム(AS)のリスト。たとえば、モバイルデバイストラフィックによる上位の場所(その場所の総トラフィックに対するモバイルトラフィックの割合が高い場所など)。

エンドポイントのリスト

タイムシリーズ

例:デバイスタイプによる時間別内訳

この例では、ボットトラフィックの有無にかかわらず、グローバルにデバイスタイプ別のトラフィックをリクエストします。humanシリーズのパラメータはname=human&botClass=LIKELY_HUMAN&dateRange=1dです。botシリーズのパラメータはname=bot&botClass=LIKELY_AUTOMATED&dateRange=1dです:

Terminal window
curl "https://api.cloudflare.com/client/v4/radar/http/timeseries/device_type?name=human&botClass=LIKELY_HUMAN&dateRange=1d&name=bot&botClass=LIKELY_AUTOMATED&dateRange=1d&format=json&aggInterval=1h" \
--header "Authorization: Bearer <API_TOKEN>"

こちらが省略されたレスポンスです:

{
"success": true,
"errors": [],
"result": {
"human": {
"timestamps": ["2022-11-03T13:00:00Z", "2022-11-03T14:00:00Z", ".."],
"mobile": ["52.5532", "52.146628", ".."],
"desktop": ["47.394791", "47.800731", ".."],
"other": ["0.052009", "0.052642", ".."]
},
"bot": {
"timestamps": ["2022-11-03T13:00:00Z", "2022-11-03T14:00:00Z", ".."],
"desktop": ["83.833892", "84.017711", ".."],
"mobile": ["16.156748", "15.969936", ".."],
"other": ["0.00936", "0.012353", ".."]
},
"meta": {
"dateRange": {
"startTime": "2022-11-03T13:00:00Z",
"endTime": "2022-11-04T13:00:00Z"
},
"normalization": "PERCENTAGE"
}
}
}

モバイルデバイスは、人間が生成したトラフィックとボットが生成したトラフィックを比較すると、かなり多く存在する傾向があります。

詳細については、デバイスタイプのタイムシリーズを取得するを参照してください。

サマリー

例:デバイスタイプと人間/ボットトラフィックによる全体の内訳

同じ情報を、前の例のように時間ごとの内訳ではなく、全期間のデバイスタイプの内訳の概要を求めることでも見ることができます。

Terminal window
curl "https://api.cloudflare.com/client/v4/radar/http/summary/device_type?name=human&botClass=LIKELY_HUMAN&dateRange=1d&name=bot&botClass=LIKELY_AUTOMATED&dateRange=1d&format=json&aggInterval=1h" \
--header "Authorization: Bearer <API_TOKEN>"

こちらが省略されたレスポンスです:

"human": {
"mobile": "54.967243",
"desktop": "44.974006",
"other": "0.058751"
},
"bot": {
"desktop": "83.275452",
"mobile": "16.707455",
"other": "0.017093"
}

詳細については、このエンドポイントのAPIリファレンスを参照してください。

例:IPバージョンと人間/ボットトラフィックによる内訳

次の例では、ボットの有無にかかわらず、IPバージョンによるトラフィックのグローバルな内訳を調べます:

Terminal window
curl "https://api.cloudflare.com/client/v4/radar/http/summary/ip_version?name=human&botClass=LIKELY_HUMAN&dateRange=1d&name=bot&botClass=LIKELY_AUTOMATED&dateRange=1d&format=json&aggInterval=1h" \
--header "Authorization: Bearer <API_TOKEN>"

これにより、次のような結果が返されます:

"human": {
"IPv4": "76.213647",
"IPv6": "23.786353"
},
"bot": {
"IPv4": "91.492032",
"IPv6": "8.507968"
}

ボットはより多くのIPv4アドレスを使用する傾向があります。

ISPのIPv6採用状況を知ることも興味深いです。ISPの自律システム番号(ASN)を知っている場合は、asnパラメータを使用してこの情報を照会できます。その他のパラメータについては、APIリファレンスを参照してください。

ISPのASNがわからない場合は、Radarを使用してそれを見つけることができます。

トップ

例:IPv6トラフィックによる上位の場所

次の例では、過去28日間におけるIPv6の採用が高かった場所を見つけます。

Terminal window
curl "https://api.cloudflare.com/client/v4/radar/http/top/locations/ip_version/IPv6?name=ipv6&botClass=LIKELY_HUMAN&dateRange=28d&format=json&limit=5" \
--header "Authorization: Bearer <API_TOKEN>"
"ipv6": [
{
"clientCountryAlpha2": "IN",
"clientCountryName": "インド",
"value": "50.612747"
}, {
"clientCountryAlpha2": "MY",
"clientCountryName": "マレーシア",
"value": "46.233654"
}, {
"clientCountryAlpha2": "UY",
"clientCountryName": "ウルグアイ",
"value": "39.796762"
}, {
"clientCountryAlpha2": "LK",
"clientCountryName": "スリランカ",
"value": "39.709355"
}, {
"clientCountryAlpha2": "VN",
"clientCountryName": "ベトナム",
"value": "39.1514"
}
]

返されたデータによると、インドがIPv6の採用でリードしています。

詳細については、このエンドポイントのAPIリファレンスを参照してください。

次のステップ

アプリケーション層攻撃を参照して、軽減されたHTTPリクエストについてさらに学んでください。