위키 엔진을 만들던 중 CIDR 차단 기능을 구현해야 하는데, 이걸 어찌할지 몰라 한참 고민하고 있었다. PHP 상에서 처리를 해야 하나 고민했지만 해답은 SQL에서 찾을 수 있었다. 문제 상황 나는 MariaDB를 운용하고 있었고, 테이블의 각 행에는 차단 대상으로 지정된 CIDR들이 등록되어 있었다. | id | target_ip | |—-|——————| | 1 | 1.2.3.4/32 | | 2 | 123.45.67.0/24 | | 3 | 123.45.0.0/16 | | 4 | 0.0.0.0/1 | 그리고 쿼리를 통해 접속한 IP가 차단 대상에 해당하는지 확인해야 한다. 그래서 특정 IP 주소를 포함하는 CIDR이 테이블 안에 있는지를 살펴야 한다. 검색 끝에 아래와 같은 쿼리를 찾았다. 원래는 CI..