Azure VPN-клиент — настройка дополнительных параметров маршрутизации и DNS

В этой статье рассказывается, как настроить необязательные параметры для VPN-клиента Azure для подключений Virtual WAN VPN типа "точка-сеть". Вы можете настроить суффиксы DNS, пользовательские DNS-серверы, пользовательские маршруты и принудительное туннелирование на клиентской стороне VPN.

Примечание.

Azure VPN-клиент поддерживается только для подключений протокола OpenVPN®.

Предпосылки

В этой статье предполагается, что вы настроили шлюз P2S и скачали Azure VPN-клиент для подключения клиентских компьютеров. Инструкции см. в следующих статьях конфигурации "точка — сеть":

Чтобы скачать файл конфигурации профиля VPN-клиента (XML-файл), см. статью "Скачать глобальный или центральный профиль".

Работа с файлами конфигурации профиля VPN-клиента

Действия, описанные в этой статье, требуют изменения и импорта файла конфигурации профиля vpn-клиента Azure. Следующие файлы конфигурации профиля создаются в зависимости от типов проверки подлинности, настроенных для VPN-шлюза P2S.

  • azurevpnconfig.xml. Этот файл создается при выборе только одного типа проверки подлинности.
  • azurevpnconfig_aad.xml: этот файл создается для проверки подлинности Microsoft Entra ID при выборе нескольких типов проверки подлинности.
  • azurevpnconfig_cert.xml. Этот файл создается для проверки подлинности сертификата при выборе нескольких типов проверки подлинности.

Чтобы работать с файлами конфигурации профиля VPN-клиента (XML-файлы), выполните следующие действия:

  1. Найдите файл конфигурации профиля и откройте его с помощью любого выбранного редактора.
  2. Используя примеры в следующих разделах, измените файл по мере необходимости, а затем сохраните изменения.
  3. Импортируйте файл, чтобы настроить VPN-клиент Azure:
    • Windows
      • Azure интерфейс VPN-клиента: откройте VPN-клиент Azure и выберите +, а затем Import. Найдите измененный файл .xml. Настройте дополнительные параметры в интерфейсе VPN-клиента Azure (при необходимости), а затем выберите Save.
      • Командная строка: Поместите соответствующий скачанный XML-файл конфигурации в папку %userprofile%\AppData\Local\Packages\Microsoft.AzureVpn_8wekyb3d8bbwe\LocalState, а затем выполните команду, соответствующую имени файла конфигурации. Например, azurevpn -i azurevpnconfig_aad.xml. Чтобы принудительно импортировать, используйте переключатель -f .
    • macOS
      • Azure интерфейс VPN-клиента: откройте VPN-клиент Azure и выберите Import. Найдите измененный файл .xml. Настройте дополнительные параметры в интерфейсе VPN-клиента Azure (при необходимости), а затем выберите Save.
      • Подсказка командной строки: Изменить следующий фрагмент кода для распространения файла конфигурации. Выполните его с помощью привилегий sudo sh ./script.sh. Перезапуск может потребоваться, если Azure VPN CLient уже запущен в сеансе пользователя.
        #!/bin/sh
        
        # Change this path
        sourcePath="UPDATE THIS PATH TO YOUR XML"
        profileName="Azure VPN"
        
        # These lines do not need changing
        consoleuser=$(ls -l /dev/console | awk '{ print $3 }')
        filePath="/Users/$consoleuser/Library/Containers/com.microsoft.AzureVpnMac/Data/Library/Application Support/com.microsoft.AzureVpnMac/$profileName.AzureVpnProfile.xml"
        cp $sourcePath $filePath
        

DNS (Система доменных имён)

Добавление DNS-суффиксов

Примечание.

В настоящее время дополнительные DNS-суффиксы для клиента Azure VPN не создаются в формате, который может корректно использоваться в macOS. Указанные значения dns-суффиксов не сохраняются для macOS.

Чтобы добавить суффиксы DNS, измените скачанный XML-файл профиля и добавьте теги <dnssuffixes><dnssufix></dnssufix></dnssuffixes>.

<azvpnprofile>
<clientconfig>

    <dnssuffixes>
          <dnssuffix>.mycorp.com</dnssuffix>
          <dnssuffix>.xyz.com</dnssuffix>
          <dnssuffix>.etc.net</dnssuffix>
    </dnssuffixes>

</clientconfig>
</azvpnprofile>

Добавление пользовательских DNS-серверов

Чтобы добавить настраиваемые DNS-серверы, измените скачанный XML-файл профиля и добавьте теги dnsservers<dnsserver><>/dnsserver</dnsservers><>

<azvpnprofile>
<clientconfig>

    <dnsservers>
        <dnsserver>x.x.x.x</dnsserver>
            <dnsserver>y.y.y.y</dnsserver>
    </dnsservers>

</clientconfig>
</azvpnprofile>

Примечание.

