You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							290 lines
						
					
					
						
							9.1 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							290 lines
						
					
					
						
							9.1 KiB
						
					
					
				
								<?php
							 | 
						|
								
							 | 
						|
								function curl($url) {
							 | 
						|
								    $ch = curl_init();
							 | 
						|
								    curl_setopt($ch, CURLOPT_URL, $url);
							 | 
						|
								    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
							 | 
						|
								    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
							 | 
						|
								    $g = curl_exec($ch);
							 | 
						|
								    curl_close($ch);
							 | 
						|
								    return $g;
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								function get_ip_info($q)
							 | 
						|
								{
							 | 
						|
								    if( empty($q) OR $q == '0.0.0.0' OR $q == '127.0.0.1') return FALSE;
							 | 
						|
								
							 | 
						|
								    $key = "2017082622061381677054";
							 | 
						|
								    $url = "http://whois.kisa.or.kr/openapi/whois.jsp?query={$q}&key={$key}&answer=json";
							 | 
						|
								
							 | 
						|
								    $query = curl($url);
							 | 
						|
								
							 | 
						|
								    if( $query )
							 | 
						|
								    {
							 | 
						|
								        $result= json_decode($query, TRUE);
							 | 
						|
								
							 | 
						|
								        $data=array();
							 | 
						|
								        $data['countryCode'] = $result['whois']['countryCode'];
							 | 
						|
								        $data['country'] = get_country_name($data['countryCode']);
							 | 
						|
								
							 | 
						|
								        $result = isset($result['whois']['korean']) &&  $result['whois']['korean'] ?$result['whois']['korean'] : array();
							 | 
						|
								
							 | 
						|
								        $data['addr'] = isset($result['user']['netinfo']['addr']) && $result['user']['netinfo']['addr'] ? $result['user']['netinfo']['addr'] : '' ;
							 | 
						|
								        $data['org'] = isset($result['user']['netinfo']['orgName']) && $result['user']['netinfo']['orgName'] ? $result['user']['netinfo']['orgName'] : '';
							 | 
						|
								
							 | 
						|
								        return $data;
							 | 
						|
								    }
							 | 
						|
								
							 | 
						|
								    return FALSE;
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								function get_country_name($code)
							 | 
						|
								{
							 | 
						|
								    $code = strtoupper($code);
							 | 
						|
								
							 | 
						|
								    $countryList = array(
							 | 
						|
								        "AD" => "안도라",
							 | 
						|
								        "AE" => "아랍에미리트",
							 | 
						|
								        'AF' => '아프가니스탄',
							 | 
						|
								        "AG" => "앤티가 바부다",
							 | 
						|
								        "AI" => "앵궐라",
							 | 
						|
								        "AL" => "알바니아",
							 | 
						|
								        "AM" => "아르매니아",
							 | 
						|
								        "AN" => "네덜란드령 안틸레스",
							 | 
						|
								        'AO' => '앙골라',
							 | 
						|
								        'AQ' => '남극',
							 | 
						|
								        'AR' => '아르헨티나',
							 | 
						|
								        'AS' => '아메리칸사모아',
							 | 
						|
								        'AT' => '오스트리아',
							 | 
						|
								        "AU" => "호주",
							 | 
						|
								        'AW' => '아루바',
							 | 
						|
								        'AX' => '올란드 제도',
							 | 
						|
								        'AZ' => '아제르바이잔',
							 | 
						|
								        'BA' => '보스니아 헤르체고비나',
							 | 
						|
								        'BB' => '바베이도스',
							 | 
						|
								        'BD' => '방글라데시',
							 | 
						|
								        'BE' => '벨기에',
							 | 
						|
								        'BF' => '부르키나파소',
							 | 
						|
								        'BG' => '불가리아',
							 | 
						|
								        'BH' => '바레인',
							 | 
						|
								        'BI' => '부룬디',
							 | 
						|
								        'BJ' => '베냉',
							 | 
						|
								        'BM' => '버뮤다',
							 | 
						|
								        'BN' => '브루나이',
							 | 
						|
								        'BO' => '볼리비아',
							 | 
						|
								        'BR' => '브라질',
							 | 
						|
								        'BS' => '바하마',
							 | 
						|
								        'BT' => '부탄',
							 | 
						|
								        'BV' => '부베 섬',
							 | 
						|
								        'BW' => '보츠와나',
							 | 
						|
								        'BY' => '벨라루스',
							 | 
						|
								        'BZ' => '벨리즈',
							 | 
						|
								        'CA' => '캐나다',
							 | 
						|
								        'CC' => '코코스 제도',
							 | 
						|
								        'CD' => '콩고 민주 공화국',
							 | 
						|
								        'CF' => '중앙아프리카 공화국',
							 | 
						|
								        'CG' => '콩고 공화국',
							 | 
						|
								        "CH" => '스위스',
							 | 
						|
								        "CI" => "코트디부아르",
							 | 
						|
								        "CK" => '쿡 제도',
							 | 
						|
								        "CL" => '칠레',
							 | 
						|
								        "CM" => '카메룬',
							 | 
						|
								        'CN' => '중화인민공화국',
							 | 
						|
								        'CO' => '콜롬비아',
							 | 
						|
								        'CR' => '코스타리카',
							 | 
						|
								        'CS' => '세르비아 몬테네그로',
							 | 
						|
								        'CU' => '쿠바',
							 | 
						|
								        'CV' => '카보베르데',
							 | 
						|
								        'CX' => '크리스마스 섬',
							 | 
						|
								        'CY' => '키프로스',
							 | 
						|
								        'CZ' => '체코',
							 | 
						|
								        'DE' => '독일',
							 | 
						|
								        'DJ' => '지부티',
							 | 
						|
								        'DK' => '덴마크',
							 | 
						|
								        'DM' => '도미니카',
							 | 
						|
								        'DO' => '도미니카 공화국',
							 | 
						|
								        'DZ' => '알제리',
							 | 
						|
								        'EC' => '에콰도르',
							 | 
						|
								        'EE' => '에스토니아',
							 | 
						|
								        'EG' => '이지브',
							 | 
						|
								        'EH' => '서사하라',
							 | 
						|
								        'ER' => '에리트레아',
							 | 
						|
								        'ES' => '스페인',
							 | 
						|
								        'ET' => '에티오피아',
							 | 
						|
								        'FI' => '핀란드',
							 | 
						|
								        'FJ' => '피지',
							 | 
						|
								        'FK' => '포클랜드 제도',
							 | 
						|
								        'FM' => '미크로네시아 연방',
							 | 
						|
								        'FO' => '페로제도',
							 | 
						|
								        'FR' => '프랑스',
							 | 
						|
								        'GA' => '가봉',
							 | 
						|
								        'GB' => '영국',
							 | 
						|
								        'GD' => '그레나다',
							 | 
						|
								        'GE' => '그루지야',
							 | 
						|
								        'GF' => '프랑스령 기아나',
							 | 
						|
								        'GH' => '가나',
							 | 
						|
								        'GI' => '지브롤터',
							 | 
						|
								        "GL" => '그린란드',
							 | 
						|
								        "GM" => '감비아',
							 | 
						|
								        'GN' => '기니',
							 | 
						|
								        'GP' => '과들루프',
							 | 
						|
								        'GQ' => '적도 기니',
							 | 
						|
								        'GR' => '그리스',
							 | 
						|
								        'GS' => '사우스조지아 사우스샌드위치 제도',
							 | 
						|
								        'GT' => '과테말라',
							 | 
						|
								        'GU' => '괌',
							 | 
						|
								        'GW' => '기니비사우',
							 | 
						|
								        'GY' => '가이아나',
							 | 
						|
								        'HK' => '홍콩',
							 | 
						|
								        'HM' => '허드 맥도널드 제도',
							 | 
						|
								        'HN' => '온두라스',
							 | 
						|
								        'HR' => '크로아티아',
							 | 
						|
								        'HT' => '아이티',
							 | 
						|
								        'HU' => '헝가리',
							 | 
						|
								        'ID' => '인도네시아',
							 | 
						|
								        "IE" => '아일랜드',
							 | 
						|
								        "IL" => '이스라엘',
							 | 
						|
								        "IN" => '인도',
							 | 
						|
								        "IO" => '영국령 인도양 지역',
							 | 
						|
								        "IQ" => '이라크',
							 | 
						|
								        'IR' => '이란',
							 | 
						|
								        "IS" => '아이슬란드',
							 | 
						|
								        "IT" => '이탈리아',
							 | 
						|
								        "JM" => '자메이카',
							 | 
						|
								        "JO" => "요르단",
							 | 
						|
								        "JP" => '일본',
							 | 
						|
								        "KE" => '케냐',
							 | 
						|
								        "KG" => '키르기스스탄',
							 | 
						|
								        "KH" => "캄보디아",
							 | 
						|
								        "KI" => "키리바시",
							 | 
						|
								        "KM" => "코모로",
							 | 
						|
								        "KN" => "세인트키츠 네비스",
							 | 
						|
								        "KP" => "조선민주주의인민공화국",
							 | 
						|
								        "KR" => "대한민국",
							 | 
						|
								        "KW" => "쿠웨이트",
							 | 
						|
								        "KY" => "케이맨 제도",
							 | 
						|
								        "KZ" => "카자흐스탄",
							 | 
						|
								        "LA" => "라오스",
							 | 
						|
								        "LB" => "레바논",
							 | 
						|
								        "LC" => "세인트루시아",
							 | 
						|
								        "LI" => "리히텐슈타인",
							 | 
						|
								        "LK" => "스리랑카",
							 | 
						|
								        "LR" => "라이베리아",
							 | 
						|
								        "LS" => "레소토",
							 | 
						|
								        "LT" => "리투아니아",
							 | 
						|
								        "LU" => "룩셈부르크",
							 | 
						|
								        "LV" => "라트비아",
							 | 
						|
								        "LY" => "리비아",
							 | 
						|
								        "MA" => "모로코",
							 | 
						|
								        "MC" => "모나코",
							 | 
						|
								        "MD" => "몰도바",
							 | 
						|
								        "MG" => "마다가스카르",
							 | 
						|
								        "MH" => "마셜 제도",
							 | 
						|
								        "MK" => "마케도니아 공화국",
							 | 
						|
								        "ML" => "말리",
							 | 
						|
								        "MM" => "미얀마",
							 | 
						|
								        "MN" => "몽골",
							 | 
						|
								        "MO" => "마카오",
							 | 
						|
								        "MP" => "북마리아나 제도",
							 | 
						|
								        "MQ" => "마르티니크",
							 | 
						|
								        "MR" => "모리타니",
							 | 
						|
								        "MS" => "몬트세랫",
							 | 
						|
								        "MT" => "몰타",
							 | 
						|
								        "MU" => "모리셔스",
							 | 
						|
								        "MV" => "몰디브",
							 | 
						|
								        "MW" => "말라위",
							 | 
						|
								        "MX" => "멕시코",
							 | 
						|
								        "MY" => "말레이시아",
							 | 
						|
								        "MZ" => "모잠비크",
							 | 
						|
								        "NA" => "나미비아",
							 | 
						|
								        "NC" => "누벨칼레도니",
							 | 
						|
								        "NE" => "니제르",
							 | 
						|
								        "NF" => "노퍽 섬",
							 | 
						|
								        "NG" => "나이지리아",
							 | 
						|
								        "NI" => "니카롸과",
							 | 
						|
								        "NL" => "네덜란드",
							 | 
						|
								        "NO" => "노르웨이",
							 | 
						|
								        "NP" => "네팔",
							 | 
						|
								        "NR" => "나우루",
							 | 
						|
								        "NU" => "니우에",
							 | 
						|
								        "NZ" => "뉴질랜드",
							 | 
						|
								        "OM" => "오만",
							 | 
						|
								        "PA" => "파나마",
							 | 
						|
								        "PE" => "페루",
							 | 
						|
								        "PF" => "프랑스령 폴리네시아",
							 | 
						|
								        "PG" => "파푸아 뉴기니",
							 | 
						|
								        "PH" => "필리핀",
							 | 
						|
								        "PK" => "파키스탄",
							 | 
						|
								        "PL" => "폴란드",
							 | 
						|
								        "PM" => "생피에르 미클롱",
							 | 
						|
								        "PN" => "핏메언 제도",
							 | 
						|
								        "PR" => "푸에르토리코",
							 | 
						|
								        "PS" => "팔레스타인",
							 | 
						|
								        "PT" => "포르투갈",
							 | 
						|
								        "PW" => "팔라우",
							 | 
						|
								        "PY" => "파라과이",
							 | 
						|
								        "QA" => "카타르",
							 | 
						|
								        "RE" => "레위니옹",
							 | 
						|
								        "RO" => "루마니아",
							 | 
						|
								        "RU" => "러시아",
							 | 
						|
								        "RW" => "르완다",
							 | 
						|
								        "SA" => "사우디아라비아",
							 | 
						|
								        "SB" => "솔로몬 제도",
							 | 
						|
								        "SC" => "세이셸",
							 | 
						|
								        "SD" => "수단",
							 | 
						|
								        "SE" => "스웨덴",
							 | 
						|
								        "SG" => "싱가포르",
							 | 
						|
								        "SH" => "세인트헬레나",
							 | 
						|
								        "SI" => "슬로베니아",
							 | 
						|
								        "SJ" => "스발바르 얀마옌",
							 | 
						|
								        "SK" => "슬로바키아",
							 | 
						|
								        "SL" => "시에라리온",
							 | 
						|
								        "SM" => "산마리노",
							 | 
						|
								        "SN" => "세네갈",
							 | 
						|
								        "SO" => "소말리아",
							 | 
						|
								        "SR" => "수리남",
							 | 
						|
								        "ST" => "상투메 프린시페",
							 | 
						|
								        "SV" => "엘살바도르",
							 | 
						|
								        "SY" => "시리아",
							 | 
						|
								        "SZ" => "스와질란드",
							 | 
						|
								        "TC" => "터크스 케이커스 제도",
							 | 
						|
								        "TD" => "차드",
							 | 
						|
								        "TF" => "프랑스령 나부와 남극 지역",
							 | 
						|
								        "TG" => "토고",
							 | 
						|
								        "TH" => "타이",
							 | 
						|
								        "TJ" => "타자키스탄",
							 | 
						|
								        "TK" => "토켈라우 제도",
							 | 
						|
								        "TL" => "동티모르",
							 | 
						|
								        "TM" => "투르크메니스탄",
							 | 
						|
								        "TN" => "튀니지",
							 | 
						|
								        "TO" => "통가",
							 | 
						|
								        "TR" => "터키",
							 | 
						|
								        "TT" => "트리니다드 토바고",
							 | 
						|
								        "TV" => "투발루",
							 | 
						|
								        "TW" => "대만",
							 | 
						|
								        "TZ" => "탄자니아",
							 | 
						|
								        "UA" => "우크라이나",
							 | 
						|
								        "UG" => "우간다",
							 | 
						|
								        "UM" => "미국령 군소 제도",
							 | 
						|
								        "US" => "미국",
							 | 
						|
								        "UY" => "우루과이",
							 | 
						|
								        "UZ" => "우즈베키스탄",
							 | 
						|
								        "VA" => "바티칸 시국",
							 | 
						|
								        "VC" => "세인트빈센트 그레나딘",
							 | 
						|
								        "VE" => "베네수엘라",
							 | 
						|
								        "VG" => "영국령 버진아일랜드",
							 | 
						|
								        "VI" => "미국령 버진아일랜드",
							 | 
						|
								        "VN" => "베트남",
							 | 
						|
								        "VU" => "바누아투",
							 | 
						|
								        "WF" => "월리스 푸투나",
							 | 
						|
								        "WS" => "사모아",
							 | 
						|
								        "YE" => "예맨",
							 | 
						|
								        "YT" => "마요트",
							 | 
						|
								        "ZA" => "남아프리카 공화국",
							 | 
						|
								        "ZM" => "잠비아",
							 | 
						|
								        "ZW" => "짐바브웨"
							 | 
						|
								    );
							 | 
						|
								
							 | 
						|
								    if( !$countryList[$code] ) return $code;
							 | 
						|
								    else return $countryList[$code];
							 | 
						|
								}
							 |