[powershell] IP 주소 받아오기, 짝수 홀수 아이피 가르기

Get-WmiObject Win32_NetworkAdapterConfiguration -Namespace “root\CIMV2” | where{$_.IPEnabled -eq “True”}

하고 나서, ip만 뽑을땐?

(Get-WmiObject Win32_NetworkAdapterConfiguration -Namespace “root\CIMV2” | where{$_.IPEnabled -eq “True”}).ipaddress[0]

 

또는

 

(gwmi -query “Select IPAddress From Win32_NetworkAdapterConfiguration Where IPEnabled =  True” | Select-Object IPaddress).ipaddress[0]

 

이렇게 하면 IPv4 아이피를 딸 수 있다 .

그럼 이걸 octet 별로 쪼개려면 이렇게 해보자.

 

$iptest=(gwmi -query “Select IPAddress From Win32_NetworkAdapterConfiguration Where IPEnabled =  True” | Select-Object IPaddress).ipaddress[0]

$ipoctet=$iptest -split “\.”

 

Echo $ $ipoctet[3]

-split 로 “.” 으로 나누면, 이렇게 하면 ip주소가 ” . ” 을 기준으로 4등분 되며 각각 $ipoctet[0] ~ $ipoctet[3] 으로 저장된다.

 

여기서 그럼, IP 맨 마지막 숫자가 홀수인경우와 짝수인 경우를 별도의 실행을 시켜주는 방법을 생각해보자

 

if (($ipoctet[3] %= 2) -ne 1)

    {echo “jjaksu”}

else

    {echo “holsu”}

;

 

이런식으로 IP의 마지막 octet의 숫자를 2로 나눈 나머지 값을 1이 아닌 경우 짝수, 1인경우는 홀수 라고 볼 수 있겟다.

이 스타일을 이용하여, 짝수 서버군과 홀수 서버군을 서로 다른 스타일 군으로 관리 할 수 있도록 구성에 적용할 수 도 있다.

 

글쓴이