← Cloudflare One / cloudflare-one / networks / connectors / cloudflare-tunnel / private-net / cloudflared
Подключите частное имя хоста
Вместо управления статическими списками IP-адресов и маршрутами вы можете подключать пользователей к частным HTTP- и не-HTTP-приложениям по их именам хостов (например, wiki.internal.local). Маршруты для приватных имен хостов особенно полезны, когда у приложения неизвестный или временный IP-адрес, что часто бывает при развертывании инфраструктуры сторонним облачным провайдером.
Запросы
wiki.internal.local- DNS-запрос
Возвращает токен-IP, а затем переписывает адрес назначения на настоящий IP-адрес.
172.64.128.0/20- Маршрут хоста
Перенаправляет трафик в вашу частную сеть либо выводит его в публичный интернет
- Частный хост
wiki.internal.local·10.0.0.50
Когда пользователь запрашивает приватное имя хоста, Cloudflare Gateway назначает исходный разрешённый IP-адрес для маршрутизации трафика через ваш туннель на нужный приватный IP-адрес. По умолчанию этот IP-адрес выбирается из публичного диапазона IPv4, принадлежащего Cloudflare (172.64.128.0/20) а не пространство Carrier-Grade NAT (CGNAT), поэтому это не вызывает Ограничения Local Network Access в Google Chrome. Вы также можете настроить пользовательский диапазон если он конфликтует с вашей существующей сетью. Подробное описание архитектуры и прохождения пакетов см. в нашем запись в блоге с анонсом ↗.
Поддерживаемые точки входа и выхода
В таблице ниже перечислены продукты Cloudflare One, совместимые с маршрутизацией по приватным именам хостов. Пояснения по чтению таблицы приведены в её легенде.
✅ Продукт работает без оговорок
🚧 Продукт можно использовать с некоторыми оговорками
❌ Продукт нельзя использовать
Подключение устройства
Конечные пользователи могут подключаться к частным именам хостов, используя следующие on-ramps:
| Способ точки входа | Совместимость |
|---|---|
| Cloudflare One Client | ✅ |
| PAC-файлы | ✅ |
| Browser Isolation | ✅ |
| Cloudflare Mesh | ✅ |
| Cloudflare WAN | 🚧1 |
Доступность функций
| Режимы клиента |
|---|
| Режим Traffic and DNS |
| Система | Доступность | Минимальная версия клиента |
|---|---|---|
| Windows | ✅ | 2025.4.929.0 |
| macOS | ✅ | 2025.4.929.0 |
| Linux | ✅ | 2025.4.929.0 |
| iOS | ✅ | 1.11 |
| Android | ✅ | 2.4.2 |
| ChromeOS | ✅ | 2.4.2 |
Сноски
-
Несовместимо с Маршрутизация ECMP. Чтобы маршрутизация по имени хоста работала, DNS-запросы и результирующий сетевой трафик должны поступать в Cloudflare через один и тот же туннель IPsec/GRE.
↩
Подключение к приватной сети
Маршрутизация частных имён хостов работает с off-ramps, перечисленными ниже. Другие off-ramps для трафика требуют маршрутов на основе IP-адресов.
| Connector | Совместимость | Минимальная версия |
|---|---|---|
| cloudflared | ✅ | 2025.7.0 |
| Cloudflare Mesh | ✅ | 2026.6.822.0 (Linux) |
| Cloudflare WAN | ❌ |
Подключите частное имя хоста
В этом разделе описано, как включить удаленный доступ к приложению с приватным именем хоста с помощью cloudflared.
Предварительные требования
Прежде чем подключаться к частным именам хостов, необходимо включить прокси Gateway.
- Перейдите в Политики трафика > Настройки трафика.
- В Прокси и проверка, включите Разрешить Secure Web Gateway проксировать трафик.
- Выберите TCP.
- Выберите UDP (требуется для проксирования трафика к внутренним DNS-резолверам).
- (Рекомендуется) Чтобы проксировать трафик для диагностических инструментов, таких как
pingиtraceroute, выберите ICMP. Вам также может понадобиться обновить вашу систему чтобы разрешить трафик ICMP черезcloudflared.
-
Добавьте следующее разрешение в свой
cloudflare_api_token↗:Zero Trust Write
-
Включите прокси TCP и/или UDP с помощью
cloudflare_zero_trust_device_settings↗ ресурс:resource "cloudflare_zero_trust_device_settings "global_warp_settings" { account_id = var.cloudflare_account_id gateway_proxy_enabled = true gateway_udp_proxy_enabled = true }
Теперь Cloudflare проксирует трафик с зарегистрированных устройств, за исключением трафика, исключенного в вашем настройки Split Tunnel. Подробнее о том, как Gateway перенаправляет трафик, см. в Gateway proxy.
Ваши устройства также должны перенаправлять в Cloudflare следующий трафик:
- Начальные полученные IP-адреса:
- IPv4:
172.64.128.0/20 - IPv6:
2606:4700:0cf1:4000::/64
Это диапазон по умолчанию. Вы можете настроить пользовательский начальный диапазон разрешённых IP-адресов для IPv4, если он конфликтует с вашей существующей сетью.
- IPv4:
- DNS-запросы для вашего частного имени хоста
Шаги настройки зависят от используемого on-ramp устройства:
Клиенты Cloudflare One
-
В своём WARP профиль устройства, настройте Split Tunnels так, чтобы Исходные разрешённые IP-адреса направляются через туннель WARP. Конфигурация зависит от вашего Режим Split Tunnels:
- Режим Exclude: Удалите
100.64.0.0/10из списка Split Tunnels. Мы рекомендуем повторное добавление диапазонов IP-адресов которые явно не используются для сервисов Cloudflare One. Это снижает риск конфликтов с существующими конфигурациями частной сети, которые могут использовать адресное пространство CGNAT. - Режим Include: Добавьте записи Split Tunnel для следующих IP-адресов:
- IPv4:
172.64.128.0/20 - IPv6:
2606:4700:0cf1:4000::/64
Это диапазон по умолчанию. Вы можете настроить пользовательский начальный диапазон разрешённых IP-адресов для IPv4, если он конфликтует с вашей существующей сетью.
- IPv4:
- Режим Exclude: Удалите
- В Local Domain Fallback, удалите домен верхнего уровня своего приватного имени хоста. Это настроит WARP, чтобы он отправлял DNS-запрос в Cloudflare Gateway для разрешения.
Cloudflare Mesh
Чтобы направить трафик имени хоста к узлу Mesh вместо cloudflared туннель, добавьте маршрут по имени хоста к узлу. Исходный разрешённый IP-адрес, указанный выше, должен направляться через Cloudflare как в профиле узла Mesh, так и в профиле клиентского устройства. Для частного имени хоста узел также должен уметь разрешать это имя хоста (через локальный файл hosts или политику DNS-резолвера Gateway). См. Маршруты хоста.
Cloudflare WAN
- Убедитесь, что исходный разрешённый IP-адрес, указанный выше маршрутизировать через Cloudflare WAN в Cloudflare.
- Направьте DNS-резолвер для вашей сети Cloudflare WAN в Cloudflare Gateway.
1. Подключите приложение к Cloudflare
-
Войдите в панель управления Cloudflare и перейдите в Сеть > Tunnels.
Перейдите в Tunnels ↗ -
Выберите Создать туннель.
-
Введите имя туннеля. Рекомендуем выбрать имя, отражающее тип ресурсов, которые вы хотите подключить через этот туннель (например,
enterprise-VPC-01). -
Выберите Create Tunnel.
-
Выберите операционную систему, затем скопируйте команду установки и выполните её в терминале на вашем исходном сервере.
-
Дождитесь подключения туннеля. После установления соединения выберите Продолжение.
-
После подключения туннеля перейдите в его Маршруты и выберите Добавить маршрут, затем выберите Частное имя хоста.
-
Введите полное доменное имя (FQDN), представляющее ваше приложение (например,
wiki.internal.local).Ограничения формата имени хоста
- Ограничение символов: Должно быть короче 255 символов.
- Поддерживаемые подстановочные знаки: Один подстановочный знак (
*) допускается, и она должна представлять собой полную DNS-метку. Пример:*.internal.local - Неподдерживаемые подстановочные знаки: Следующие форматы подстановочных знаков не поддерживаются:
- Частичные подстановочные знаки, такие как
*-dev.internal.localилиdev-*.internal.local. - Подстановочные знаки в середине, например
foo*bar.internal.localилиfoo.*.internal.local. - Несколько подстановочных знаков в имени хоста, например
*.*.internal.local.
- Частичные подстановочные знаки, такие как
- Усечение подстановочных знаков: Начальные подстановочные знаки (
*) обрезаются, и неявная точка (.) принимается по умолчанию. Например,*.internal.localсохраняется какinternal.localно будет соответствовать всем поддоменам на уровне wildcard (охватываетfoo.internal.localно неfoo.bar.internal.local). - Удаление точек: Начальные и конечные точки (
.) разрешены, но обрезаются.
-
Выберите Save.
2. Настройте разрешение DNS
Когда Gateway получает запрос к вашему приватному имени хоста, он должен разрешить это имя хоста в приватный IP-адрес. Настроить это можно двумя способами, в зависимости от топологии вашей сети.
Сценарий A: использование системного резолвера (по умолчанию)
По умолчанию cloudflared использует приватный DNS-резолвер, настроенный на своей хост-машине (например, в /etc/resolv.conf в Linux).
Если на машине, где запущен cloudflared уже может разрешать wiki.internal.local к его частному IP-адресу с помощью локального системного резолвера, дальнейшая настройка не требуется. Можно сразу перейти к Шаг 3.
Сценарий B: использование определённого частного DNS-сервера (расширенный)
Если вам нужно cloudflared чтобы использовать определённый внутренний DNS-сервер, отличный от резолвера узла по умолчанию, необходимо явно подключить этот DNS-сервер к Cloudflare через Маршрут IP/CIDR. Вам также потребуется настроить Политика Resolver в Gateway для маршрутизации запросов на этот конкретный приватный DNS-сервер.
-
Чтобы создать маршрут IP/CIDR для DNS-сервера:
-
Перейдите в Сеть > Маршруты.
Перейдите в Маршруты ↗ -
Выберите Добавление маршрута CIDR.
-
Введите приватный IP-адрес вашего внутреннего DNS-резолвера.
-
Выберите Cloudflare Tunnel, который подключается к сети, где находится этот DNS-сервер.
-
Выберите Создание.
-
-
Чтобы создать политику Resolver:
- Перейдите в Политики трафика > Резолвера политики.
- Выберите Создать политику.
- Создайте выражение, которое соответствует приватному имени хоста:
Селектор Оператор Значение Host in wiki.internal.local - В разделе Настройте пользовательские DNS-резолверы, введите приватный IP-адрес вашего внутреннего DNS-сервера.
- В раскрывающемся меню выберите
- Privateпараметр маршрутизации и виртуальная сеть назначенная туннелю, который вы выбрали на предыдущем шаге. - Выберите Создать политику.
3. (Рекомендуется) Фильтруйте сетевой трафик с помощью Gateway
По умолчанию все устройства, зарегистрированные в вашей организации Zero Trust, могут подключаться к вашей частной сети через Cloudflare Tunnel. Вы можете настроить Gateway так, чтобы он проверял сетевой трафик и блокировал или разрешал доступ на основе личности пользователя и состояния устройства. Подробнее о проектировании политик см. в Защитите своё первое приложение.
Чтобы запретить пользователям Cloudflare One Client доступ ко всей вашей частной сети, рекомендуем создать catch-all-политика блокировки Gateway для вашего частного IP-пространства. После этого вы можете добавить политики Allow с более высоким приоритетом (в Access или Gateway), которые предоставляют пользователям доступ к конкретным приложениям или IP-адресам.
Вариант 1: приложение Access (рекомендуется)
Вы можете создать Самостоятельно размещённое приложение Access для вашего частного имени хоста и настройте Политики доступа в этом приложении. Эта опция позволяет управлять доступом пользователей наряду с вашими SaaS и другими веб-приложениями.
Вариант 2: политики брандмауэра Gateway
Если вы предпочитаете защищать приложение по традиционной модели межсетевого экрана, можно создать сетевые политики Gateway с помощью SNI или SNI Domain селектор. Для дополнительного уровня защиты добавьте политику DNS Gateway, чтобы разрешить или заблокировать Host или Домен разрешаться.
Примеры сетевых политик
Следующий пример состоит из двух политик: первая разрешает определённым пользователям доступ к вашему приложению, а вторая блокирует весь остальной трафик.
- Разрешить сотрудников компании
| Селектор | Оператор | Значение | Логика | Действие |
|---|---|---|---|---|
| SNI | in | wiki.internal.local |
И | Allow |
| User Email | matches regex | .*@example.com |
- Общая политика блокировки
| Селектор | Оператор | Значение | Действие |
|---|---|---|---|
| IP-адрес назначения | in | 10.0.0.0/8 |
Block |
Пример политики DNS
| Селектор | Оператор | Значение | Логика | Действие |
|---|---|---|---|---|
| Host | in | wiki.internal.local |
И | Allow |
| User Email | matches regex | .*@example.com |
4. Протестируйте соединение
Теперь конечные пользователи могут открыть приложение, перейдя на его частное имя хоста. Например, чтобы подключиться к частному веб-приложению, откройте браузер и перейдите по адресу wiki.internal.local.
Устранение неполадок
Если подключиться не удается, проверьте следующее:
-
Подтвердить разрешение DNS: На устройстве убедитесь, что вам удаётся успешно разрешить частное имя хоста:
nslookup wiki.internal.localServer: 127.0.2.2 Address: 127.0.2.2#53 Non-authoritative answer: Name: wiki.internal.local Address: 172.64.128.48Запрос должен разрешаться с использованием DNS-прокси WARP и верните Gateway исходный разрешённый IP-адрес. Если запрос не разрешается или возвращает другой IP-адрес, проверьте свои Local Domain Fallback конфигурация и Политики резолвера Gateway.
-
Проверить журналы Gateway: Проверьте свои Журналы Network Gateway и проверьте, блокируется ли подключение какой-либо политикой.
-
Проверить статус туннеля: Убедитесь, что ваш туннель исправен и подключён, проверив статус туннеля.
-
Протестировать подключение к изначально разрешённому IP: Когда вы подключаетесь к приложению по его частному имени хоста, устройство должно устанавливать соединение с исходный разрешённый IP-адрес:
curl -v4 http://wiki.internal.local* Trying 172.64.128.48:80... * Connected to wiki.internal.local (172.64.128.48) port 80 ...Если запрос завершается ошибкой, убедитесь, что первоначально разрешённый IP-адрес маршрутизируется через туннель WARP. Вы также можете проверить журналы туннеля чтобы убедиться, что запросы маршрутизируются к частному IP-адресу приложения.
Ограничения
Google Chrome ограничивает доступ к частным именам хостов
Начиная с Chrome 142 ↗, Local Network Access (LNA) ограничивает запросы с веб-сайтов к локальным IP-адресам. LNA реализован на уровне движка Chromium, поэтому это затрагивает все браузеры на основе Chromium (например, Microsoft Edge, Brave и Opera), а не только Google Chrome. Это может затронуть аккаунты, у которых Gateway диапазон исходных разрешённых IP-адресов по-прежнему выбирается из адресного пространства Carrier-Grade NAT (CGNAT) (100.64.0.0/10) например, устаревший диапазон по умолчанию 100.80.0.0/16, или пользовательский диапазон, настроенный в пространстве CGNAT. Такие браузеры относят подобные адреса к локальной сети. Когда сайт, загруженный с публичного IP-адреса, отправляет подзапросы к домену, который изначально был разрешён в IP-адрес из этого диапазона, браузер расценивает это как запрос из публичной сети в локальную и показывает пользователю запрос на разрешение доступа к устройствам локальной сети. Браузер блокирует запросы к этим доменам, пока пользователь не примет этот запрос.
Обычно это происходит, когда Политика Egress совпадает с часто используемыми доменами (например, cloudfront.net или github.com), из-за чего подзапросы с общедоступных страниц разрешаются в пространство CGNAT.
Учетные записи, использующие текущий стандартный начальный диапазон разрешенных IP-адресов (172.64.128.0/20) не затрагиваются, поскольку этот диапазон относится к публичному адресному пространству Cloudflare, а не к CGNAT. Если ваш аккаунт был создан до изменения этого значения по умолчанию или вы настроили собственный диапазон в пространстве CGNAT, обратитесь к Настройте начальные разрешённые IP-адреса и перейдите на диапазон адресов вне CGNAT, вместо того чтобы использовать следующие обходные пути для браузера.
Приведённые ниже обходные решения используют политики Google Chrome Enterprise. Если ваша организация использует другой браузер на основе Chromium, обратитесь к документации по корпоративным политикам этого браузера, чтобы найти аналогичный параметр.
Iframe
Если затронутый запрос исходит из iframe (например, из приложения, встроенного в сторонний портал), в iframe должен быть объявлен local-network-access разрешение, чтобы запрос браузера отображался в родительском фрейме:
- Chrome 142-144: Используйте
allow="local-network-access"атрибут элемента iframe. - Chrome 145+: Это разрешение было разделено на
allow="local-network"иallow="loopback-network".
Если iframe вложены друг в друга, каждый iframe в цепочке должен содержать соответствующий атрибут. Поскольку сторонние приложения сами управляют атрибутами своих iframe, конечный пользователь не всегда может это настроить.
Обходные пути
Чтобы избежать этой проблемы, выберите один из следующих вариантов:
- Переопределение классификации адресного пространства IP (Chrome 146+): Используйте
LocalNetworkAccessIpAddressSpaceOverrides↗ Политика Chrome Enterprise для изменения классификации первоначально разрешённого диапазона IP-адресов в пространстве CGNAT (например,100.80.0.0/16) как публичный. Это наиболее точечное решение, поскольку оно меняет классификацию только для изначально разрешённого диапазона IP-адресов, а не отключает проверки безопасности полностью. - Разрешить определённые URL-адреса (Chrome 140+): Используйте
LocalNetworkAccessAllowedForUrls↗ Политика Chrome Enterprise для исключения определённых веб-сайтов из проверок Local Network Access. Обратите внимание, чтоhttps://*это допустимое значение для отключения проверок для всех URL-адресов. - Разрешить определённые URL-адреса (Chrome 146+): Используйте
LocalNetworkAllowedForUrls↗ Политика Chrome Enterprise, которая заменяет собойLocalNetworkAccessAllowedForUrlsначиная с Chrome 146. - Отказаться от ограничений Local Network Access (Chrome 142-152): Используйте
LocalNetworkAccessRestrictionsTemporaryOptOut↗ Политика Chrome Enterprise для полного отказа от ограничений Local Network Access. Это временная политика, которая будет удалена после выхода Chrome 152. - Отключить feature flag в Chrome: Перейдите в
chrome://flagsи задайте Local Network Access Checks флаг для Отключено. Этот подход подходит для отдельных пользователей, но не для развёртывания в масштабах всей организации.