Я пытаюсь получить IP-адрес от компьютера, а затем проверить адрес, чтобы увидеть, находится ли он в определенном диапазоне. Однако я действительно не уверен, как именно это сделать. Я выяснил, как получить IP-адрес от компьютера, но затем проверка его по диапазону - другая история ...
Это то, что я имею до сих пор:
Get-WMIObject win32_NetworkAdapterConfiguration | Where-Object { $_.IPEnabled -eq $true } | Foreach-Object { $_.IPAddress } | Foreach-Object { [IPAddress]$_ } | Where-Object { $_.AddressFamily -eq 'Internetwork' } | Foreach-Object { $_.IPAddressToString }
If ($_.IPAddressToString -eq 192.168.0.10 - 192.168.0.50)
{Write-host $_.IPAddressToString}
else ($_.IPAddressToString -ne 192.168.0.10 - 192.168.0.50)
{$_.IPAddressToString = 192.168.0.15}
Первая строка - это то, что я использую для получения IP-адреса. Я зацикливался на операторах if, чтобы, если адрес находился в диапазоне, он ничего не делал, кроме вывода адреса. Я сделал еще заявление о том, что IP-адрес должен быть изменен, если IP-адрес не находится в нужном диапазоне.
Я не нашел ничего промежуточного. Я не знаю, как написать 192.168.0.10 - 192.168.0.50. Я также не смог найти ничего, что позволило бы мне проверить, что IP-адрес находится в этом диапазоне, поэтому я просто использовал равно и не равно. Излишне говорить, что это явно не сработало.