Поддержка IPv6 в Microsoft Entra ID

Примечание.

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

Мы рады предоставить поддержку IPv6 для Microsoft Entra ID, поддержки клиентов с повышенной мобильностью и помочь сократить расходы на быстро истощающиеся и дорогие IPv4-адреса. Дополнительные сведения о том, как это изменение может повлиять на Microsoft 365, см. в разделе Поддержка IPv6 в службах Microsoft 365.

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

Что меняется?

Теперь URL-адреса конечных точек службы разрешаются для возврата адресов IPv4 и IPv6. Если клиентская платформа или сеть поддерживает протокол IPv6, для подключения в основном будет предпринята попытка использовать IPv6, при условии, что сетевые прыжки, которые находятся между ними (например, брандмауэры или веб-прокси), также поддерживают IPv6. Для сред, которые не поддерживают IPv6, клиентские приложения будут по-прежнему подключаться к Microsoft Entra ID по протоколу IPv4.

Следующие функции также поддерживают IPv6-адреса:

  • Именованные расположения
  • Политики условного доступа
  • Защита удостоверений
  • Журналы входа

Когда IPv6 будет поддерживаться в Microsoft Entra ID?

Мы начнем внедрять поддержку IPv6 для Microsoft Entra ID в апреле 2023 г.

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

Что нужно сделать моей организации?

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

Если клиенты не обновят свои именованные расположения с помощью этих IPv6-адресов, их пользователи будут заблокированы.

Снимок экрана: вход пользователя, заблокированный из-за расположения в сети.

Выполняемые действия

Именованные расположения

Именованные расположения совместно используются многими функциями, такими как условный доступ, защита идентификации и B2C. Клиенты должны сотрудничать со своими сетевыми администраторами и поставщиками интернет-услуг (ISP) для определения общедоступных IPv6-адресов. Затем клиенты должны использовать этот список для создания или обновления именованных расположений, чтобы включить их идентифицированные IPv6-адреса.

Условный доступ

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

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

Облачные прокси-серверы и VPN

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

Microsoft Entra многофакторной проверки подлинности на пользователя

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

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

Ограничения исходящего трафика

Если ваша организация ограничивает исходящий сетевой трафик определенными диапазонами IP-адресов, вам придется обновить эти адреса, чтобы включить в них конечные точки IPv6. Администраторы могут найти эти диапазоны IP-адресов в следующих статьях:

Для диапазонов IP-адресов, указанных для Microsoft Entra ID, убедитесь, что разрешен исходящий доступ в прокси-сервере или брандмауэре.

Конфигурация устройства

По умолчанию трафик IPv6 и IPv4 поддерживается в Windows и большинстве других платформ операционной системы (OS). Изменения стандартной конфигурации IPv6 могут привести к непредвиденным последствиям. Дополнительные сведения см. в статье Руководство по настройке IPv6 в Windows для опытных пользователей.

Конечные точки службы

Реализация поддержки IPv6 в Microsoft Entra ID не повлияет на конечные точки службы виртуальная сеть Azure. Конечные точки службы по-прежнему не поддерживают трафик IPv6. Дополнительные сведения см. в разделе Ограничения конечных точек службы виртуальная сеть.

Проверка Microsoft Entra проверки подлинности по протоколу IPv6

Вы можете протестировать проверку подлинности Microsoft Entra по протоколу IPv6, прежде чем мы включим ее по всему миру, используя следующие процедуры. Эти процедуры помогают проверить конфигурации диапазонов IPv6. Рекомендуемый подход заключается в использовании правила таблицы политики разрешения имен (NRPT), которое передается на устройства Windows, присоединенные к Microsoft Entra. В Windows Server NRPT позволяет реализовать глобальную или локальную политику, которая переопределяет пути разрешения DNS. С помощью этой функции можно перенаправлять DNS для различных полных доменных имен (FQDN) на специальные DNS-серверы, на которых настроены записи DNS IPv6 для Microsoft Entra входа. Включить и отключить правила NRPT с помощью скрипта PowerShell очень просто. Для отправки этой функции клиентам можно использовать Microsoft Intune.

