هذه مكتبة 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. راجع ملف الترخيص للحصول على الترخيص الكامل.