Это библиотека PHP для анонимизации IP-адресов. Это упрощает соблюдение конфиденциальности пользователей и затрудняет идентификацию конечного пользователя по его IP-адресу. Анонимизация IP-адресов может быть полезна во многих случаях, когда точный IP-адрес не важен или даже нежелателен, например, при статистическом анализе.
Эта библиотека поддерживает адреса IPv4 и IPv6. Адреса анонимизируются по их сетевому идентификатору.
Настройки по умолчанию анонимизируют IP-адрес для подсети /24 (IPv4) или подсети /64 (IPv6), но их можно настроить.
Например, адрес IPv4 192.168.178.123
по умолчанию анонимизируется до 192.168.178.0
.
IPv6-адрес 2a03:2880:2110:df07:face:b00c::1
по умолчанию анонимизируется до 2a03:2880:2110:df07::
.
<?php
use geertw IpAnonymizer IpAnonymizer ;
require ' vendor/autoload.php ' ;
$ ipAnonymizer = new IpAnonymizer ();
var_dump ( $ ipAnonymizer -> anonymize ( ' 127.0.0.1 ' ));
// returns 127.0.0.0
var_dump ( $ ipAnonymizer -> anonymize ( ' 192.168.178.123 ' ));
// returns 192.168.178.0
var_dump ( $ ipAnonymizer -> anonymize ( ' 8.8.8.8 ' ));
// returns 8.8.8.0
var_dump ( $ ipAnonymizer -> anonymize ( ' ::1 ' ));
// returns ::
var_dump ( $ ipAnonymizer -> anonymize ( ' ::127.0.0.1 ' ));
// returns ::
var_dump ( $ ipAnonymizer -> anonymize ( ' 2a03:2880:2110:df07:face:b00c::1 ' ));
// returns 2a03:2880:2110:df07::
var_dump ( $ ipAnonymizer -> anonymize ( ' 2610:28:3090:3001:dead:beef:cafe:fed3 ' ));
// returns 2610:28:3090:3001::
// Use a custom mask:
$ ipAnonymizer -> ipv4NetMask = " 255.255.0.0 " ;
var_dump ( $ ipAnonymizer -> anonymize ( ' 192.168.178.123 ' ));
// returns 192.168.0.0
// You can use this class also in a static way:
var_dump (IpAnonymizer:: anonymizeIp ( ' 192.168.178.123 ' ));
// returns 192.168.178.0
var_dump (IpAnonymizer:: anonymizeIp ( ' 2610:28:3090:3001:dead:beef:cafe:fed3 ' ));
// returns 2610:28:3090:3001::
Эта библиотека лицензируется по лицензии MIT. Полную лицензию смотрите в файле LICENSE.