허용 IP (범위 IP 포함) 체크 함수 checkAllowIp()

$allow_ip_list = array(
 '123.123.123.123-123.123.123.255'  //IP범위
 ,'121.134.232.1'  //단일 IP
);


/**
* 허용 IP체크함수
*/
function checkAllowIp($allow_ip_list,$guest_ip){
  $arr = array();
  $t = $t0 = $t1 = NULL;
  $tg = sprintf('%011u',ip2long($guest_ip));
  foreach($allow_ip_list as $val){
   $t = explode('-',$val);
   switch(count($t)){
    case 2: //범위지정
     $t0 = sprintf('%011u',ip2long($t[0]));
     $t1 = sprintf('%011u',ip2long($t[1]));
     if($t0 <= $tg && $tg <= $t1){
      return true;
     }
     break;
    case 1: //단일 IP
     $t0 = sprintf('%011u',ip2long($t[0]));
     if($t0 == $tg){
      return true;
     }
     break;
    default: //잘못된 설정
     exit('##잘못된 리스트 설정입니다!##');
     break;
   }
  }
  return false;
}

댓글
  • No Nickname
    No Comment
  • 권한이 없습니다.
    {{m_row.m_nick}}
    -
목록형 📅 달력형