Примечание.

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

  • Для проверки правил NRPT рекомендуется использовать командлет Resolve-DnsName . Если вы используете команду nslookup , результат может отличаться, учитывая различия, существующие между этими инструментами.

  • Убедитесь, что между клиентскими устройствами и DNS-серверами, используемыми для правила NRPT, установлено открытое сетевое подключение через TCP и UDP-порт 53.

Настройка правила NRPT клиента вручную — общедоступное облако

  1. Откройте консоль PowerShell от имени администратора (щелкните правой кнопкой мыши значок PowerShell и выберите Запуск от имени администратора).

  2. Добавьте правило NRPT, выполнив следующие команды:

    $DnsServers = (
        "ns1-37.azure-dns.com.",
        "ns2-37.azure-dns.net.",
        "ns3-37.azure-dns.org.",
        "ns4-37.azure-dns.info."
    )
    $DnsServerIPs = $DnsServers | Foreach-Object {
        (Resolve-DnsName $_).IPAddress | Select-Object -Unique
    }
    $params = @{
        Namespace = "login.microsoftonline.com"
        NameServers = $DnsServerIPs
        DisplayName = "AZURE-AD-NRPT"
    }
    Add-DnsClientNrptRule @params
    
  3. Убедитесь, что клиент получает ответы IPv6 для, login.microsoftonline.com выполнив командлет Resolve-DnsName . Выходные данные команды должны выглядеть следующим образом:

    PS C:\users\username> Resolve-DnsName login.microsoftonline.com
    Name                          Type   TTL   Section    IPAddress 
    ----                          ----   ---   -------    --------- 
    login.microsoftonline.com     AAAA   300   Answer     2603:1037:1:c8::8 
    login.microsoftonline.com     AAAA   300   Answer     2603:1036:3000:d8::5 
    login.microsoftonline.com     AAAA   300   Answer     2603:1036:3000:d0::5 
    login.microsoftonline.com     AAAA   300   Answer     2603:1036:3000:d8::4 
    login.microsoftonline.com     AAAA   300   Answer     2603:1037:1:c8::9 
    login.microsoftonline.com     AAAA   300   Answer     2603:1037:1:c8::a 
    login.microsoftonline.com     AAAA   300   Answer     2603:1036:3000:d8::2 
    login.microsoftonline.com     AAAA   300   Answer     2603:1036:3000:d0::7 
    login.microsoftonline.com     A      300   Answer     20.190.151.7 
    login.microsoftonline.com     A      300   Answer     20.190.151.67 
    login.microsoftonline.com     A      300   Answer     20.190.151.69 
    login.microsoftonline.com     A      300   Answer     20.190.151.68 
    login.microsoftonline.com     A      300   Answer     20.190.151.132 
    login.microsoftonline.com     A      300   Answer     20.190.151.70 
    login.microsoftonline.com     A      300   Answer     20.190.151.9 
    login.microsoftonline.com     A      300   Answer     20.190.151.133 
    
  4. Если вы хотите удалить правило NRPT, выполните следующий сценарий PowerShell:

    Get-DnsClientNrptRule | Where-Object {
        $_.DisplayName -match "AZURE-AD-NRPT" -or $_.Namespace -match "login.microsoftonline.com"
    } | Remove-DnsClientNrptRule -Force
    

Настройка правила NRPT клиента вручную — us Gov cloud

Как и в случае со сценарием для общедоступного облака, следующий скрипт создает правило NRPT для конечной точки login.microsfotonline.usвхода US Gov.

  1. Откройте консоль PowerShell от имени администратора, щелкнув правой кнопкой мыши значок PowerShell и выбрав Запуск от имени администратора.

  2. Добавьте правило NRPT, выполнив следующие команды:

    $DnsServers = (
        "ns1-35.azure-dns.com.",
        "ns2-35.azure-dns.net.",
        "ns3-35.azure-dns.org.",
        "ns4-35.azure-dns.info."
    )
    $DnsServerIPs = $DnsServers | Foreach-Object {
        (Resolve-DnsName $_).IPAddress | Select-Object -Unique
    }
    $params = @{
        Namespace = "login.microsoftonline.us"
        NameServers = $DnsServerIPs
        DisplayName = "AZURE-AD-NRPT-USGOV"
    }
    Add-DnsClientNrptRule @params
    

