본문 바로가기

Etc

아이피로 국가 코드 검색

728x90

내용 수정합니다(@20230116).

https://www.data.go.kr/iim/api/selectAPIAcountView.do

 

공공데이터 포털

국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Datase

www.data.go.kr

api는 위 링크로 가셔서 신청하시면 됩니다.

신청하고 나면 위처럼 인증키를 주는데요, 저 같은 경우는 인코딩이 된 인증키가 먹히더라구요. 인코딩이나 디코딩 둘 중 하나 되는 걸로 하시면 됩니다.

curl로 주소를 보낼 때

https://apis.data.go.kr/B551505/whois/ipas_country_code?serviceKey=인증키&query=202.30.50.51&answer=xml 

여기로 보내면 됩니다.

$ch = curl_init();
$service_key = '';
$ip = $_SERVER['REMOTE_ADDR'];
$url = 'https://apis.data.go.kr/B551505/whois/ipas_country_code?serviceKey='.$service_key.'&query='.$ip.'&answer=xml';
curl_setopt_array($ch, [
   CURLOPT_URL => $url,
   CURLOPT_RETURNTRANSFER => true,
   CURLOPT_CONNECTTIMEOUT => 10,
   CURLOPT_SSL_VERIFYPEER => false
]);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response);
/*
{
   "response":{
      "result":{
         "result_code":"10000",
         "result_msg":"정상 응답 입니다."
      },
      "whois":{
         "query":"202.30.50.51",
         "queryType":"IPv4",
         "registry":"KRNIC",
         "countryCode":"KR"
      }
   }
}
*/

echo $result->response->whois->countryCode;

 

아래는 아마 이제 작동 안 할 겁니다.

KISA에서 제공하는 서비스입니다.

http://whois.kisa.or.kr/openapi/ipascc.jsp?query=xxx.xxx.xxx.xxx&key=인증코드&answer=json 

인증코드는 https://후이즈검색.한국/kor/openkey/keyCre.do 여기에서 신청하시면 됩니다. 그냥 이메일 넣고 이메일로 온 코드 인증만 하면 끝입니다. 참고로 이메일로 온 되게 긴 숫자가 인증코든데 인증 후에 바로 테스트 하면 없는 거라고 뜹니다. 대략 2 ~ 3분 후에 테스트 하시면 되는 것 같네요.

query : 아이피

key : 인증코드

answer : json 혹은 xml

 

{ "whois":{ "query":"202.30.50.0", "queryType":"IPv4", "registry":"KRNIC", "countryCode":"KR" } }

결과 코드입니다. 진짜 말 그대로 countryCode만 리턴합니다.

 

https://www.data.go.kr/data/15094277/openapi.do

 

한국인터넷진흥원_인터넷주소(도메인이름, 아이피) 정보 검색 서비스

인터넷주소자원인 도메인, IP 주소, AS 번호의 등록정보 및 할당정보를 조회 할 수 있는 서비스(WHOIS 오픈API)

www.data.go.kr

참고로 data.go.kr에서도 신청 가능하네요.

반응형

Comments