Foros del Web » Programando para Internet » PHP »

Mejor manera de trabajar con IPs en una base de datos

Estas en el tema de Mejor manera de trabajar con IPs en una base de datos en el foro de PHP en Foros del Web. Buenas, buscando la mejor manera de almacenar IPs en una base de datos, me he encontrado con esto: http://explainextended.com/2009/04/04/banning-ips/ , pero no acabo de entender ...
  #1 (permalink)  
Antiguo 11/04/2012, 12:49
danihxh
Invitado
 
Mensajes: n/a
Puntos:
Mejor manera de trabajar con IPs en una base de datos

Buenas, buscando la mejor manera de almacenar IPs en una base de datos, me he encontrado con esto: http://explainextended.com/2009/04/04/banning-ips/, pero no acabo de entender el sistema que utiliza para almacenarlas, así que sería de gran ayuda si alguien me lo pudiese explicar, sobretodo la parte de:

Código:
INSERT
INTO    t_ban (start, end, mask, geonetwork)
SELECT  @_start := network & (0xFFFFFFFF & ~((1 << mask) - 1)) AS start,
@_end := network | (1 << mask) - 1 AS end,
mask,
GeomFromText(CONCAT('LINESTRING(', @_start, ' -1, ', @_end, ' 1)'))
FROM    (
SELECT  (CAST(0x100000000 AS UNSIGNED) * RAND(20090404)) AS network,
-FLOOR(LOG2(RAND(20090404 << 1))) AS mask
FROM    filler
) q;
que se muestra al pulsar en Table creation details.

Muchas gracias! :D
  #2 (permalink)  
Antiguo 11/04/2012, 14:07
Avatar de Trublux  
Fecha de Ingreso: octubre-2010
Ubicación: Madrid
Mensajes: 355
Antigüedad: 13 años, 6 meses
Puntos: 48
Respuesta: Mejor manera de trabajar con IPs en una base de datos

Podrías guardar las IPs como campo numérico usando las funciones de red de PHP:
También podrías hacer lo mismo pero usando las funciones de MySQL:
__________________
eZ Publish Developer Basic Legacy
eZ Publish Developer Basics (4.4)
Alojamientos rurales en España
  #3 (permalink)  
Antiguo 12/04/2012, 05:50
danihxh
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Mejor manera de trabajar con IPs en una base de datos

Gracias por la respuesta Trublux, de todas maneras eso ya lo sabía, lo que no logro entender es el trozo de código que he puesto, como por ejemplo qué es mask, qué es network, qué es esa q que aparece al final de la consulta y sobretodo como transformo una dirección ip, ya sea en la forma con puntos o convertida a long, en todos esos datos :S

EDITADO: Bueno, un problema menos. network es probablemente la ip convertida a long.

Última edición por danihxh; 12/04/2012 a las 06:19
  #4 (permalink)  
Antiguo 21/04/2012, 02:18
danihxh
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Mejor manera de trabajar con IPs en una base de datos

¿Nadie? TT

Etiquetas: ips
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:24.