Развертывание правила NRPT с помощью Intune

Чтобы развернуть правило NRPT на нескольких компьютерах с помощью Intune, создайте приложение Win32 и назначьте его одному или нескольким устройствам.

Шаг 1. Создание скриптов

Создайте папку, а затем сохраните в ней следующие скрипты установки и отката (InstallScript.ps1 и RollbackScript.ps1), чтобы можно было создать intunewin-файл для использования в развертывании.

InstallScript.ps1
# Add Azure AD NRPT rule.
$DnsServers = (
    "ns1-37.azure-dns.com.",
    "ns2-37.azure-dns.net.",
    "ns3-37.azure-dns.org.",
    "ns4-37.azure-dns.info."
)
$DnsServerIPs = $DnsServers | Foreach-Object {
    (Resolve-DnsName $_).IPAddress | Select-Object -Unique
}

# List the rules.
$existingRules = Get-DnsClientNrptRule | Where-Object {
    $_.DisplayName -match "AZURE-AD-NRPT" -or $_.Namespace -match "login.microsoftonline.com"
}
if ($existingRules) { 
    Write-Output ("Azure AD NRPT rule exists: {0}" -F $existingRules) 
} 
else { 
    Write-Output "Adding Azure AD NRPT DNS rule for login.microsoftonline.com ..." 
    $params = @{
        Namespace = "login.microsoftonline.com"
        NameServers = $DnsServerIPs
        DisplayName = "AZURE-AD-NRPT"
    }
    Add-DnsClientNrptRule @params
}  
RollbackScript.ps1
# Remove the Azure AD NRPT rule.
# List the rules.
$existingRules = Get-DnsClientNrptRule | Where-Object {
    $_.DisplayName -match "AZURE-AD-NRPT" -or $_.Namespace -match "login.microsoftonline.com"
}
if ($existingRules) { 
    Write-Output "Removing Azure AD NRPT DNS rule for login.microsoftonline.com ..." 
    $existingRules | Format-Table 
    $existingRules | Remove-DnsClientNrptRule -Force 
} 
else { 
    Write-Output "Azure AD NRPT rule does not exist. Device was successfully remediated."
}
DetectionScript.ps1

Сохраните следующий скрипт (DetectionScript.ps1) в другом расположении. Затем можно ссылаться на скрипт обнаружения в приложении при его создании в Intune.

# Add Azure AD NRPT rule.
$DnsServers = (
    "ns1-37.azure-dns.com.",
    "ns2-37.azure-dns.net.",
    "ns3-37.azure-dns.org.",
    "ns4-37.azure-dns.info."
)
$DnsServerIPs = $DnsServers | Foreach-Object {
    (Resolve-DnsName $_).IPAddress | Select-Object -Unique
}
# List the rules.
$existingRules = Get-DnsClientNrptRule | Where-Object {
    $_.DisplayName -match "AZURE-AD-NRPT" -or $_.Namespace -match "login.microsoftonline.com"
}
if ($existingRules) { 
    Write-Output 'Compliant' 
}  

Шаг 2. Упаковка скриптов в виде intunewin-файла

См. статью Подготовка содержимого приложения Win32 для отправки , чтобы создать intunewin-файл из папки и скриптов, сохраненных ранее.

Шаг 3. Создание приложения Win32

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

  1. Войдите на портал Intune.

  2. Выберите Приложения>Все приложения, а затем нажмите кнопку + Добавить , чтобы создать приложение Win32.

  3. В раскрывающемся списке Тип приложения выберите Приложение Windows (Win32) и нажмите кнопку Выбрать.

  4. На странице Сведения о приложении щелкните Выбрать файл пакета приложения , чтобы выбрать созданный ранее intunewin-файл . Нажмите кнопку ОК , чтобы продолжить.

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

  6. На странице Программа введите следующие сведения и нажмите кнопку Далее.

    • Командная строка установки :
      powershell.exe -executionpolicy bypass -NoLogo -NoProfile -NonInteractive -WindowStyle Hidden -file "InstallScript.ps1"
    • Командная строка удаления :
      powershell.exe -executionpolicy bypass -NoLogo -NoProfile -NonInteractive -WindowStyle Hidden -file "RollbackScript.ps1"
    • Поведение установки:
      System
  7. На странице Требования выберите обе архитектуры операционной системы и задайте для параметра Минимальная операционная системазначение Windows 10 1607. Нажмите кнопку Далее, чтобы продолжить.

  8. На странице Обнаружение выберите Использовать пользовательский скрипт обнаружения в раскрывающемся списке Формат правил . Нажмите кнопку обзора рядом с полем Файл скрипта , чтобы выбрать сценарий обнаружения. Оставьте остальные поля в качестве значений по умолчанию. Нажмите кнопку Далее, чтобы продолжить.

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

  10. Нажмите кнопку Далее на странице Замены (предварительная версия), чтобы продолжить без изменений.

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

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

