IP 대역폭을 체크하여 Local IP 접근권한 체크

네트워크에 특정 IP를 가지고 있는 호스트가 주기적으로 접근할때 그 IP의 대역폭을 등록하여 대역폭 안에 들어오는 IP를 체크하여 원천적으로 접근을 봉쇄할 수 있습니다.

# 접근을 막기 위한 IP 대역폭 값을 지정합니다. IP 대역폭이 늘어나면 배열 안에 계속해서 추가해주시면 됩니다.

string[] IP_BEND_WIDTH = { "222", "223", "233", "245" };

# Local IP Address를 검사하는 메소드 입니다.

///<summary>
/// IP 대역폭체크
///</summary>
///<returns></returns>
public static bool IPCheck()
{
        bool isCheck = false;
        // Local IP Address
        IPHostEntry ihe = Dns.GetHostByName(Dns.GetHostName());
        IPAddress userip = ihe.AddressList[0];
        string ipaddr = userip.ToString();
        // Local IP가 등록된 IP 대역폭에 있는지 체크
        for(int i=0; i<IP_BANDWITH.Length; i++)
        {
               if(IP_BANDWITH[i].ToString() != ipaddr.Substring(0,3))
               {
                       break;
               }
               else
               {
                       isCheck = true;
               }
        }
        return isCheck;
        }
}

# Local IP Address를 검사하는 메소드 입니다.

static void Main(string[] args)
{
    if(!IPCheck())
    {
        //
처리루틴
    }
    else
    {
        //
처리루틴
    }
}