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

Региональные имена хостов

Региональные имена хостов представляют собой самый распространённый способ использовать Regional Services: вы назначаете проксированному имени хоста регион, и Cloudflare с помощью общих anycast IP-адресов направляет трафик для этого имени хоста в дата-центры соответствующего региона для завершения TLS-соединений и обработки. О других способах регионализации трафика читайте в Способы использования Regional Services.

Региональные имена хостов поддерживают управляемые регионы. Если вам нужен пользовательский регион, используйте Регионализированные приложения Spectrum или Регионализированные привязки IP взамен.

Вы можете настроить региональные имена хостов через дашборд или API.

Настройка Regional Services в дашборде

Чтобы использовать Regional Services, сначала создайте запись DNS в дашборде:

  1. На панели управления Cloudflare перейдите к разделу Записи страницу.

    Перейдите в Записи ↗
  2. Выполните следующие шаги, чтобы создать запись DNS.

  3. Из раздела Регион раскрывающемся списке выберите регион, который хотите использовать для домена. Это значение будет применяться ко всем DNS-записям с тем же именем хоста. Это означает, что если у вас есть две DNS-записи с одинаковым именем хоста и вы измените регион у одной из них, обе записи получат один и тот же регион.

См. таблицу на Доступные регионы и поддержка продуктов для полного списка доступных регионов, их описаний и поддержки продуктов

Настройка Regional Services через API

Вы также можете использовать Regional Services через API.

Пользователи с ролями Super Administrator, Administrator или Domain Administrator могут редактировать конфигурации Regional Services. Роль Domain Administrator Read Only в настоящее время не включает доступ на чтение к конфигурациям Regional Services. Используйте DNS: Read/Write разрешение API для /addressing/ endpoints для чтения или записи конфигураций Regional Services.

Вот несколько примеров запросов API.

Получить список всех доступных регионов

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
  • DNS Read
  • DNS Write
Получить список регионов
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/addressing/regional_hostnames/regions" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
Ответ
{
	"success": true,
	"errors": [],
	"result": [
		{
			"key": "ca",
			"label": "Canada"
		},
		{
			"key": "eu",
			"label": "Europe"
		}
	],
	"messages": []
}

Создайте новую запись регионального имени хоста

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
  • DNS Write
Create Regional Hostname
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/addressing/regional_hostnames" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"hostname": "ca.regional.ipam.rocks",
		"region_key": "ca"
	}'
Ответ
{
	"success": true,
	"errors": [],
	"result": {
		"hostname": "ca.regional.ipam.rocks",
		"region_key": "ca",
		"created_on": "2023-01-13T23:59:45.276558Z"
	},
	"messages": []
}

Получить список всех региональных имён хостов для зоны или получить одно конкретное имя хоста

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
  • DNS Read
  • DNS Write
Получить список региональных имён хостов
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/addressing/regional_hostnames" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
Ответ
{
	"success": true,
	"errors": [],
	"result": [
		{
			"hostname": "ca.regional.ipam.rocks",
			"region_key": "ca",
			"created_on": "2023-01-14T00:47:57.060267Z"
		}
	],
	"messages": []
}

Получить список всех региональных имён хостов для конкретной зоны

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
  • DNS Read
  • DNS Write
Fetch Regional Hostname
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/addressing/regional_hostnames/$HOSTNAME" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
Ответ
{
	"success": true,
	"errors": [],
	"result": {
		"hostname": "ca.regional.ipam.rocks",
		"region_key": "ca",
		"created_on": "2023-01-13T23:59:45.276558Z"
	},
	"messages": []
}

Изменение региона для конкретного имени хоста

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
  • DNS Write
Обновление регионального имени хоста
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/addressing/regional_hostnames/$HOSTNAME" \
	--request PATCH \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"region_key": "eu"
	}'
Ответ
{
	"success": true,
	"errors": [],
	"result": {
		"hostname": "ca.regional.ipam.rocks",
		"region_key": "eu",
		"created_on": "2023-01-13T23:59:45.276558Z"
	},
	"messages": []
}

Удаление конфигурации региона

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
  • DNS Write
Удаление регионального имени хоста
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/addressing/regional_hostnames/$HOSTNAME" \
	--request DELETE \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
Ответ
{
	"success": true,
	"errors": [],
	"result": null,
	"messages": []
}

Проверка региональной карты для Zero Trust

Чтобы проверить, что ваша региональная карта применяется правильно, проверьте IngressColoName поле в Zero Trust Network Session logs. В этом поле отображается название дата-центра Cloudflare, через который трафик поступил в сеть. Поскольку регионализация применяется до Gateway, дата-центр входа будет находиться в пределах настроенной региональной карты, что подтверждает, что трафик обрабатывается в нужном регионе.

Поддержка Terraform

Вы также можете настроить Regional Services с помощью Terraform. Подробнее см. в cloudflare_regional_hostname ресурс ↗ в документации Terraform.