<?php
/*
한국인터넷정보센터.한국/jsp/statboard/IPAS/ovrse/natal/IPaddrBandCurrent.jsp?nationCode1=KR
에서 2025년5월 현재 전체국가 IP 리스트를 다운 받은 ipv4.csv 파일을
한국만 뽑아서 ipv4_kr_24.csv 문자열로 저장 (대략 2200개 정도됨)
원본:
기준일자,국가코드,시작IP,끝IP,PREFIX,할당일자
20160515,JP,14.102.132.0,14.102.135.255,/22,20100914
20160515,AU,14.102.136.0,14.102.143.255,/21,20100913
20160515,KR,14.128.128.0,14.128.255.255,/17,20100915
20160515,KR,14.129.0.0,14.129.255.255,/16,20100812
20160515,CN,14.130.0.0,14.131.255.255,/15,20100818
저장결과:
14.128.128/17
14.129.0/16
*/
$file = "ipv4.csv"; // CSV 파일 경로
$file_kr = "ipv4_kr_24.csv"; // CSV 파일 경로
// 파일을 읽기 모드로 열기
if (($handle = fopen($file, "r")) !== FALSE) {
$fp2=fopen($file_kr,"w");
echo "<xmp>";
while (($data = fgetcsv($handle)) !== FALSE) { // CSV 파일에서 한 줄씩 읽기
// 국가 코드가 'KR'을 포함하는지 확인
if (strpos($data[1], "KR") !== FALSE) {
// 데이터를 배열로 저장
$arr = $data;
// 시작 IP 주소와 서브넷 마스크 가져오기
$startIp = $arr[2];
$prefix = $arr[4];
$buff=substr($startIp,0,-2).$prefix."\n";
echo $buff;
fputs($fp2,$buff);
}
}
fclose($handle); // 파일 닫기
fclose($fp2);
}
?>
'PHP 코딩 > 보안' 카테고리의 다른 글
특정 IP가 국내 IP 인지 확인하는 함수 (34Kb 로 국내 모든 IP를 함수에 내장) (0) | 2025.05.15 |
---|---|
해외-IP 대역별 현황을 한국인터넷정보센터 에서 다운로드 하기 (0) | 2025.05.15 |
특정 IP가 지정된 서브넷 범위 내에 있는지 확인하는 함수 (0) | 2025.05.15 |