2026, 새로운 도약을 시작합니다.

한국 IP가 아니면 차단 하는 extend (국내 모든 IP 내장)

그누보드 extend 폴더에 넣어두면 국내IP만 접속가능하게 됩니다.  2025년 5월 국내 IP  기준

국내IP 추출하는 방법은 링크 참고

https://cmdkr.tistory.com/entry/전체국가-IP-리스트중-한국-IP만-문자열로-저장하는-소스-대략-2200개-정도됨

<?php
/*
특정 IP가 국내 IP 인지 확인하는 함수
작성 : 2025-05-15 김성대
한국인터넷정보센터.한국/jsp/statboard/IPAS/ovrse/natal/IPaddrBandCurrent.jsp?nationCode1=KR
에서 2025년5월 현재 전체국가 IP 리스트 중 한국만 뽑아서 문자열로 저장 (대략 2200개 정도됨)
192.* 172.* 공유기 IP도 포함

테스트
$ip = "104.8.230.50";
$ip=$_SERVER['REMOTE_ADDR'];
$ret=is_ip_in_kr($ip);
echo "한국 IP 확인 결과 $ip : $ret<BR>";
*/
if (!is_ip_in_kr($_SERVER['REMOTE_ADDR'])) {
    die("This service is currently limited to users in Korea. (한국에서만 접속 가능합니다.)");
}


/**
 * 특정 IP가 지정된 서브넷 범위 내에 있는지 확인하는 함수
 *
 * @param string $ip 검사할 IP 주소
 * @param string $subnet 서브넷의 시작 IP 주소
 * @param int $cidr 서브넷 마스크 (CIDR 값)
 * @return bool 해당 IP가 서브넷 범위 내에 있으면 true, 아니면 false
 */
function is_ip_in_subnet($ip, $subnet, $cidr) {
    // 시작 IP 주소를 정수로 변환
    $firstIp = ip2long($subnet);
    //echo "$ip,$subnet,$cidr,<BR>";

    // 서브넷 마스크를 기반으로 마지막 IP 주소 계산
    $lastIp = $firstIp + (1 << (32 - $cidr)) - 1;

    // 입력받은 IP 주소를 정수로 변환 후 범위 비교
    $ipLong = ip2long($ip);
    return $ipLong >= $firstIp && $ipLong <= $lastIp;
}

//2025-05-15 현재 국내 IP 현황
// 127. ... 172... 는 공유기 내부 ip
function is_ip_in_kr($ip) {
    $arr_ip=explode("\n","
127.0.0/16
172.30.1/16
14.128.128/17
14.129.0/16
45.112.88/21
.... (소스에는 전체 데이터 있음)

160.187.186/23
163.223.94/23
");

    foreach($arr_ip as $buff) {
        $arr=explode("/",trim($buff));
        if ($arr[0] && is_ip_in_subnet($ip, $arr[0].'.0', $arr[1])) {
            return true;
        }
    }
    return false;
}

첨부파일

check_kr_ip.php (34.5 KB) 61회 2025-05-15 09:35
|

댓글 10개

감사합니다 ^^

선생님 이 파일 하나만 저 폴더에 넣으면 알아서 적용되는거에요 ? 그럼 한국인만 사이트에 접속되는거지요 ?

@ploki0911 네 그렇습니다. 한국으로 등록된 IP만 가능합니다.

그외 지역 IP은 한국인터넷정보센터 에서 받아서 파일에 추가하시면 그 지역도 허용 됩니다.

감사합니다..잘 사용하겠습니다.

그리고 구글애드센스나 구글애널리틱스 등

구글 제품 해외 ip는 제외하는 옵션이 있었으면 좋겠습니다

@아론다론 구글 봇 IP 리스트를 파일에 추가하시면 됩니다.

감사합니다. 역으로 특정지역 아이피만 차단하려면 어떻게 해야 할까요?

적용했습니다 

아주 쉽게  적용 가능하고

쉽게 ip 추가 가능하니 넘 좋습니다

감사합니다. 잘 사용하겠습니다.

수고해 주시어 또 하나를 배워 봅니다....

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

그누보드5 팁자료실

번호 제목 글쓴이 날짜 조회
공지 3년 전 조회 4,598
2741 3일 전 조회 111
2740 4일 전 조회 103
2739 1주 전 조회 209
2738 1주 전 조회 217
2737 1주 전 조회 181
2736 1주 전 조회 280
2735 3주 전 조회 281
2734 3주 전 조회 263
2733 1개월 전 조회 265
2732 1개월 전 조회 301
2731 1개월 전 조회 267
2730 1개월 전 조회 226
2729 1개월 전 조회 355
2728 1개월 전 조회 245
2727 1개월 전 조회 422
2726 1개월 전 조회 256
2725 1개월 전 조회 330
2724 1개월 전 조회 358
2723 1개월 전 조회 267
2722 1개월 전 조회 300
2721 1개월 전 조회 211
2720 2개월 전 조회 304
2719 2개월 전 조회 307
2718 2개월 전 조회 202
2717 2개월 전 조회 336
2716 2개월 전 조회 202
2715 2개월 전 조회 311
2714 2개월 전 조회 273
2713 2개월 전 조회 376
2712 2개월 전 조회 289
🐛 버그신고