403Webshell
Server IP : 103.119.228.120  /  Your IP : 3.12.36.45
Web Server : Apache
System : Linux v8.techscape8.com 3.10.0-1160.119.1.el7.tuxcare.els2.x86_64 #1 SMP Mon Jul 15 12:09:18 UTC 2024 x86_64
User : nobody ( 99)
PHP Version : 5.6.40
Disable Function : shell_exec,symlink,system,exec,proc_get_status,proc_nice,proc_terminate,define_syslog_variables,syslog,openlog,closelog,escapeshellcmd,passthru,ocinum cols,ini_alter,leak,listen,chgrp,apache_note,apache_setenv,debugger_on,debugger_off,ftp_exec,dl,dll,myshellexec,proc_open,socket_bind,proc_close,escapeshellarg,parse_ini_filepopen,fpassthru,exec,passthru,escapeshellarg,escapeshellcmd,proc_close,proc_open,ini_alter,popen,show_source,proc_nice,proc_terminate,proc_get_status,proc_close,pfsockopen,leak,apache_child_terminate,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,dl,symlink,shell_exec,system,dl,passthru,escapeshellarg,escapeshellcmd,myshellexec,c99_buff_prepare,c99_sess_put,fpassthru,getdisfunc,fx29exec,fx29exec2,is_windows,disp_freespace,fx29sh_getupdate,fx29_buff_prepare,fx29_sess_put,fx29shexit,fx29fsearch,fx29ftpbrutecheck,fx29sh_tools,fx29sh_about,milw0rm,imagez,sh_name,myshellexec,checkproxyhost,dosyayicek,c99_buff_prepare,c99_sess_put,c99getsource,c99sh_getupdate,c99fsearch,c99shexit,view_perms,posix_getpwuid,posix_getgrgid,posix_kill,parse_perms,parsesort,view_perms_color,set_encoder_input,ls_setcheckboxall,ls_reverse_all,rsg_read,rsg_glob,selfURL,dispsecinfo,unix2DosTime,addFile,system,get_users,view_size,DirFiles,DirFilesWide,DirPrintHTMLHeaders,GetFilesTotal,GetTitles,GetTimeTotal,GetMatchesCount,GetFileMatchesCount,GetResultFiles,fs_copy_dir,fs_copy_obj,fs_move_dir,fs_move_obj,fs_rmdir,SearchText,getmicrotime
MySQL : ON |  cURL : ON |  WGET : ON |  Perl : ON |  Python : ON |  Sudo : ON |  Pkexec : ON
Directory :  /usr/local/share/man/man3/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /usr/local/share/man/man3/IP::Country.3pm
.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" Set up some character translations and predefined strings.  \*(-- will
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
.\" double quote, and \*(R" will give a right double quote.  \*(C+ will
.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
.\" nothing in troff, for use with C<>.
.tr \(*W-
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
.ie n \{\
.    ds -- \(*W-
.    ds PI pi
.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
.    ds L" ""
.    ds R" ""
.    ds C` ""
.    ds C' ""
'br\}
.el\{\
.    ds -- \|\(em\|
.    ds PI \(*p
.    ds L" ``
.    ds R" ''
.    ds C`
.    ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\"
.\" If the F register is turned on, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD.  Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
.if (\n(rF:(\n(.g==0)) \{
.    if \nF \{
.        de IX
.        tm Index:\\$1\t\\n%\t"\\$2"
..
.        if !\nF==2 \{
.            nr % 0
.            nr F 2
.        \}
.    \}
.\}
.rr rF
.\" ========================================================================
.\"
.IX Title "IP::Country 3"
.TH IP::Country 3 "2013-05-15" "perl v5.16.3" "User Contributed Perl Documentation"
.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
IP::Country \- fast lookup of country codes from IP addresses
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 5
\&  use IP::Country::Fast;
\&  my $reg = IP::Country::Fast\->new();
\&  print $reg\->inet_atocc(\*(Aq212.67.197.128\*(Aq)   ."\en";
\&  print $reg\->inet_atocc(\*(Aqwww.slashdot.org\*(Aq) ."\en";
\&  print $reg\->db_time() ."\en"; # revision date
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
Finding the home country of a client using only the \s-1IP\s0 address can be difficult.
Looking up the domain name associated with that address can provide some help,
but many \s-1IP\s0 address are not reverse mapped to any useful domain, and the
most common domain (.com) offers no help when looking for country.
.PP
This module comes bundled with a database of countries where various \s-1IP\s0 addresses
have been assigned. Although the country of assignment will probably be the
country associated with a large \s-1ISP\s0 rather than the client herself, this is
probably good enough for most log analysis applications, and under test has proved
to be as accurate as reverse-DNS and \s-1WHOIS\s0 lookup.
.SH "CONSTRUCTOR"
.IX Header "CONSTRUCTOR"
The constructor takes no arguments.
.PP
.Vb 2
\&  use IP::Country::Fast;
\&  my $reg = IP::Country::Fast\->new();
.Ve
.SH "OBJECT METHODS"
.IX Header "OBJECT METHODS"
All object methods are designed to be used in an object-oriented fashion.
.PP
.Vb 1
\&  $result = $object\->foo_method($bar,$baz);
.Ve
.PP
Using the module in a procedural fashion (without the arrow syntax) won't work.
.ie n .IP "$cc = $reg\->inet_atocc(\s-1HOSTNAME\s0)" 4
.el .IP "\f(CW$cc\fR = \f(CW$reg\fR\->inet_atocc(\s-1HOSTNAME\s0)" 4
.IX Item "$cc = $reg->inet_atocc(HOSTNAME)"
Takes a string giving the name of a host, and translates that to an
two-letter country code. Takes arguments of both the 'rtfm.mit.edu' 
type and '18.181.0.24'. If the host name cannot be resolved, returns undef. 
If the resolved \s-1IP\s0 address is not contained within the database, returns undef.
For multi-homed hosts (hosts with more than one address), the first 
address found is returned. For private Internet addresses (see \s-1RFC1918\s0), 
returns two asterisks '**'.
.ie n .IP "$cc = $reg\->inet_ntocc(\s-1IP_ADDRESS\s0)" 4
.el .IP "\f(CW$cc\fR = \f(CW$reg\fR\->inet_ntocc(\s-1IP_ADDRESS\s0)" 4
.IX Item "$cc = $reg->inet_ntocc(IP_ADDRESS)"
Takes a string (an opaque string as returned by \fISocket::inet_aton()\fR) 
and translates it into a two-letter country code. If the \s-1IP\s0 address is 
not contained within the database, returns undef.
.ie n .IP "$cc = $reg\->\fIdb_time()\fR" 4
.el .IP "\f(CW$cc\fR = \f(CW$reg\fR\->\fIdb_time()\fR" 4
.IX Item "$cc = $reg->db_time()"
Returns the creation date of the database, measured as number of seconds 
since the Unix epoch (00:00:00 \s-1GMT,\s0 January 1, 1970). Suitable for feeding 
to \*(L"gmtime\*(R" and \*(L"localtime\*(R". When used with IP::Country::Medium or Slow objects,
returns zero.
.SH "PERFORMANCE"
.IX Header "PERFORMANCE"
With a random selection of 65,000 \s-1IP\s0 addresses, the module can look up
over 15,000 \s-1IP\s0 addresses per second on a 730MHz \s-1PIII \s0(Coppermine) and
over 25,000 \s-1IP\s0 addresses per second on a 1.3GHz Athlon. Out of this random 
selection of \s-1IP\s0 addresses, 43% had an associated country code. Please let 
me know if you've run this against a set of 'real' \s-1IP\s0 addresses from your
log files, and have details of the proportion of IPs that had associated
country codes.
.SH "IP::Country::Slow warning"
.IX Header "IP::Country::Slow warning"
During tests of this module, it was found that there was no measurable advantage in using
this module in preference to IP::Country::Medium or IP::Country::Fast. You should
use IP::Country::Medium is the majority of your lookups are of the form 'rtfm.mit.edu'
(domain names), and IP::Country::Fast if the majority of your lookups are of the form
\&'18.181.0.24' (\s-1IP\s0 addresses).
.PP
IP::Country::Medium caches domain-name lookups, whereas IP::Country::Fast does not.
.PP
It is *very* rare for a domain-name lookup to differ from the database used by
IP::Country::Fast. Thus, there is no good reason to prefer a slow domain-name 
lookup to a fast database lookup. Nor is there any significant difference in
coverage between the domain-name system and database. If you can find a real reason
to use IP::Country::Slow, let me know.
.SH "COUNTRY CODES"
.IX Header "COUNTRY CODES"
You'll probably want some kind of country code \-> country name conversion
utility: you should use Geography::Countries from \s-1CPAN.\s0
.PP
However, you should note the circumstances where the country code returned by
IP::Country will deviate from those used by Geography::Countries:
.PP
.Vb 7
\&  AP \- non\-specific Asia\-Pacific location
\&  CS \- Czechoslovakia (former)
\&  EU \- non\-specific European Union location
\&  FX \- France, Metropolitan
\&  PS \- Palestinian Territory, Occupied
\&  ** \- intranet address
\&  undef \- not in database
.Ve
.SH "BUGS/LIMITATIONS"
.IX Header "BUGS/LIMITATIONS"
Only works with IPv4 addresses and \s-1ASCII\s0 hostnames.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
IP::Country::Fast \- recommended for lookups of hostnames which are mostly
in the dotted-quad form ('213.45.67.89').
.PP
IP::Country::Medium \- recommended for lookups of hostnames which are mostly
in the domain-name form ('www.yahoo.com'). Caches domain-name lookups.
.PP
IP::Country::Slow \- \s-1NOT RECOMMENDED.\s0 Only included for completeness. Prefers
domain-name lookups to database lookups, which is an expensive strategy of
no benefit.
.PP
Geo::IP \- wrapper around the geoip C libraries. Less portable. Not measurably 
faster than these native Perl modules. Paid subscription required for database
updates.
.PP
<http://www.apnic.net> \- Asia pacific
.PP
<http://www.ripe.net> \- Europe
.PP
<http://www.arin.net> \- North America
.PP
<http://www.lacnic.net> \- Latin America
.PP
<http://www.afrinic.net> \- Africa and Indian Ocean
.SH "COPYRIGHT"
.IX Header "COPYRIGHT"
Copyright (C) 2002\-2005 Nigel Wetters Gourlay. All Rights Reserved.
.PP
\&\s-1NO WARRANTY.\s0 This module is free software; you can redistribute 
it and/or modify it under the same terms as Perl itself.
.PP
Some parts of this software distribution are derived from the \s-1APNIC,
LACNIC, ARIN, AFRINIC\s0 and \s-1RIPE\s0 databases (copyright details below).
I am not a lawyer, so please direct questions about the \s-1RIR\s0's 
licenses to them, not me.
.SH "APNIC conditions of use"
.IX Header "APNIC conditions of use"
The files are freely available for download and use on the condition 
that \s-1APNIC\s0 will not be held responsible for any loss or damage 
arising from the application of the information contained in these 
reports.
.PP
\&\s-1APNIC\s0 endeavours to the best of its ability to ensure the accuracy 
of these reports; however, \s-1APNIC\s0 makes no guarantee in this regard.
.PP
In particular, it should be noted that these reports seek to 
indicate the country where resources were first allocated or 
assigned. It is not intended that these reports be considered 
as an authoritative statement of the location in which any specific 
resource may currently be in use.
.SH "ARIN database copyright"
.IX Header "ARIN database copyright"
Copyright (c) American Registry for Internet Numbers. All rights reserved.
.PP
The \s-1ARIN WHOIS\s0 data is for Internet operational or technical research
purposes pertaining to Internet operations only.  It may not be used for
advertising, direct marketing, marketing research, or similar purposes.
Use of the \s-1ARIN WHOIS\s0 data for these activities is explicitly forbidden.
\&\s-1ARIN\s0 requests to be notified of any such activities or suspicions thereof.
.SH "RIPE database copyright"
.IX Header "RIPE database copyright"
The information in the \s-1RIPE\s0 Database is available to the public 
for agreed Internet operation purposes, but is under copyright.
The copyright statement is:
.PP
\&\*(L"Except for agreed Internet operational purposes, no part of this 
publication may be reproduced, stored in a retrieval system, or transmitted, 
in any form or by any means, electronic, mechanical, recording, or 
otherwise, without prior permission of the \s-1RIPE NCC\s0 on behalf of the 
copyright holders. Any use of this material to target advertising 
or similar activities is explicitly forbidden and may be prosecuted. 
The \s-1RIPE NCC\s0 requests to be notified of any such activities or 
suspicions thereof.\*(R"
.SH "LACNIC database copyright"
.IX Header "LACNIC database copyright"
Copyright (c) Latin American and Caribbean \s-1IP\s0 address Regional Registry. All rights reserved.
.SH "AFRINIC copyright"
.IX Header "AFRINIC copyright"
Seems to be the \s-1RIPE\s0 copyright. I'm sure they'll correct this in due course.

Youez - 2016 - github.com/yon3zu
LinuXploit