← Cloudflare Spectrum / spectrum / reference
Коды ошибок
На этой странице описаны коды ошибок, которые возвращает Spectrum API, а также рекомендуемые исправления для устранения неполадок.
Как возвращаются ошибки
Ошибки Spectrum API соответствуют стандартному формату ошибок Cloudflare v4. Тело ответа содержит errors массив с code и message поля:
{
"errors": [
{
"code": 11044,
"message": "No matching routes in the specified virtual network."
}
],
"messages": [],
"success": false,
"result": null
}Общие ошибки (10xxx)
10002: непредвиденная внутренняя ошибка сервера
Во время обработки запроса произошла непредвиденная ошибка. Ответ не содержит диагностических сведений. Если вы обращаетесь в службу поддержки Cloudflare, укажите Ray ID из ответа, чтобы можно было определить исходную ошибку.
HTTP 503 означает, что зависимый сервис (например, DNS или управление IP-адресами) временно недоступен. HTTP 500 означает любую другую внутреннюю ошибку.
10012: неизвестное поле в JSON-запросе
Тело запроса содержит поле, которое API не распознаёт. Эта ошибка возвращается только для приложений на аккаунтах Pay-as-you-go. Приложения на плане Enterprise просто игнорируют неизвестные поля.
Аккаунты с оплатой по факту использования ограничены protocol, dns, а также origin_direct при создании или обновлении приложения Spectrum. Обычная причина в том, что аккаунт без прав на Spectrum отправляет полную конфигурацию Spectrum: любое поле, не входящее в эти три, будет отклонено.
Решение: Чтобы использовать полный API конфигурации Spectrum, обратитесь в свою команду по работе с аккаунтом для подключения Spectrum в качестве платного дополнения. В противном случае удалите все поля, кроме protocol, dns, а также origin_direct из запроса.
Ошибки конфигурации приложения (11xxx)
Эти ошибки возвращаются как HTTP 400, если не указано иное.
11000: неверная конфигурация источника
В запросе должно быть указано ровно одно значение из origin_direct или origin_dns. Указание обоих значений или ни одного из них вызовет эту ошибку.
11001: неверная конфигурация DNS источника
origin_dns конфигурация не прошла проверку. Частые причины:
-
origin_dns.nameне является допустимым доменным именем. - Не-SRV
origin_dns.typeбыл указан безorigin_port. -
origin_dns.ttlнаходится за пределами допустимого диапазона.
11002: неверный адрес источника
Один или несколько указанных адресов источника недействительны.
Частые причины:
- Источник IPv6 без скобок: Адреса IPv6 необходимо заключать в квадратные скобки в
origin_direct, напримерtcp://[2001:db8::1]:443. Без квадратных скобок двоеточия в адресе делают его разбор неоднозначным. - IP-адрес источника не проходит проверку контроля доступа: IP-адрес источника может не проходить внутреннюю проверку контроля доступа. Убедитесь, что IP-адрес указан верно и входит в разрешенный диапазон.
11004: неверная конфигурация DNS
Тип записи DNS должен соответствовать режиму выделения периферийных IP-адресов. Для динамических периферийных IP-адресов требуется type: "CNAME". Статические edge-IP-адреса (BYOIP) требуют type: "ADDRESS". Эта ошибка также возвращается, если вы пытаетесь изменить тип DNS при обновлении существующего приложения.
11014: FTP не включен
Тип трафика FTP не включён для аккаунта. Возвращается как HTTP 403.
Решение: Обратитесь в свою команду по работе с аккаунтом, чтобы включить поддержку FTP.
11018, edge_ips не включено
edge_ips функция (BYOIP) не включена для аккаунта. Возвращается как HTTP 403.
Решение: Обратитесь в свою команду по работе с аккаунтом, чтобы включить BYOIP для аккаунта.
11019, edge_ips не авторизовано
У аутентифицированного аккаунта нет прав на использование указанного edge_ips.
Частые причины:
- У API-токена отсутствуют разрешения на IP-префиксы: API-токены с областью действия Spectrum могут не включать разрешения на префиксы IP, необходимые для проверки BYOIP. Используйте Global API Key либо добавьте Аккаунт > IP-префиксы разрешение к API токену.
- Префикс BYOIP не выделен аккаунту: Перед назначением убедитесь, что префикс BYOIP выделен запрашивающему аккаунту.
11026: Argo Smart Routing не включен
Запрос установил argo_smart_routing к true, но Argo Smart Routing не включён для аккаунта. Возвращается как HTTP 403.
Решение: Обратитесь в свою команду по работе с аккаунтом, чтобы включить Argo Smart Routing для аккаунта.
11033, edge_ips используется
Один или несколько указанных edge_ips уже используется другой зоной.
Частая причина: запрошенный периферийный IP-адрес может быть занят устаревшим приложением Spectrum, оставшимся от удалённой зоны. Обратитесь в службу поддержки Cloudflare, чтобы удалить это приложение.
11034: невозможно создать больше приложений для этого протокола
Аккаунты с оплатой по факту использования ограничены одним приложением на протокол. Если вам нужно несколько приложений для одного протокола, обратитесь в свою группу по работе с клиентами, чтобы подключить Spectrum как платное дополнение.
11050: неверная межзональная конфигурация DNS источника
Запись DNS или Load Balancer, используемые в качестве источника, находятся в другой зоне или в зоне, для которой это не разрешено.
Решение: Перенесите запись DNS источника или Load Balancer в ту же зону либо используйте origin_direct с IP адресом вместо этого.
Ошибки источника в виртуальной сети
Следующие коды возвращает POST /zones/:zone/spectrum/apps и PATCH /zones/:zone/spectrum/apps/:id при проверке приложения, использующего источник в виртуальной сети.
11041: для виртуальной сети требуется прямой источник
virtual_network_id был установлен для запроса, использующего origin_dns. Источники виртуальной сети поддерживаются только для источников на основе IP-адресов.
Решение: Замените origin_dns с origin_direct и укажите приватный IP-адрес и единственный порт, на который маршрутизирует виртуальная сеть.
11042: для виртуальной сети требуется единственный источник
origin_direct содержит более одного адреса. Источники в виртуальной сети должны разрешаться в один приватный IP-адрес и порт.
Решение: Уменьшите origin_direct к одной записи вида tcp://<IP>:<PORT> или udp://<IP>:<PORT>.
11043: виртуальная сеть не поддерживает диапазон портов
Запрос содержал диапазон портов либо в origin_port или в origin_direct -адрес. Источники в виртуальной сети не поддерживают диапазоны портов.
Решение: Используйте один порт вместо диапазона. Если нужно открыть несколько портов, создайте отдельное приложение Spectrum для каждого порта.
11044: маршрут виртуальной сети не найден
Сочетание IP-адреса и virtual_network_id не соответствует ни одному маршруту в указанной виртуальной сети. Это возможно в двух случаях: виртуальная сеть не существует либо IP-адрес не маршрутизируется в пределах указанной виртуальной сети.
Решение:
- Убедитесь, что
virtual_network_idсоответствует виртуальной сети в вашем аккаунте. Список виртуальных сетей можно получить с помощью List virtual networks конечная точка. - Убедитесь, что IP-адрес источника входит в маршрут, привязанный к этой виртуальной сети. Список маршрутов можно получить с помощью команды Список сетевых маршрутов конечная точка.
- Если подходящего маршрута нет, добавьте его, следуя Подключите IP/CIDR.
11045: неверный UUID виртуальной сети
virtual_network_id не является допустимым UUID.
Решение: Укажите UUID. Идентификаторы виртуальных сетей возвращаются List virtual networks конечную точку в id поле в каждой записи.
Ошибки адресации (12xxx)
12005: превышена квота IPv4
В зоне уже выделены все доступные IPv4-адреса в рамках её квоты.
Решение: Объедините приложения на меньшем числе IP-адресов (несколько приложений могут использовать один хост на разных портах), приобретите дополнительные IP-адреса, управляемые Cloudflare, либо подключите BYOIP.
Ошибки протокола (13xxx)
13002: протокол недоступен
Запрошенный протокол недоступен для этой зоны. Сообщение об ошибке содержит конкретные периферийные порты, которые не разрешены для запрошенного протокола.
Ошибки хостов (16xxx)
16001: несоответствие зоны
Имя хоста с таким же DNS-именем уже существует, но принадлежит другой зоне. Это может произойти при создании или обновлении приложения, если поиск имени хоста находит запись, принадлежащую другой зоне.
Решение:
- Убедитесь, что в URL-адресе запроса API указан правильный идентификатор зоны.
- Используйте для приложения другое имя DNS.
- Если это имя DNS уже использовалось в другой зоне, которой вы управляете, сначала удалите приложение в этой зоне.
- Если ни одна из этих причин не подходит, обратитесь в службу поддержки Cloudflare: возможно, потребуется внутренняя очистка записи имени хоста.