Сбой активации Windows в сценарии принудительного туннелирования

В этой статье описывается, как устранить проблему активации KMS, которая может возникнуть при включении принудительного туннелирования в сценариях VPN-подключения типа "сеть — сеть" или ExpressRoute.

Признак

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

Причина

Виртуальным машинам Windows Azure необходимо подключиться к серверу Azure KMS для активации Windows. Для активации требуется, чтобы запрос на активацию был получен с общедоступного IP-адреса Azure. В сценарии принудительного туннелирования активация завершается сбоем, так как запрос на активацию поступает из локальной сети, а не с общедоступного IP-адреса Azure.

Решение

Чтобы устранить эту проблему, используйте пользовательский маршрут Azure для маршрутизации трафика активации на сервер Azure KMS.

Первое DNS-имя сервера KMS для Глобального облака Azure имеет azkms.core.windows.net два IP-адреса: 20.118.99.224 и 40.83.235.53. Второе DNS-имя сервера KMS для Глобального облака Azure — с kms.core.windows.net IP-адресом 23.102.135.246. Если вы используете другие платформы Azure, например Azure для Германии, необходимо использовать IP-адрес соответствующего сервера KMS. Дополнительные сведения см. в следующей таблице:

Платформа KMS DNS IP-адрес KMS
Глобальный azure azkms.core.windows.net
kms.core.windows.net
20.118.99.224, 40.83.235.53
23.102.135.246
Azure для Германии kms.core.cloudapi.de 51.4.143.248
Azure – Правительство США kms.core.usgovcloudapi.net
azkms.core.usgovcloudapi.net
23.97.0.13
52.126.105.2
Azure для Китая 21Vianet azkms.core.chinacloudapi.cn
kms.core.chinacloudapi.cn
159.27.28.100, 163.228.64.161
42.159.7.249

Примечание.

Все три IP-адреса для Глобального облака Azure и Azure для Китая, а также два IP-адреса для Azure для государственных организаций США должны быть добавлены в пользовательский маршрут.

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

Для виртуальных машин Resource Manager

Примечание.

Активация использует общедоступные IP-адреса и будет зависеть от стандартного номера SKU Load Balancer конфигурации. Внимательно изучите исходящие подключения в Azure , чтобы узнать о требованиях.

  1. Откройте Azure PowerShell, а затем войдите в подписку Azure.

  2. Выполните следующие команды:

    # First, get the virtual network that hosts the VMs that have activation problems. In this case, we get virtual network ArmVNet-DM in Resource Group ArmVNet-DM:
    $vnet = Get-AzVirtualNetwork -ResourceGroupName "ArmVNet-DM" -Name "ArmVNet-DM"
    
    # Next, create a route table:
    $RouteTable = New-AzRouteTable -Name "ArmVNet-DM-KmsDirectRoute" -ResourceGroupName "ArmVNet-DM" -Location "centralus"
    
    # Next, configure the route table:
    Add-AzRouteConfig -Name "DirectRouteToKMS" -AddressPrefix 23.102.135.246/32 -NextHopType Internet -RouteTable $RouteTable
    Add-AzRouteConfig -Name "DirectRouteToAZKMS01" -AddressPrefix 20.118.99.224/32 -NextHopType Internet -RouteTable $RouteTable
    Add-AzRouteConfig -Name "DirectRouteToAZKMS02" -AddressPrefix 40.83.235.53/32 -NextHopType Internet -RouteTable $RouteTable
    
    Set-AzRouteTable -RouteTable $RouteTable
    
    # Next, attach the route table to the subnet that hosts the VMs:
    Set-AzVirtualNetworkSubnetConfig -Name "Subnet01" -VirtualNetwork $vnet -AddressPrefix "10.0.0.0/24" -RouteTable $RouteTable
    
    Set-AzVirtualNetwork -VirtualNetwork $vnet
    
  3. Перейдите к виртуальной машине с проблемами активации. Используйте PsPing , чтобы проверить, может ли он получить доступ к серверу KMS:

    psping kms.core.windows.net:1688
    psping azkms.core.windows.net:1688
    
  4. Попробуйте активировать Windows и посмотрите, устранена ли проблема.

Для классических виртуальных машин

Важно!

Классические виртуальные машины будут прекращены 1 сентября 2023 г.

Если вы используете ресурсы IaaS из ASM, завершите миграцию до 1 сентября 2023 г. Мы рекомендуем сделать этот переход быстрее, чтобы воспользоваться преимуществами многочисленных улучшений функций в Azure Resource Manager.

Дополнительные сведения см. в статье Перенос ресурсов IaaS в Azure Resource Manager до 1 сентября 2023 г.

  1. Откройте Azure PowerShell, а затем войдите в подписку Azure.

  2. Выполните следующие команды:

    # First, create a new route table:
    New-AzureRouteTable -Name "VNet-DM-KmsRouteGroup" -Label "Route table for KMS" -Location "Central US"
    
    # Next, get the route table that was created:
    $rt = Get-AzureRouteTable -Name "VNet-DM-KmsRouteTable"
    
    # Next, create routes:
    Set-AzureRoute -RouteTable $rt -RouteName "AzureKMS" -AddressPrefix "23.102.135.246/32" -NextHopType Internet
    Set-AzureRoute -RouteTable $rt -RouteName "AzureAZKMS01" -AddressPrefix "20.118.99.224/32" -NextHopType Internet
    Set-AzureRoute -RouteTable $rt -RouteName "AzureAZKMS02" -AddressPrefix "40.83.235.53/32" -NextHopType Internet
    
    # Apply the KMS route table to the subnet that hosts the problem VMs (in this case, we apply it to the subnet that's named Subnet-1):
    Set-AzureSubnetRouteTable -VirtualNetworkName "VNet-DM" -SubnetName "Subnet-1" 
    -RouteTableName "VNet-DM-KmsRouteTable"
    
    
  3. Перейдите к виртуальной машине с проблемами активации. Используйте PsPing , чтобы проверить, может ли он получить доступ к серверу KMS:

    psping kms.core.windows.net:1688
    psping azkms.core.windows.net:1688
    
  4. Попробуйте активировать Windows и посмотрите, устранена ли проблема.

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

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

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