Какое полное доменное имя сервера, на котором хранится файл текстового документа

Обновлено: 03.07.2024

Виртуальный хостинг имеет и другие преимущества. Присвоив корзине имя зарегистрированного доменного имени и сделав это имя псевдонимом DNS для Amazon S3, вы можете полностью настроить URL-адрес своих ресурсов Amazon S3, например, http://my.bucketname.com/ . Вы также можете публиковать в «корневом каталоге» виртуального сервера вашей корзины. Эта возможность может быть важна, поскольку многие существующие приложения ищут файлы в этом стандартном местоположении. Например, предполагается, что файлы favicon.ico , robots.txt , crossdomain.xml находятся в корневом каталоге.

Темы

Запросы в стиле пути

В настоящее время Amazon S3 поддерживает доступ по виртуальному хостингу и пути во всех регионах, но это изменится (см. следующее важное примечание.

В Amazon S3 URL-адреса в стиле пути используют следующий формат.

Например, если вы создаете корзину с именем mybucket в регионе Запад США (Орегон) и хотите получить доступ к объекту puppy.jpg в этой корзине, вы можете использовать следующий URL-адрес в виде пути:

Обновление (23 сентября 2020 г.). Мы решили отложить прекращение поддержки URL-адресов в стиле пути, чтобы у клиентов было достаточно времени для перехода на URL-адреса в стиле виртуального хостинга. Дополнительную информацию см. в разделе «План прекращения поддержки путей Amazon S3 — остальная часть истории» в блоге новостей AWS.

Запросы виртуального хостинга

В URI виртуального размещения имя корзины является частью доменного имени в URL.

URL-адреса в стиле виртуального размещения Amazon S3 используют следующий формат.

В этом примере my-bucket – это имя сегмента, "Запад США (Орегон) – регион", а puppy.jpg – имя ключа:

В противном случае сегментом для запроса является строчная буква заголовка Host, а ключом для запроса является Request-URI. Эта интерпретация полезна, если вы зарегистрировали то же DNS-имя, что и имя корзины, и настроили это имя как псевдоним CNAME для Amazon S3. Процедура регистрации доменных имен и настройки DNS выходит за рамки этого руководства, но результат проиллюстрирован последним примером в этом разделе.

Примеры

В этом разделе приведены примеры URL и запросов.

Пример стиля пути

В этом примере используется следующее:

Регион – Восток США (Северная Вирджиния)

Имя ключа – homepage.html

URL-адрес выглядит следующим образом:

Запрос выглядит следующим образом:

Информацию о DNS-совместимых именах см. в разделе Ограничения. Дополнительные сведения о ключах см. в разделе Ключи.

Пример виртуального хостинга

В этом примере используется следующее:

Название сегмента – awsexamplebucket1.eu

Регион – Европа (Ирландия)

Имя ключа – homepage.html

URL-адрес выглядит следующим образом:

Запрос выглядит следующим образом:

Пример метода CNAME

Имя ключа – homepage.html

URL-адрес выглядит следующим образом:

Пример следующий:

Настройка URL-адресов Amazon S3 с помощью CNAME

Чтобы связать имя хоста с корзиной Amazon S3 с помощью CNAME

Выберите имя хоста, принадлежащее домену, которым вы управляете.

Создайте сегмент, соответствующий имени хоста.

Создайте запись CNAME, определяющую имя хоста как псевдоним корзины Amazon S3.

В целях маршрутизации запросов запись CNAME должна быть определена точно так, как показано в предыдущем примере. В противном случае может показаться, что он работает правильно, но в конечном итоге приведет к непредсказуемому поведению.

Процедура настройки DNS зависит от вашего DNS-сервера или поставщика DNS. Для получения конкретной информации см. документацию вашего сервера или обратитесь к поставщику услуг.

Ограничения

Обратная совместимость

Устаревшие конечные точки

Некоторые регионы поддерживают устаревшие конечные точки. Вы можете увидеть эти конечные точки в журналах доступа к серверу или в журналах CloudTrail. Для получения дополнительной информации ознакомьтесь с приведенной ниже информацией. Полный список регионов и конечных точек Amazon S3 см. в разделе Конечные точки и квоты Amazon S3 в Общем справочнике Amazon Web Services.

Хотя в журналах вы можете увидеть устаревшие конечные точки, мы рекомендуем всегда использовать стандартный синтаксис конечных точек для доступа к своим сегментам.

URL-адреса в стиле виртуального размещения Amazon S3 используют следующий формат.

В Amazon S3 URL-адреса в стиле пути используют следующий формат.

s3-область

В этом примере имя корзины — my-bucket, а регион — Запад США (Орегон):

Устаревшая глобальная конечная точка

Для некоторых регионов устаревшая глобальная конечная точка может использоваться для создания запросов, в которых не указана конечная точка для конкретного региона. Устаревшая глобальная конечная точка выглядит следующим образом:

В журналах доступа к серверу или журналах CloudTrail вы можете увидеть запросы, использующие устаревшую глобальную конечную точку. В этом примере имя корзины — my-bucket, и показана устаревшая глобальная конечная точка:

Запросы на виртуальный хостинг для востока США (Северная Вирджиния)

Запросы, сделанные с помощью устаревшей глобальной конечной точки, по умолчанию направляются в восток США (Северная Вирджиния). Поэтому устаревшая глобальная конечная точка иногда используется вместо региональной конечной точки для Востока США (Северная Вирджиния). Если вы создаете корзину на востоке США (Северная Вирджиния) и используете глобальную конечную точку, Amazon S3 по умолчанию направляет ваш запрос в этот регион.

Запросы виртуального хостинга для других регионов

Запросы стиля пути

Для региона Восток США (Северная Вирджиния) устаревшая глобальная конечная точка может использоваться для запросов в стиле пути.

Анализ интернет-трафика DNS (SEC) с помощью R для решения проблемы оптимизации платформы

Эммануэль Герберт, . Мэрилин Лоран , в приложениях интеллектуального анализа данных с R , 2014 г.

15.8 Создание таблицы маршрутизации с помощью кластеризации

Как объяснялось в Разделе 15.1, наша цель – создать таблицу маршрутизации для наиболее запрашиваемого полного доменного имени, чтобы сбалансировать нагрузку входящего трафика DNS на нашей платформе разрешения. Таблица маршрутизации — это функция, сопоставляющая полное доменное имя с сервером платформы, причем платформа представляет собой набор серверов разрешения. Это сопоставление состоит из явных записей, сопоставляющих полные доменные имена серверам. Для полных доменных имен, которые запрашиваются нечасто, мы вычисляем сопоставление на лету на основе хэш-функции. Мы сосредоточимся на наиболее запрашиваемом полном доменном имени для построения явного сопоставления. Наша первая идея заключается в том, что при кластеризации создаются однородные группы полных доменных имен, каждая из которых имеет свой основной источник затрат. Чтобы сбалансировать ресурсы, используемые между серверами платформы, идея заключается в равномерном распределении каждой группы FQDN между серверами. Это должно распределить потребление ресурсов каждого типа (сетевые ресурсы, память, ЦП и т. д.) в равной степени на каждом сервере. К сожалению, как показано в Разделе 15.4, две переменные (euQR и reQR) являются более дискриминационными, чем другие, из-за их дисперсии. Чтобы построить таблицу маршрутизации, мы действуем кластер за кластером. Для каждого кластера мы распределяем полные доменные имена в циклическом режиме. Алгоритм подробно описан в алгоритме 1.

Этот алгоритм выводит таблицу маршрутизации для часто запрашиваемого полного доменного имени, которая сопоставляет полное доменное имя с различными серверами разрешения. Эта таблица не используется сразу после ее создания, но будет рассмотрена в разделе 15.11 для сравнения с таблицами маршрутизации, созданными благодаря другим подходам.

Алгоритм 1. Построение таблицы маршрутизации на основе кластеризации

сервер ← 1 // используется для указания того, с каким сервером будет сопоставлено текущее полное доменное имя

для k = 0 до номер_кластера сделать

for fqdnk // перечислить полное доменное имя, принадлежащее кластеру k do

сопоставляет полное доменное имя fqdn с сервером server mod server_number // добавляет явную запись для сопоставления

конец для

конец для

Общие сведения о DNS

Аллан Лиска, Джеффри Стоу, DNS Security, 2016 г.

Записи канонических имен

Записи канонического имени (CNAME) — это псевдонимы, которые сопоставляют одно полное доменное имя с другим полным доменным именем. Вместо прямого сопоставления полного доменного имени с IP-адресом часто проще сопоставить его с другим хостом. Это особенно полезно, если есть много полных доменных имен, указывающих на один и тот же IP-адрес, когда в основной адрес вносятся изменения, другие адреса обновляются автоматически. CNAME будет выглядеть примерно так:

Чтобы CNAME работало, оно должно указывать на полное доменное имя с действительной записью A. CNAME не обязательно должно указывать на полное доменное имя в том же файле зоны; он может указывать на другие полные доменные имена:

Настройка DNS

Настройка порядка поиска суффиксов

Нажмите Пуск | Панель управления | Центр управления сетями и общим доступом | Управление сетевыми подключениями

На вкладке "Общие" окна "Сетевые подключения" щелкните правой кнопкой мыши сетевое подключение, которое хотите настроить, и выберите "Свойства".

В диалоговом окне "Свойства подключения по локальной сети" выберите "Протокол Интернета версии 4 (TCP/IPv4)" и нажмите "Свойства".

В диалоговом окне "Свойства протокола Интернета версии 4 (TCP/IPv4)" нажмите кнопку "Дополнительно...".

В диалоговом окне Дополнительные параметры TCP/IP щелкните вкладку DNS, чтобы вывести ее на передний план, и выберите один из следующих параметров (см. Рисунок 5.51): ▪

Добавьте эти DNS-суффиксы (по порядку). Этот параметр позволяет вам указать список конкретных суффиксов DNS для добавления и не пытается добавлять первичные суффиксы или суффиксы, специфичные для соединения. Вы создаете список, добавляя новые записи с помощью кнопки «Добавить…», и можете редактировать существующие записи с помощью кнопки «Редактировать…». Записи могут быть удалены с помощью кнопки «Удалить». Если вы указали более одного суффикса, они будут опробованы по порядку. Порядок, в котором находится список, можно изменить, выбрав отдельный суффикс и используя кнопки со стрелками вверх или вниз, чтобы поместить его в нужную позицию списка. При использовании для разрешения используется первый суффикс.Если не удается найти хост, который соответствует имени хоста и имени первого суффикса, возникает второй запрос на разрешение с использованием второго суффикса и т. д.

Особенности

Дастин Ханнифин, . Джоуи Альперн, Microsoft Windows Server 2008 R2, 2010 г.

Active Directory и DNS

Есть некоторые особенности DNS, которые необходимо учитывать при планировании AD. Вам необходимо понимать эти параметры при разработке дизайна AD.

Доменное имя Active Directory

Общедоступное и частное пространство имен DNS одно и то же.

Единое общее доменное имя упрощает доступ для пользователей. Например, они могут войти на свои компьютеры, используя свой адрес электронной почты в качестве имени пользователя.

Необходимо принять дополнительные меры предосторожности для предотвращения случайной публикации внутренних ресурсов в Интернете. Это серьезная проблема безопасности при использовании этого метода.

Вам потребуется отдельно поддерживать обе зоны DNS (внутреннюю и внешнюю).

Если вы решите использовать отдельные доменные имена для внутренних и внешних пространств имен, вам следует учесть следующие моменты:

Конечным пользователям легко понять разницу между внешними и внутренними ресурсами.

DNS управляется отдельно для каждого домена.

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

Это может обеспечить более высокий уровень безопасности, не допуская совпадения между вашими внутренними и внешними доменными именами.

Заметки с полей

Переименование домена Active Directory

В какой-то момент из-за организационных изменений или внутренних бизнес-решений может возникнуть необходимость изменить имя вашего домена AD. Microsoft предоставляет процесс и инструменты для переименования вашего домена AD на этапе после развертывания. Этот процесс несколько сложен и не рекомендуется без крайней необходимости. Более предпочтительным методом переименования домена является создание нового домена AD и миграция на новый домен. В некоторых случаях может даже не поддерживаться миграция в новый домен, например, если в домене развернут сервер Microsoft Exchange.

MCSA/MCSE 70-254: мониторинг и устранение неполадок в сетевой активности

Дебора Литтлджон Шиндер, . Лаура Хантер , учебное пособие MCSA/MCSE (экзамен 70–291), 2003 г.

Псевдонимы и полные доменные имена

Функции выбора

Магнус Олссон, . Кэтрин Маллиган, EPC and 4G Packet Networks (Second Edition), 2013 г.

Имена сервисов и протоколов для 3GPP

Чтобы выполнить выбор узла в EPS с помощью DNS, функция выбора создает полное доменное имя (например, APN-FQDN), которое предоставляется в запросе DNS для поиска имен хостов и IP-адресов целевых узлов, таких как PDN GW. Однако такой целевой узел может быть многосетевым (т. е. иметь более одного IP-адреса) и может использовать разные IP-адреса для разных протоколов (например, для PMIP и GTP на интерфейсе S5/S8). В этом случае функция выбора узла должна определить разрешенные интерфейсы, поддерживающие определенную услугу (например, интерфейс и тип протокола), используя процедуру DNS NAPTR с определенными «параметрами услуги», описывающими услугу. Более подробное описание можно найти в разделе 6.5 IETF RFC 3958 и в 3GPP TS 29.303.

В таблице 9.1 перечислены «параметры службы», которые должны использоваться в процедурах, указанных в 3GPP TS 29.303.

Таблица 9.1. Список имен «приложение-сервис» и «приложение-протокол»

MCSA/MCSE 70-291: Обзор основ TCP/IP

Дебора Литтлджон Шиндер, . Лаура Хантер , учебное пособие MCSA/MCSE (экзамен 70–291), 2003 г.

Разрешение имени хоста

Имя хоста – это имя или псевдоним, присвоенный устройству (также называемому хост или узел), чтобы идентифицировать его как хост-устройство TCP/IP. Это имя хоста может иметь длину до 255 символов, может содержать как буквенные, так и цифровые символы, а также может содержать «-» (дефис) и «.» (точка или точка). На самом деле компьютеру или устройству может быть назначено несколько имен хостов. Начиная с Windows 2000, имя хоста и имя компьютера могут не совпадать.

Приложения на основе WinSock могут использовать либо имя хоста, либо IP-адрес. И Internet Explorer, и FTP являются примерами приложений на основе WinSock, которые используют либо имя хоста, либо IP-адрес. Если для назначения используется имя хоста, оно должно быть преобразовано в IP-адрес, связанный с именем хоста.

Имена хостов бывают разных форм, но наиболее распространенными являются псевдонимы (псевдонимы) и доменные имена. Прозвище может быть Galileo или JohnS. Доменные имена – это имена хостов, которые соответствуют общеизвестным соглашениям об именах в Интернете.

Файл hosts

UNIX уже давно использует файл hosts для хранения сопоставлений имен хостов и IP-адресов. Этот файл также можно использовать на компьютерах под управлением Windows. В системах UNIX файл hosts обычно находится в /etc/hosts.На компьютере с Windows Server 2003 (или Windows 2000) он находится в каталоге \%SystemRoot%\system32\drivers\etc. Это простой текстовый файл (но сохраненный без расширения TXT), в котором перечислены IP-адрес и имя хоста каждого определенного устройства. Ниже приведен пример файла hosts.

td>
127.0.0.1 localhost
132.14.29.1 маршрутизатор
191.87.221.2 server2, например, somecompany, com
191.87.221.3 server3, например, somecompany, com galileo

Есть две большие проблемы с использованием файла hosts. Во-первых, это статический файл. Если какие-либо имена или адреса изменяются, их необходимо изменить вручную в файле hosts. Если у вас есть файл hosts на 1500 компьютерах, который определяет местоположение и имя маршрутизатора, а также информация об изменениях, вам может понадобиться большая работа, когда вам нужно будет изменить этот файл hosts на всех 1500 компьютерах и других устройствах, использующих этот маршрутизатор. . Кроме того, если количество определенных хостов в файле hosts становится большим, анализ файла может занять много времени. Это приводит к задержке, поскольку ваш компьютер читает длинный файл, пытаясь найти имя хоста и связанный с ним IP-адрес.

Разрешение системного имени доменного имени

В качестве альтернативы файлу hosts можно использовать DNS-сервер. DNS-серверы хранят переводы полных доменных имен в IP-адреса. На компьютере работает DNS-клиент, называемый преобразователем DNS, который настраивается с использованием IP-адреса DNS-сервера. Когда необходим IP-адрес, преобразователь DNS запрашивает информацию у DNS-сервера, сначала преобразовывая предоставленное полное доменное имя в запрос имени DNS. Когда IP-адрес возвращается от DNS-сервера, преобразователь DNS предоставляет эту информацию запрашивающему приложению. DNS — это распределенная система, поэтому не все сопоставления находятся на всех DNS-серверах. Каждый DNS-сервер отвечает за определенный сегмент имен и либо возвращает запрошенную информацию, либо перенаправляет ее на соответствующий DNS-сервер. Мы узнаем больше о DNS позже в этой книге.

В реализации TCP/IP для Windows для разрешения имен узлов используются как файл hosts, так и DNS. Сначала проверяется файл hosts, и если нужное сопоставление отсутствует, будет запрошен DNS.

Как работает Интернет

Тодд Г. Шипли , Арт Боукер , в расследовании преступлений в Интернете , 2014 г.

Унифицированные указатели ресурсов

Таблица 3.6. Список текущих TLD

AEROВАКАНСИИ
ARMIL
ARPAMOBI
АЗИЯМУЗЕЙ
BIZИМЯ
CATNET
COMORG
COOPPOST
EDUТЕЛЕФОН
ПравительствоПУТЕШЕСТВИЕ
ИНФО ХХХ

Коды стран будут отображаться после TLD в качестве обозначения страны, в которой зарегистрирован домен. Коды стран по умолчанию представляют собой двухбуквенный код в конце URL-адреса. На рис. 3.14 приведен пример правильно отформатированного URL-адреса.

Получает имя NetBIOS или DNS, связанное с локальным компьютером. Имена устанавливаются при запуске системы, когда система считывает их из реестра.

Синтаксис

Параметры

Тип имени, которое необходимо получить. Этот параметр является значением типа перечисления COMPUTER_NAME_FORMAT. В следующей таблице представлена ​​дополнительная информация.

Полное имя DNS представляет собой комбинацию имени узла DNS и имени домена DNS в форме Имя_хоста.Имя_домена.

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

Длина имени может превышать MAX_COMPUTERNAME_LENGTH символов, поскольку DNS допускает использование более длинных имен. Чтобы убедиться, что этот буфер достаточно большой, установите для этого параметра значение NULL и используйте требуемый размер буфера, возвращенный в параметре lpnSize.

При вводе указывает размер буфера в TCHAR. На выходе получает количество TCHAR, скопированных в целевой буфер, не включая завершающий нулевой символ.

Если буфер слишком мал, функция завершается ошибкой, и GetLastError возвращает ERROR_MORE_DATA. Этот параметр получает размер требуемого буфера, включая завершающий нулевой символ.

Если lpBuffer имеет значение NULL, этот параметр должен быть равен нулю.

Возвращаемое значение

Если функция завершается успешно, возвращаемое значение является ненулевым значением.

Если функция завершается ошибкой, возвращаемое значение равно нулю. Чтобы получить расширенную информацию об ошибке, вызовите GetLastError. Возможные значения включают следующее.

Код возврата Описание
ERROR_MORE_DATA Буфер lpBuffer слишком мал.Параметр lpnSize содержит количество байтов, необходимых для получения имени.

Примечания

Если групповая политика не задана для локального компьютера, функция GetComputerNameEx извлекает имена NetBIOS или DNS, установленные при запуске системы. Если задана групповая политика, функция возвращает имя основного домена, заданное групповой политикой. Изменения имени, сделанные функциями SetComputerName или SetComputerNameEx, не вступят в силу, пока пользователь не перезагрузит компьютер.

Если локальный компьютер не настроен на использование DNS-имен, GetComputerNameEx не будет возвращать информацию DNS. Чтобы настроить компьютер для этого, выполните действия, описанные в справке операционной системы, и измените основной DNS-суффикс компьютера, а затем перезагрузите компьютер.

На поведение этой функции может повлиять, если локальный компьютер является узлом в кластере. Дополнительные сведения см. в разделах ResUtilGetEnvironmentWithNetName и UseNetworkName.

Если вы работаете со средами, использующими разные макеты DNS, где полное доменное имя компьютера не соответствует полному доменному имени его домена, вместо этого используйте LsaQueryInformationPolicy.

Чтобы скомпилировать приложение, использующее эту функцию, определите макрос _WIN32_WINNT как 0x0500 или выше. Дополнительные сведения см. в разделе Использование заголовков Windows.

Примеры

Заголовок sysinfoapi.h определяет GetComputerNameEx как псевдоним, который автоматически выбирает версию ANSI или Unicode этой функции на основе определения константы препроцессора UNICODE. Смешивание использования псевдонима, не зависящего от кодировки, с кодом, который не является нейтральным, может привести к несоответствиям, которые приводят к ошибкам компиляции или выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Члены многих типов в пространстве имен System.IO включают параметр пути, который позволяет указать абсолютный или относительный путь к ресурсу файловой системы. Затем этот путь передается API-интерфейсам файловой системы Windows. В этом разделе обсуждаются форматы путей к файлам, которые можно использовать в системах Windows.

Традиционные пути DOS

Стандартный путь DOS может состоять из трех компонентов:

  • Буква тома или диска, за которой следует разделитель томов ( : ).
  • Имя каталога. Символ разделителя каталогов разделяет подкаталоги во вложенной иерархии каталогов.
  • Необязательное имя файла. Символ разделителя каталогов разделяет путь к файлу и имя файла.

Если присутствуют все три компонента, путь является абсолютным. Если буква тома или диска не указана, а имя каталога начинается с символа разделителя каталогов, путь является относительным от корня текущего диска. В противном случае путь указывается относительно текущего каталога. В следующей таблице показаны некоторые возможные пути к каталогам и файлам.

< td>Абсолютный путь от корня текущего диска.
Путь Описание
C:\Documents\Newsletters\Summer2018 .pdf Абсолютный путь к файлу от корня диска C: .
\Program Files\Custom Utilities\StringFinder.exe
2018\January.xlsx Относительный путь к файлу в подкаталоге текущий каталог.
..\Publications\TravelBrochure.pdf Относительный путь к файлу в каталоге, начиная с текущего каталога.
C:\Projects\apilibrary\apilibrary.sln Абсолютный путь к файлу из корня диска C: .
C:Projects\apilibrary\apilibrary.sln Относительный путь от текущего каталога диска C:.

Обратите внимание на разницу между двумя последними путями. Оба указывают необязательный спецификатор тома ( C: в обоих случаях), но первый начинается с корня указанного тома, а второй — нет. В результате первый — это абсолютный путь от корневого каталога диска C:, а второй — относительный путь от текущего каталога диска C:. Использование второй формы вместо первой является частым источником ошибок, связанных с путями к файлам Windows.

Вы можете определить, является ли путь к файлу полным (т. е. не зависит ли путь от текущего каталога и не изменяется при изменении текущего каталога), вызвав метод Path.IsPathFullyQualified. Обратите внимание, что такой путь может включать сегменты относительных каталогов ( . и .. ) и по-прежнему быть полным, если разрешенный путь всегда указывает на одно и то же место.

В следующем примере показана разница между абсолютным и относительным путями. Предполагается, что каталог D:\FY2018\ существует и что вы не задали текущий каталог для D:\ из командной строки перед запуском примера.

Если вы хотите, чтобы комментарии к коду были переведены на языки, отличные от английского, сообщите нам об этом в этом обсуждении на GitHub.

UNC-пути

Пути универсального соглашения об именах (UNC), которые используются для доступа к сетевым ресурсам, имеют следующий формат:

  • Имя сервера или хоста, перед которым стоит \\ . Имя сервера может быть именем компьютера NetBIOS или IP/FQDN-адресом (поддерживаются как IPv4, так и v6).
  • Имя общего ресурса, которое отделяется от имени хоста символом \ . Вместе имя сервера и общего ресурса составляют том.
  • Имя каталога. Символ разделителя каталогов разделяет подкаталоги во вложенной иерархии каталогов.
  • Необязательное имя файла. Символ разделителя каталогов разделяет путь к файлу и имя файла.

Ниже приведены некоторые примеры путей UNC:

Путь Описание
\\system07\C$\< /td> Корневой каталог диска C: в system07 .
\\Server2\Share\Test\Foo.txt Foo.txt в тестовом каталоге тома \\Server2\Share.

Пути UNC всегда должны быть полностью определенными. Они могут включать сегменты относительных каталогов ( . и .. ), но они должны быть частью полного пути. Относительные пути можно использовать только путем сопоставления пути UNC с буквой диска.

Пути устройств DOS

Операционная система Windows имеет единую объектную модель, которая указывает на все ресурсы, включая файлы. Эти пути к объектам доступны из окна консоли и отображаются на уровне Win32 через специальную папку символических ссылок, с которыми сопоставляются устаревшие пути DOS и UNC. Доступ к этой специальной папке осуществляется с помощью синтаксиса пути устройства DOS, который может быть одним из следующих:

Помимо идентификации диска по его букве, вы можете идентифицировать том по его GUID. Это принимает форму:

Путь устройства DOS состоит из следующих компонентов:

Спецификатор пути к устройству ( \\.\ или \\?\ ), который идентифицирует путь как путь к устройству DOS.

Символическая ссылка на «реальный» объект устройства (C: в случае имени диска или Volume в случае GUID тома).

Первый сегмент пути устройства DOS после спецификатора пути устройства идентифицирует том или диск. (Например, \\?\C:\ и \\.\BootPartition\ .)

Существует специальная ссылка для UNC, которая, что неудивительно, называется UNC . Например:

Для UNC устройств часть сервера/общего ресурса образует том. Например, в \\?\server1\e:\utilities\\filecomparer\ часть server/share — это server1\utilities . Это важно при вызове такого метода, как Path.GetFullPath(String, String) с относительными сегментами каталога; невозможно пройти мимо тома.

Пути устройств DOS являются полными по определению и не могут начинаться с сегмента относительного каталога ( . или .. ). Текущие каталоги никогда не входят в их использование.

Пример: способы ссылки на один и тот же файл

В следующем примере показаны некоторые способы обращения к файлу при использовании API в пространстве имен System.IO. В примере создается экземпляр объекта FileInfo и используются его свойства Name и Length для отображения имени файла и длины файла.

Нормализация пути

Почти все пути, передаваемые API Windows, нормализованы. Во время нормализации Windows выполняет следующие шаги:

  • Определяет путь.
  • Применяет текущий каталог к ​​частично определенным (относительным) путям.
  • Канонизирует разделители компонентов и каталогов.
  • Вычисляет относительные компоненты каталога ( . для текущего каталога и .. для родительского каталога).
  • Удаляет определенные символы.

Эта нормализация происходит неявно, но вы можете сделать это явно, вызвав метод Path.GetFullPath, который заключает в себе вызов функции GetFullPathName(). Вы также можете вызвать функцию Windows GetFullPathName() напрямую, используя P/Invoke.

Определить путь

Первым шагом в нормализации пути является определение типа пути. Пути относятся к одной из нескольких категорий:

  • Это пути к устройствам; то есть они начинаются с двух разделителей и вопросительного знака или точки ( \\? или \\. ).
  • Это пути UNC; то есть они начинаются с двух разделителей без знака вопроса или точки.
  • Это полностью определенные пути DOS; то есть они начинаются с буквы диска, разделителя тома и разделителя компонентов ( C:\ ).
  • Они обозначают устаревшее устройство ( CON , LPT1 ).
  • Они относятся к корню текущего диска; то есть они начинаются с одного разделителя компонентов ( \ ).
  • Они относятся к текущему каталогу указанного диска; то есть они начинаются с буквы диска, разделителя томов и без разделителя компонентов ( C: ).
  • Они относятся к текущему каталогу; то есть они начинаются с чего-то еще ( temp\testfile.txt ).

Тип пути определяет, применяется ли каким-либо образом текущий каталог. Он также определяет, что является «корнем» пути.

Обработка устаревших устройств

Если путь представляет собой устаревшее устройство DOS, такое как CON , COM1 или LPT1 , он преобразуется в путь устройства путем добавления \\.\ и возврата.

Путь, начинающийся с имени устаревшего устройства, всегда интерпретируется методом Path.GetFullPath(String) как устаревшее устройство. Например, путь устройства DOS для CON.TXT — \\.\CON , а путь устройства DOS для COM1.TXT\file1.txt — \\.\COM1 .

Применить текущий каталог

Если путь не указан полностью, Windows применяет к нему текущий каталог. К UNC и путям устройств не применяется текущий каталог. Не работает и полный диск с разделителем C:\ .

Если путь начинается с одного разделителя компонентов, применяется диск из текущего каталога. Например, если путь к файлу — \utilities, а текущий каталог — C:\temp\ , нормализация дает C:\utilities .

Если путь начинается с буквы диска, разделителя томов и без разделителя компонентов, применяется последний текущий каталог, заданный в командной оболочке для указанного диска. Если последний текущий каталог не был установлен, применяется только диск. Например, если путь к файлу — D:sources, текущий каталог — C:\Documents\, а последний текущий каталог на диске D: — D:\sources\, результатом будет D:\sources\sources. Эти «относительные» пути являются распространенным источником логических ошибок программ и сценариев. Предполагать, что путь, начинающийся с буквы и двоеточия, не является относительным, явно неверно.

Если путь начинается не с разделителя, применяются текущий диск и текущий каталог. Например, если путь — filecompare, а текущий каталог — C:\utilities\ , результатом будет C:\utilities\filecompare\ .

Канонизировать разделители

Все прямые косые черты ( / ) преобразуются в стандартный разделитель Windows — обратную косую черту ( \ ). Если они присутствуют, ряд косых черт, следующих за первыми двумя косыми чертами, сворачивается в одну косую черту.

Оценить относительные компоненты

По мере обработки пути оцениваются любые компоненты или сегменты, состоящие из одной или двух точек ( . или .. ):

На один период текущий сегмент удаляется, так как он ссылается на текущий каталог.

Для двойной точки текущий сегмент и родительский сегмент удаляются, поскольку двойная точка относится к родительскому каталогу.

Родительские каталоги удаляются только в том случае, если они не находятся за корнем пути. Корень пути зависит от типа пути. Это диск ( C:\ ) для путей DOS, сервер/общий ресурс для UNC ( \\Server\Share ) и префикс пути к устройству для путей к устройствам ( \\?\ или \\.\ ).

Обрезать символы

Помимо удаленных ранее серий разделителей и относительных сегментов, при нормализации удаляются некоторые дополнительные символы:

Если сегмент заканчивается одним периодом, этот период удаляется. (Сегмент из одной или двух точек нормализуется на предыдущем шаге. Сегмент из трех и более точек не нормализуется и фактически является допустимым именем файла/каталога.)

Если путь не заканчивается разделителем, все завершающие точки и пробелы (U+0020) удаляются. Если последний сегмент представляет собой просто одинарную или двойную точку, он подпадает под действие приведенного выше правила относительных компонентов.

Это правило означает, что вы можете создать имя каталога с завершающим пробелом, добавив завершающий разделитель после пробела.

Вы никогда не должны создавать каталог или имя файла с пробелом в конце. Конечные пробелы могут затруднить или сделать невозможным доступ к каталогу, и приложения обычно не работают при попытке обработать каталоги или файлы, имена которых содержат конечные пробелы.

Пропустить нормализацию

Обычно любой путь, переданный API Windows, (фактически) передается функции GetFullPathName и нормализуется. Есть одно важное исключение: путь к устройству начинается со знака вопроса, а не с точки. Если путь не начинается точно с \\?\ (обратите внимание на использование канонической обратной косой черты), он нормализуется.

Почему вы хотите пропустить нормализацию? Есть три основные причины:

Чтобы получить доступ к путям, которые обычно недоступны, но разрешены. Файл или каталог, называемый скрытым. , например, невозможно получить доступ каким-либо другим способом.

Чтобы повысить производительность, пропустив нормализацию, если она уже была выполнена.

Пропуск проверки нормализации и максимального пути — единственное различие между двумя синтаксисами пути к устройству; в остальном они идентичны. Будьте осторожны, пропуская нормализацию, так как вы можете легко создать пути, с которыми "обычным" приложениям будет сложно работать.

Пути, начинающиеся с \\?\, по-прежнему нормализуются, если вы явно передаете их функции GetFullPathName.

Вы можете передавать пути, содержащие более MAX_PATH символов, в GetFullPathName без \\?\ . Он поддерживает пути произвольной длины вплоть до максимального размера строки, который может обрабатывать Windows.

Case и файловая система Windows

Особенность файловой системы Windows, которая сбивает с толку пользователей и разработчиков, отличных от Windows, заключается в том, что в именах путей и каталогов не учитывается регистр. То есть имена каталогов и файлов отражают регистр строк, используемых при их создании. Например, вызов метода

Виртуальные частные облачные сети в Google Cloud имеют внутреннюю службу DNS, которая позволяет экземплярам в одной сети получать доступ друг к другу с использованием внутренних имен DNS. Внутренние записи A для экземпляров виртуальных машин (ВМ) создаются в зоне DNS для .internal . Записи PTR для экземпляров ВМ создаются в соответствующих обратных зонах. Когда вы управляете своими экземплярами, Google Cloud автоматически создает, обновляет и удаляет эти записи DNS.

Например, когда вы удаляете экземпляр, Google Cloud автоматически удаляет связанные записи A и PTR для его внутреннего DNS-имени. Если вы затем создадите экземпляр с тем же именем, Google Cloud создаст запись для замены.

О внутреннем DNS

Внутренние DNS-имена имеют следующие характеристики:

Внутреннее DNS-имя экземпляра ВМ разрешается только в его основной внутренний IP-адрес. Внутренние DNS-имена нельзя использовать для подключения к внешним IP-адресам экземпляра.

Внутренние DNS-имена нельзя настроить для преобразования во вторичные IP-псевдонимы.

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

Типы внутренних имен DNS

В Google Cloud есть два типа внутренних DNS-имен. Тип внутреннего DNS по умолчанию устанавливается в зависимости от того, когда вы включили API Compute Engine.

В целом Google настоятельно рекомендует использовать зональный DNS, поскольку он обеспечивает более высокую надежность, изолируя сбои при регистрации DNS для отдельных зон.

Внутренний тип DNS Полное доменное имя (FQDN) Тип проекта по умолчанию Примечания
Зональный DNS ИМЯ_ВМ . ЗОНА .с. PROJECT_ID .internal По умолчанию для всех организаций или отдельных проектов, в которых был включен API Compute Engine после 06 сентября 2018 года. Имена экземпляров ВМ должны быть уникальными в каждой зоне. Но с зональным DNS вы можете повторно использовать имена экземпляров ВМ в разных зонах. Например, у вас может быть несколько экземпляров с именем instance-1, если они находятся в разных зонах.
Глобальный (для всего проекта) DNS VM_NAME .с. PROJECT_ID .internal По умолчанию для всех организаций или отдельных проектов, в которых был включен API Compute Engine до 6 сентября 2018 года. Имена экземпляров ВМ должны быть уникальными в рамках проекта. При использовании глобального DNS вы не можете повторно использовать имена экземпляров ВМ в рамках проекта.

Замените следующее:

  • ИМЯ_ВМ : имя ВМ. Для зонального DNS это значение должно быть уникальным в пределах зоны, но может повторяться в разных зонах. Для глобального DNS имя экземпляра должно быть уникальным для всего проекта.
  • ЗОНА: зона, в которой находится ваш экземпляр.
  • PROJECT_ID: проект, которому принадлежит экземпляр

Информацию о том, как управлять типом внутреннего DNS-имени, используемого на уровне проекта или экземпляра, см. в разделе Настройка DNS-имен для вашего проекта или экземпляров.

Записи PTR и внутренний DNS

Внутренняя служба DNS Google Cloud автоматически создает записи PTR для ВМ в следующих обратных зонах:

  • 10.in-addr.arpa.
  • 168.192.in-addr.arpa.
  • 16.172.in-addr.arpa. , 17.172.в-аддр.арпа. , . через 31.172.in-addr.arpa.

Пользовательские записи с помощью Cloud DNS

Вы можете использовать частную зону Cloud DNS для создания пользовательских записей DNS для ваших экземпляров ВМ. Вы можете настроить записи PTR, которые позволят вам переопределить URL-адрес внутренней виртуальной машины DNS по умолчанию с помощью предоставленного вами пользовательского URL-адреса.

Чтобы создать настраиваемые записи PTR, которые переопределяют автоматически созданные внутренние имена PTR DNS, см. раздел Записи PTR для адресов RFC 1918 в частных зонах.

Пользовательские имена хостов

Вы можете указать собственное имя хоста для виртуальной машины при ее создании. Пользовательские имена хостов, назначенные таким образом, не разрешаются внутренним DNS. При использовании настраиваемых имен хостов вам все равно необходимо создать соответствующую запись DNS в соответствующей зоне (например, с помощью Cloud DNS). Дополнительные сведения см. в разделе Создание экземпляра ВМ с произвольным именем хоста.

Внутренние DNS-имена и общие VPC

Вы можете использовать внутреннее DNS-имя для ссылки на внутренний IP-адрес экземпляра, даже если этот IP-адрес находится в общей сети VPC в хост-проекте. В Shared VPC часть идентификатора проекта зонального или глобального (для всего проекта) внутреннего DNS-имени является идентификатором проекта службы.

Определение внутреннего DNS-имени для экземпляра ВМ

Используйте следующую процедуру, чтобы прочитать внутреннее DNS-имя, назначенное экземпляру ВМ. Источником достоверности внутреннего DNS-имени является его сервер метаданных.

Запросите метаданные имени хоста:

ВМ Linux

ВМ Windows

Сервер метаданных возвращает имя хоста ВМ в одном из следующих форматов и показывает тип внутреннего DNS-имени, используемого ВМ:

  • Зональный DNS: ИМЯ_ВМ . ЗОНА . в. ПРОЕКТ_ID . внутренний
  • Глобальный DNS: ИМЯ_ВМ . в. ПРОЕКТ_ID . внутренний
  • VM_NAME: имя экземпляра ВМ.
  • ЗОНА: зона, в которой находится экземпляр.
  • PROJECT_ID: проект, которому принадлежит экземпляр

Доступ к ВМ через внутренний DNS

Сервер метаданных также является распознавателем сервера имен для DNS-запросов, выдаваемых виртуальной машиной. Сервер метаданных разрешает все DNS-запросы как к внутренним DNS-именам, так и к внешним DNS-именам. Для внешних DNS-запросов сервер метаданных передает запросы общедоступным серверам имен Google.

В следующем примере команда ping используется для связи с экземпляром, использующим зональный DNS. Этот метод работает при условии, что вы создали правило брандмауэра, разрешающее входящий ICMP-трафик к экземпляру.

Замените следующее:

  • VM_NAME: имя экземпляра ВМ.
  • ЗОНА: зона, в которой находится экземпляр.
  • PROJECT_ID: проект, которому принадлежит экземпляр

Внутренний DNS и resolv.conf

По умолчанию большинство дистрибутивов Linux хранят информацию DHCP в файле resolv.conf . Экземпляры Compute Engine настроены на продление аренды DHCP каждые 24 часа. Для экземпляров, для которых включена зональная DNS, срок аренды DHCP истекает каждый час. Обновление DHCP перезаписывает этот файл, отменяя все изменения, которые вы могли сделать. Экземпляры, использующие зональный DNS, имеют как зональные, так и глобальные записи в файле resolv.conf.

В дистрибутивах Linux, в которых информация DHCP хранится в systemd.resolved.conf , вы можете просмотреть зональные и глобальные записи DNS в файле /etc/systemd/resolved.conf.

Зональный DNS

Пример зонального файла resolv.conf:

Замените следующее:

  • ЗОНА: зона, в которой находится ваш экземпляр.
  • PROJECT_ID: проект, которому принадлежит экземпляр

Пример зонального файла dhcp.lease:

Замените следующее:

  • VM_NAME: имя виртуальной машины.
  • ЗОНА: зона, в которой находится ваша ВМ.
  • PROJECT_ID: проект, к которому принадлежит виртуальная машина.

Глобальный DNS

Пример глобального файла resolv.conf:

Замените PROJECT_ID на проект, которому принадлежит экземпляр.

Пример глобального файла dhcp.lease:

Замените следующее:

  • VM_NAME: имя виртуальной машины.
  • PROJECT_ID: проект, к которому принадлежит виртуальная машина.

Эти файлы имеют следующие ограничения:

    Путь поиска может обрабатывать только 6 записей, 3 из которых предоставляются Compute Engine. Если вы добавляете записи в путь поиска таким образом, что общее количество записей превышает 6, правила поиска после 6-й записи не применяются вашей ОС. Это может привести к тому, что функции Compute Engine перестанут работать, например доступ к экземплярам через их имена.

Редактирование resolv.conf вручную приводит к тому, что он возвращается к DHCP по умолчанию каждый раз, когда на вашем экземпляре истекает 24-часовая аренда DHCP. В экземплярах, использующих зональный DNS, срок аренды DHCP истекает каждый час. Для внесения статических изменений в файл resolv.conf некоторые дистрибутивы Linux позволяют добавлять элементы в начале или в конце политики DHCP.

Дебиан 9

Пример файла /etc/dhcp/dhclient.conf:

Зонные DNS-имена

Зональные DNS-имена включают имя вашей ВМ, зону, в которой находится ваша ВМ, и проект, которому принадлежит ВМ. Глобальные DNS-имена не включают зону, в которой находится виртуальная машина. Зональные DNS-имена в одном расположении функционируют независимо от других местоположений, что позволяет создавать более отказоустойчивые мультирегиональные приложения с лучшими характеристиками доступности.

Существующие проекты и организации могут продолжать использовать глобальные DNS-имена, но рекомендуется перейти на зональные DNS-имена для региональной изоляции и повышения надежности в нескольких регионах.

Настройка имен DNS для вашего проекта или экземпляров

Включите зональный DNS и глобальный DNS для своих экземпляров, задав переменную VmDnsSetting в метаданных проекта или экземпляра.Если вы установите переменную VmDnsSetting в метаданных для определенного экземпляра, она переопределит любые переменные VmDnsSetting, унаследованные из метаданных проекта для этого экземпляра.

Переменная VmDnsSetting поддерживает следующие параметры:

  • Рекомендуется: установите VmDnsSetting=ZonalOnly, чтобы к вашим экземплярам можно было обращаться только по их зональным DNS-именам. Экземпляры по-прежнему сохраняют как зональные, так и глобальные пути поиска, но их глобальные DNS-имена больше не работают. Другие экземпляры могут обращаться к экземплярам с этим параметром, используя только свои зональные DNS-имена, и не могут обращаться к этим экземплярам, ​​используя их глобальные DNS-имена или пути поиска. Это предпочтительный и более надежный вариант, если ваши приложения могут его поддерживать. Это параметр по умолчанию для экземпляров в автономных проектах и ​​проектах, созданных в организации, в которой был включен API Compute Engine после 6 сентября 2018 г.
  • Задайте VmDnsSetting=GlobalDefault, чтобы экземпляры регистрировали как глобальные, так и зональные DNS-имена, но использовали только глобальные имена в качестве доменных имен по умолчанию и записей путей поиска. Это параметр по умолчанию для экземпляров в автономных проектах и ​​проектах, созданных в организации, которая включила API Compute Engine до 6 сентября 2018 г.

Обратите внимание, что перенос проекта в другую организацию не меняет DNS-имя проекта по умолчанию.

Информацию о том, как установить метаданные проекта или значения метаданных экземпляра, см. в разделе Настройка пользовательских метаданных.

После настройки переменной VmDnsSetting для экземпляра обновите аренду DHCP для экземпляра. Вы можете обновить аренду, перезапустив экземпляр, дождавшись истечения срока аренды или выполнив одну из следующих команд:

  • Экземпляры Linux: sudo dhclient -v -r
  • Экземпляры Windows Server: ipconfig /renew

Применять зональный DNS по умолчанию только для будущих/новых проектов

По сравнению с внутренним глобальным DNS, внутренний зональный DNS обеспечивает более высокую надежность за счет локализации сбоев при регистрации DNS в отдельных зонах. Google настоятельно рекомендует по возможности переключаться на зональный DNS.

Если новый проект создается в рамках организации, которая была создана до 6 сентября 2018 года, по умолчанию внутренним типом DNS проекта по-прежнему является глобальный DNS. Чтобы избежать рисков надежности, связанных с глобальным DNS, вы можете применить логические ограничения политики организации/compute.setNewProjectDefaultToZonalDNSOnly на уровне организации или папки. Когда вы устанавливаете такую ​​политику для переопределения настройки DNS по умолчанию, вновь созданные проекты по умолчанию используют внутреннюю зональную DNS; но политика не влияет на существующие проекты, в которых уже включен API Compute Engine. Чтобы переключить существующие проекты на использование зональной DNS, см. статью о переключении существующих проектов на зональную DNS.

Чтобы применить это изменение политики, у вас должен быть доступ на уровне папки или организации с ролью IAM roles/orgpolicy.policyAdmin.

Выполните следующие действия, чтобы установить политику организации для папки или организации:

Войдите в Google Cloud Console как суперадминистратор Google Workspace или Cloud Identity.

В консоли перейдите на страницу политик организации.

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

Чтобы найти политику для принудительного применения зонального DNS, нажмите «Фильтр» и выберите «Имя», затем задайте для имени фильтра значение «Только зональный DNS» для внутренних параметров DNS для новых проектов.

Нажмите на название политики, чтобы просмотреть сведения о ней.

На странице сведений о политике представлена ​​информация об ограничении и о том, как оно применяется в данный момент. По умолчанию применение не определено для папки или организации. Однако если для родительской папки определено принудительное выполнение, то принудительное исполнение наследуется от ближайшей родительской папки, для которой задано принудительное выполнение. Дополнительные сведения см. на странице оценки иерархии.

Чтобы настроить политику организации, нажмите "Изменить".

На странице редактирования выберите Настроить.

В разделе "Принудительное применение" выберите параметр принудительного применения:

  • Чтобы применить ограничение, выберите Вкл. Для новых проектов внутренним типом DNS по умолчанию будет зональный DNS.
  • Чтобы отключить ограничение, выберите «Выкл.». Тип DNS проекта по умолчанию по-прежнему определяется временем создания организации.

Нажмите "Сохранить".

Чтобы проверить изменение политики организации, вы можете создать новый проект в папке или организации, затем создать экземпляр ВМ и проверить, включена ли ваша ВМ для зонального DNS.

Если для разрешения запроса DNS-имени, встроенного в вашу рабочую нагрузку, требуется внутренний глобальный DNS, вы можете отменить это изменение на уровне организации или папки, отключив принудительное применение.

Переключение существующих проектов на зональные DNS-имена

Глобальный DNS был заменен зональным DNS в качестве внутреннего типа DNS по умолчанию для всех новых организаций, подключенных к Google Cloud после 6 сентября 2018 года. Если ваши существующие проекты все еще используют глобальный DNS, Google настоятельно рекомендует что вы переключаете эти проекты на использование внутренних зональных DNS-имен. Зональный DNS снижает риск межрегиональных сбоев.

Как правило, вы можете использовать следующий процесс переноса:

  1. Проверьте свои приложения и обновите их, чтобы устранить проблемы совместимости с зональными настройками:
    • Если у вас есть приложение, использующее жестко закодированные внутренние глобальные DNS-имена, исправьте их, чтобы они использовали внутренние зональные DNS-имена.
    • Если имена виртуальных машин используются для доступа к экземплярам в другой зоне, убедитесь, что в запрос добавлено имя целевой зоны, например: . .
    • Для разрешения DNS-имен виртуальных машин в сервисных проектах с использованием общей сети VPC необходимо использовать зональные полные доменные имена виртуальных машин.
  2. Чтобы переключить проект на использование внутреннего зонального DNS, задайте VmDnsSetting=ZonalOnly в метаданных на уровне проекта.

Чтобы проверить, обновлены ли метаданные проекта, вы можете запустить gcloud Compute Project-Info Description --flatten="commonInstanceMetadata[VmDnsSetting]" . Команда должна возвращать ZonalOnly .

Возврат к глобальному DNS в вашем проекте или экземплярах

Чтобы вернуться к глобальному DNS для определенного экземпляра, добавьте в метаданные экземпляра следующее: VmDnsSetting=GlobalDefault .

Чтобы вернуться к глобальному DNS для проекта, добавьте в метаданные проекта следующее: VmDnsSetting=GlobalDefault . И убедитесь, что ни один из ваших экземпляров не настроен индивидуально со значением метаданных VmDnsSetting. Информацию о том, как задать метаданные проекта или значения метаданных экземпляра, см. в разделе Установка пользовательских метаданных.

Чтобы принудительно изменить конфигурацию DNS, перезапустите сеть экземпляра ВМ:

  • Операционная система/Ubuntu, оптимизированная для контейнеров: sudo systemctl перезапустить systemd-networkd
  • CentOS/RHEL/Fedora CoreOS/Rocky Linux: sudo systemctl перезапустить сеть
  • Debian: sudo systemctl перезапустить сеть
  • Windows: ipconfig /renew

Если вы запускаете приложение в контейнерах, в Google Kubernetes Engine или в гибкой среде App Engine, конфигурация DNS в настройках вашего контейнера может не обновляться автоматически, пока вы не перезапустите контейнеры. Чтобы отключить зональный DNS в этих приложениях-контейнерах, необходимо установить VmDnsSetting=GlobalDefault в своих проектах и ​​экземплярах и перезапустить контейнеры, чтобы их настройки DNS вернулись в исходное состояние.

Что дальше

  • Подробнее о сетях Google Cloud VPC см. в обзоре VPC.
  • Информацию о создании и изменении сетей VPC см. в разделе Использование VPC.

Если не указано иное, содержимое этой страницы предоставляется по лицензии Creative Commons Attribution 4.0, а образцы кода — по лицензии Apache 2.0. Подробнее см. в Правилах сайта Google Developers. Java является зарегистрированным товарным знаком Oracle и/или ее дочерних компаний.

Читайте также: