1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
|
package GeoIP2::Model::AnonymousIP;
use strict;
use warnings;
our $VERSION = '2.006002';
use Moo;
use GeoIP2::Types qw( Bool );
use namespace::clean -except => 'meta';
with 'GeoIP2::Role::Model::Flat', 'GeoIP2::Role::HasIPAddress';
has [
'is_anonymous',
'is_anonymous_vpn',
'is_hosting_provider',
'is_public_proxy',
'is_tor_exit_node'
] => (
is => 'ro',
isa => Bool,
default => 0,
);
1;
# ABSTRACT: Model class for the GeoIP2 Anonymous IP database
__END__
=pod
=encoding UTF-8
=head1 NAME
GeoIP2::Model::AnonymousIP - Model class for the GeoIP2 Anonymous IP database
=head1 VERSION
version 2.006002
=head1 SYNOPSIS
use 5.008;
use GeoIP2::Model::AnonymousIP;
my $anon = GeoIP2::Model::AnonymousIP->new(
raw => {
is_anonymous => 1,
is_hosting_provider => 1,
ip_address => '24.24.24.24'
}
);
print $anon->is_anonymous(), "\n";
=head1 DESCRIPTION
This class provides a model for the data returned by the GeoIP2 Anonymous IP
database.
=head1 METHODS
This class provides the following methods:
=head2 $anon->is_anonymous()
Returns true if the IP address belongs to any sort of anonymous network.
=head2 $anon->is_anonymous_vpn()
Returns true if the IP address is registered to an anonymous VPN provider.
If a VPN provider does not register subnets under names associated with them,
we will likely only flag their IP ranges using the C<is_hosting_provider>
attribute.
=head2 $anon->is_hosting_provider()
Returns true if the IP address belongs to a hosting or VPN provider
(see description of C<is_anonymous_vpn> attribute).
=head2 $anon->is_public_proxy()
Returns true if the IP address belongs to a public proxy.
=head2 $anon->is_tor_exit_node()
Returns true if the IP address is a Tor exit node.
=head2 $anon->ip_address()
Returns the IP address used in the lookup.
=head1 SUPPORT
Bugs may be submitted through L<https://github.com/maxmind/GeoIP2-perl/issues>.
=head1 AUTHORS
=over 4
=item *
Dave Rolsky <drolsky@maxmind.com>
=item *
Greg Oschwald <goschwald@maxmind.com>
=item *
Mark Fowler <mfowler@maxmind.com>
=item *
Olaf Alders <oalders@maxmind.com>
=back
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2013 - 2019 by MaxMind, Inc.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=cut
|