INTEGRITY Документация

HTTP-запросы

Находясь в NetFlows мы можем анализировать байты и пакеты, поступающие на пограничные маршрутизаторы Cloudflare, тогда как в HTTP requests мы находимся уровнем выше, в Модель OSI ↗. HTTP requests анализирует полные HTTP-запросы от конечных пользователей, поступающие на сайты, обслуживаемые CDN ↗.

Большинство графиков в разделе Внедрение и использование ↗ раздела в Radar поступают из этого источника данных.

Эти конечные точки можно условно разделить на следующие группы:

Список конечных точек

Timeseries

Пример: почасовая разбивка по типу устройства

В этом примере мы запросим данные о трафике по типам устройств в глобальном масштабе, с указанием и без указания трафик ботов. Параметры для human серии: name=human&botClass=LIKELY_HUMAN&dateRange=1d. Для bot серии, параметры: name=bot&botClass=LIKELY_AUTOMATED&dateRange=1d:

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"
    }
  }
}

Мобильные устройства заметно чаще встречаются в трафике, создаваемом людьми, чем в трафике, создаваемом ботами.

Дополнительные сведения см. в Получение временных рядов по типам устройств.

Сводка

Пример: общая разбивка по типу устройства и трафику людей и ботов

Также можно посмотреть на эти данные иначе, запросив сводку по типам устройств за весь период, а не почасовую разбивку, как в предыдущем примере.

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>"

Ниже приведён сокращённый ответ:

{
  "success": true,
  "errors": [],
  "result": {
		"human": {
			"mobile": "54.967243",
			"desktop": "44.974006",
			"other": "0.058751"
		},
		"bot": {
			"desktop": "83.275452",
			"mobile": "16.707455",
			"other": "0.017093"
		}
  }
}

Дополнительную информацию см. в Справочник по API для этой конечной точки.

Пример: разбивка по версии IP и трафику людей и ботов

В следующем примере мы рассмотрим глобальное распределение трафика по версии IP, с учётом ботов и без них:

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>"

В результате возвращается следующее:

{
  "success": true,
  "errors": [],
  "result": {
		"human": {
			"IPv4": "76.213647",
			"IPv6": "23.786353"
		},
		"bot": {
			"IPv4": "91.492032",
			"IPv6": "8.507968"
		}
  }
}

Боты чаще используют адреса IPv4.

Также интересно узнать, насколько хорошо ваш интернет-провайдер справляется с внедрением IPv6. Если вам известен номер автономной системы (ASN) вашего интернет-провайдера, вы можете воспользоваться asn параметр для запроса этой информации. См. Справочник по API для других параметров.

Если вы не знаете ASN своего интернет-провайдера, используйте Radar ↗ чтобы узнать, что это такое.

Топ

Пример: топ локаций по трафику IPv6

В следующем примере мы определим, в каких локациях выше распространённость IPv6 ↗ за последние 28 дней.

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>"
{
  "success": true,
  "errors": [],
  "result": {
		"ipv6": [
			{
				"clientCountryAlpha2": "IN",
				"clientCountryName": "India",
				"value": "50.612747"
			},
			{
				"clientCountryAlpha2": "MY",
				"clientCountryName": "Malaysia",
				"value": "46.233654"
			},
			{
				"clientCountryAlpha2": "UY",
				"clientCountryName": "Uruguay",
				"value": "39.796762"
			},
			{
				"clientCountryAlpha2": "LK",
				"clientCountryName": "Sri Lanka",
				"value": "39.709355"
			},
			{
				"clientCountryAlpha2": "VN",
				"clientCountryName": "Vietnam",
				"value": "39.1514"
			}
		]
  }
}

Согласно полученным данным, Индия лидирует по внедрению IPv6.

Дополнительную информацию см. в Справочник по API для этой конечной точки.

Следующие шаги

См. Атаки на уровне приложений чтобы узнать больше о заблокированных HTTP-запросах.