■ 네트워크 주소 구하기
------------------------------------------------------------------------------------------------------------------------
using System;
using System.Net;
#region 네트워크 주소 구하기 - GetNetworkAddress(ipAddress, subnetMask)
/// <summary>
/// 네트워크 주소 구하기
/// </summary>
/// <param name="ipAddress">IP 주소</param>
/// <param name="subnetMask">서브넷 마스크</param>
/// <returns>네트워크 주소</returns>
public IPAddress GetNetworkAddress(this IPAddress ipAddress, IPAddress subnetMask)
{
byte[] ipAddressByteArray = ipAddress.GetAddressBytes();
byte[] subnetMaskByteArray = subnetMask.GetAddressBytes();
if(ipAddressByteArray.Length != subnetMaskByteArray.Length)
{
throw new ArgumentException("IP 주소와 서브넷 마스크 길이가 일치하지 않습니다.");
}
byte[] networkAddressByteArray = new byte[ipAddressByteArray.Length];
for(int i = 0; i < networkAddressByteArray.Length; i++)
{
networkAddressByteArray[i] = (byte)(ipAddressByteArray[i] & (subnetMaskByteArray[i]));
}
return new IPAddress(networkAddressByteArray);
}
#endregion
------------------------------------------------------------------------------------------------------------------------
'C# > Common' 카테고리의 다른 글
[C#/COMMON] 네트워크 어댑터 정보 리스트 구하기 (0) | 2015.01.24 |
---|---|
[C#/COMMON] 로컬 IP 주소 여부 조사하기 (0) | 2015.01.24 |
[C#/COMMON] 웹 사이트 IP 주소 배열 구하기 (0) | 2015.01.24 |
[C#/COMMON] 내부 IP 주소 구하기 (0) | 2015.01.24 |
[C#/COMMON] 동일 서브넷 마스크 여부 조사하기 (0) | 2015.01.24 |
[C#/COMMON] 네트워크 주소 구하기 (0) | 2015.01.24 |
[C#/COMMON] 브로드캐스트 주소 구하기 (0) | 2015.01.24 |
[C#/COMMON] TakeWhile 확장 메소드를 사용해 지정된 조건이 true인 동안 시퀀스에서 요소 구하기 (0) | 2015.01.22 |
[C#/COMMON] Take 확장 메소드를 사용해 지정된 수의 연속 요소 구하기 (0) | 2015.01.22 |
[C#/COMMON] SkipWhile 확장 메소드를 사용해 지정된 조건이 true이면 시퀀스에 있는 요소를 무시하고 나머지 요소 반환하기 (0) | 2015.01.22 |
[C#/COMMON] Skip 확장 메소드를 사용해 지정된 수의 요소를 건너뛰고 다음 결과 반환하기 (0) | 2015.01.22 |
댓글을 달아 주세요