Почему ошибка «не удается найти свойство IPv4Connectivity»?

Почему выдаёт ошибку
Не удается найти свойство "IPv4Connectivity" для этого объекта. Убедитесь, что оно существует.
D:\IPv6Tunnel.ps1:141 знак:20
+ ...  Where-Object { $_.NetProfile.IPv4Connectivity -eq 'Internet' }).IPV4 ...
+                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], PropertyNotFoundException
    + FullyQualifiedErrorId : PropertyNotFoundStrict

Сам скрипт

ПС. Get-NetIPConfiguration -Detailed показывает что есть.
  • Вопрос задан
  • 688 просмотров
Решения вопроса 1
@0x0f80
Потому что не у всех интерфейсов есть свойство IPv4Connectivity. Можно добавить такую проверку на наличие свойства перед его использованием:
$ClientIPv4Address = $(Get-NetIPConfiguration | Where-Object {
    $_.NetProfile -and $_.NetProfile.PSObject.Properties['IPv4Connectivity'] -and $_.NetProfile.IPv4Connectivity -eq 'Internet'
}).IPV4Address[0].IPAddress
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы