IP::China - decide whether an internet address is from China
use utf8; use IP::China 'chinese_ip'; if (chinese_ip ('127.0.0.1')) { print '你好'; }
This documents IP::China version 20180703 corresponding to git commit 3e01997b421c99d7ef5beb8e695a7a756b031f23 released on Wed Jul 11 15:44:59 2018 +0900.
This module incorporates the MaxMind GeoLite data of date 20180703 (YYYYMMDD).
Decide whether an IP address originates from China.
The module has only one function:
my $is_chinese = chinese_ip ('255.255.255.255');
Given an internet protocol string (version 4), decide whether it is Chinese or not. The return value is a true value (-1) if the address is from China, and a false value (0) if the address is not from China.
The module will be periodically updated. Allocated addresses for China may change. The script to build updates is included in the git repository for this distribution.
The script also includes some errata for the MaxMind list.
The data block as follows:
74.125.16.64/26,1814991,6252001,,0,0
is recorded as in China (country code 1814991), but this block seems to belong to Google & not be in China, so this is discounted from the results.
http://www.lemoda.net/networking/block-china/ contains an article and some links to further information.
Ben Bullock, <bkb@cpan.org>
This package and associated files are copyright (C) 2013-2018 Ben Bullock.
You can use, copy, modify and redistribute this package and associated files under the Perl Artistic Licence or the GNU General Public Licence.
This product includes GeoLite data created by MaxMind, available from http://www.maxmind.com. The GeoLite databases are distributed under the Creative Commons Attribution-ShareAlike 3.0 Unported License. The GeoLite data is in the file block-china-data.c of the distribution.
To install IP::China, copy and paste the appropriate command in to your terminal.
cpanm
cpanm IP::China
CPAN shell
perl -MCPAN -e shell install IP::China
For more information on module installation, please visit the detailed CPAN module installation guide.