none
[PowerShell Tips] 일정 범위 안에 있는 IP Address 나열 RRS feed

  • 일반 토론

  •            

    질문

     

    PowerShell에서 IPAddress 일정 범위 안에 있는 IP Address를 나열할 수 있습니다.

     

    답변

     

    Step 1 : 일정 범위 안에 있는 IP Address를 나열하기 위해 변수 준비

    아래와 IP Address 클래스 CastingGetAddressBytes()함수를 사용해서 [4]배열로 저장을 합니다.

    $ip1 = ([System.Net.IPAddress]$start).GetAddressBytes()

     

    배열로 저장한 변수를 Reverse함수를 이용해서 순서를 정반대로 변경 후 다시 IPAddress 클래스로 Casting double값으로 변수에 저장합니다.

     

    [Array]::Reverse($ip1)

    $ip1 = ([System.Net.IPAddress]($ip1 -join '.')).Address

     

     

     

    Step 3 : 일정 범위 안에 있는 IP Address 계산

    아래와 같이 For문을 이용해서 시작과 끝 범위 안에 IP Address를 나열 합니다.

     

    for ($x=$ip1; $x -le $ip2; $x++) {

    $ip = ([System.Net.IPAddress]$x).GetAddressBytes()

    [Array]::Reverse($ip)

    $ip -join '.'

    }

     

    참고 자료

    IPAddress Class

    http://msdn.microsoft.com/ko-kr/library/system.net.ipaddress.aspx

     

    Array.Reverse Method

    http://msdn.microsoft.com/ko-kr/library/system.array.reverse.aspx

    2011년 9월 19일 월요일 오전 4:54
    중재자