Поиск IPv6-адресов в журналах входа

С помощью одного или нескольких из следующих методов сравните список IPv6-адресов с ожидаемыми адресами. Попробуйте добавить эти IPv6-адреса в именованные расположения и пометить некоторые из них как доверенные, где это возможно. Для чтения журнала входа требуется по крайней мере назначенная роль читателя отчетов .

Портал Azure

  1. Войдите в портал Azure как читатель отчетов, читатель безопасности, глобальный читатель, администратор безопасности или другая роль с разрешением.
  2. Перейдите к Microsoft Entra ID>Подпись журналов.
  3. Выберите + ДобавитьIP-адрес фильтров > и нажмите кнопку Применить.
  4. В поле Фильтр по IP-адресу вставьте двоеточие (:).
  5. При необходимости скачайте этот список записей журнала в формате JSON или CSV для дальнейшей обработки.

Log Analytics

Если ваша организация использует Log Analytics, вы можете запросить IPv6-адреса в журналах с помощью следующего запроса.

union SigninLogs, AADNonInteractiveUserSignInLogs
| where IPAddress has ":"
| summarize RequestCount = count() by IPAddress, AppDisplayName, NetworkLocationDetails
| sort by RequestCount

PowerShell

Организации могут использовать следующий сценарий PowerShell для запроса Microsoft Entra журналов входа в Microsoft Graph PowerShell. Скрипт предоставляет список IPv6-адресов, а также приложение и количество его отображения.

$tId = "TENANT ID"  # Add the Azure Active Directory tenant ID.
$agoDays = 2  # Will filter the log for $agoDays from the current date and time.
$startDate = (Get-Date).AddDays(-($agoDays)).ToString('yyyy-MM-dd')  # Get filter start date.
$pathForExport = "./"  # The path to the local filesystem for export of the CSV file. 

Connect-MgGraph -Scopes "AuditLog.Read.All" -TenantId $tId 

# Get both interactive and non-interactive IPv6 sign-ins.
$signInsInteractive = Get-MgAuditLogSignIn -Filter "contains(IPAddress, ':')" -All
$signInsNonInteractive = Get-MgAuditLogSignIn -Filter "contains(IPAddress, ':')" -All 

# Summarize IPv6 & app display name count.
$signInsInteractive |
    Group-Object IPaddress, AppDisplayName |
    Select-Object @{Name = 'IPaddress'; Expression = {$_.Group[0].IPaddress}},
        @{Name = 'AppDisplayName'; Expression = {$_.Group[0].AppDisplayName}},
        Count |
    Sort-Object -Property Count –Descending |
    Export-Csv -Path ($pathForExport + "Summary_Interactive_IPv6_$tId.csv") -NoTypeInformation
$signInsNonInteractive |
    Group-Object IPaddress, AppDisplayName |
    Select-Object @{Name = 'IPaddress'; Expression = {$_.Group[0].IPaddress}},
        @{Name = 'AppDisplayName'; Expression = {$_.Group[0].AppDisplayName}},
        Count |
    Sort-Object -Property Count –Descending |
    Export-Csv -Path ($pathForExport + "Summary_NonInteractive_IPv6_$tId.csv") -NoTypeInformation

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

Мы будем обновлять эту статью. Ниже приведена краткая ссылка, которую можно использовать для получения обновленных и новых сведений: https://aka.ms/azureadipv6.

Свяжитесь с нами для получения помощи

Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.