Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie verwende ich ein PHP/MySQL-basiertes Skript, um IP-Blöcke von einer Website zu verbieten?

Warum nicht Netzmasken verwenden ?

  • 192.168.1.0/24 blockiert 192.168.1.0 - 182.168.1.255
  • 1.0.0.0/8 Blöcke 1.0.0.0 - 1.255.255.255

Auf diese Weise benötigen Sie nur 5 Bytes für IPv4-Adressen. Wenn Sie mit Ihrer Maskierung schlau werden wollen, machen Sie daraus 8 Bytes.

Dies hat den Vorteil, dass Vergleiche sehr schnell durchgeführt werden können, indem einfach die Maske mit der IP ODER-verknüpft wird. So funktioniert IP-Routing.

Außerdem können Sie die MySQL-Funktionen INET_NTOA verwenden und INET_ATON von einer punktformatierten IP-Adresse in ihre numerische Form und wieder zurück zu konvertieren, wodurch die Speicherung effizient und einfach zu handhaben ist.