NAME

IP::China - decide whether an internet address is from China

SYNOPSIS

use IP::China 'chinese_ip';
if (chinese_ip ('127.0.0.1')) {
    print '你好';
}

FUNCTIONS

The module has only one function:

chinese_ip

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.

UPDATES

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. Please refer to Makefile.PL for the git repository URL.

The script also includes some errata for the MaxMind list.

ERRATA

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.

SEE ALSO

http://www.lemoda.net/networking/block-china/ contains an article and some links to further information.

AUTHOR

Ben Bullock, <bkb@cpan.org>

COPYRIGHT

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.

All other files are copyright (C) 2013-2015 Ben Bullock. You may use, copy, modify and redistribute these files under the Perl Artistic Licence or the GNU General Public Licence, version two or later.