При использовании проверки подлинности Microsoft Entra ID, клиент VPN Azure использует записи таблицы политики разрешения DNS (NRPT), что означает, что DNS-серверы не перечислены в выходных данных ipconfig /all. Чтобы подтвердить используемые параметры DNS, воспользуйтесь командой Get-DnsClientNrptPolicy в PowerShell.

Маршрутизация

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

Раздельное туннелирование настраивается для VPN-клиента по умолчанию.

Принудительное туннелирование

Принудительное туннелирование можно настроить для перенаправления всего трафика в VPN-туннель. Принудительное туннелирование можно настроить с помощью двух различных методов; либо рекламируя пользовательские маршруты, либо изменяя XML-файл профиля.

Примечание.

Подключение к Интернету не предоставляется через VPN-шлюз. В результате удаляется весь трафик, привязанный к Интернету.

  • Объявление настраиваемых маршрутов: можно объявлять настраиваемые маршруты 0.0.0.0/1 и 128.0.0.0/1.

  • XML профиля: Вы можете изменить скачанный XML-файл профиля и добавить <includeroutes><route><destination><mask></destination></mask></route></includeroutes> теги.

Для VPN-клиента Azure для Windows:

  • Версия 2.1900:39.0 или более поздняя. Можно включить маршрут 0/0. Измените скачанный XML-файл профиля и добавьте <includeroutes><route><destination><mask></destination></mask></route></includeroutes> теги. Обязательно обновите номер версии до 2.
  • Версия ниже 2.1900:39.0: необходимо добавить два настраиваемых маршрута: 0.0.0.0/1 и 128.0.0.0/1.

Для Azure VPN-клиента в macOS:

  • macOS версии 14 или более поздней. Поддерживается только настраиваемый маршрут 0/0. Маршруты 0.0.0.0/1 и 128.0.0.0/1 не поддерживаются.

В XML-файл можно включить пользовательский маршрут 0.0.0.0/0 :

 <azvpnprofile>
 <clientconfig>

   <includeroutes>
       <route>
           <destination>0.0.0.0</destination><mask>0</mask>
       </route>
   </includeroutes>

 </clientconfig>
 </azvpnprofile>

Вы можете добавить настраиваемые маршруты 0.0.0.0/1 и 128.0.0.0/1 в XML-файл:

<azvpnprofile>
<clientconfig>

 <includeroutes>
     <route>
         <destination>0.0.0.0</destination><mask>1</mask>
     </route>
     <route>
         <destination>128.0.0.0</destination><mask>1</mask>
     </route>
 </includeroutes>

</clientconfig>
</azvpnprofile>

Примечание.

  • Состояние по умолчанию для тега clientconfig — <clientconfig i:nil="true" />это состояние, которое можно изменить на основе требования.
  • Повторяющийся тег clientconfig не поддерживается в macOS, поэтому убедитесь, что тег clientconfig не дублируется в XML-файле.

Добавление пользовательских маршрутов

Можно добавить настраиваемые маршруты. Измените скачанный XML-файл профиля и добавьте теги <includeroutes><<маршрут><<назначение><маска><</назначение></маска>/маршрут/includeroutes.

<azvpnprofile>
<clientconfig>

    <includeroutes>
        <route>
            <destination>x.x.x.x</destination><mask>24</mask>
        </route>
        <route>
                <destination>y.y.y.y</destination><mask>24</mask>
            </route>
    </includeroutes>

</clientconfig>
</azvpnprofile>

Блокировка (исключение) маршрутов

Возможность полностью блокировать маршруты не поддерживается Azure VPN-клиентом. Azure VPN-клиент не поддерживает удаление маршрутов из локальной таблицы маршрутизации. Вместо этого можно исключить маршруты из VPN-интерфейса. Измените скачанный XML-файл профиля и добавьте теги .

<azvpnprofile>
<clientconfig>

    <excluderoutes>
        <route>
            <destination>x.x.x.x</destination><mask>24</mask>
        </route>
        <route>
            <destination>y.y.y.y</destination><mask>24</mask>
        </route>
    </excluderoutes>

</clientconfig>
</azvpnprofile>

Примечание.

  • Чтобы включить или исключить несколько маршрутов назначения, поместите каждый адрес назначения в отдельный тег маршрута (как показано в приведенных выше примерах), так как несколько адресов назначения в одном теге маршрута не будут работать.
  • Если возникла ошибка "Назначение не может быть пустым или иметь несколько записей внутри тега маршрута", проверьте XML-файл профиля и убедитесь, что раздел includeroutes/excluderoutes имеет только один целевой адрес внутри тега маршрута.

версии VPN-клиента Azure

Сведения о версиях VPN-клиента Azure см. в разделе версии VPN-клиента Azure.

Дальнейшие действия

Дополнительные сведения о VPN-подключении P2S см. в разделе "Сведения о VPN типа "точка — сеть".