elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [Python]Transformar rangos de IP
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Python]Transformar rangos de IP  (Leído 3,572 veces)
.:UND3R:.
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.118


Ingeniería inversa / MASM


Ver Perfil WWW
[Python]Transformar rangos de IP
« en: 6 Abril 2015, 04:50 am »

Hola a todos, entenderán soy nuevo en Python  >:( a ver si me resuelven una dudilla que tengo, habrá algún módulo/librería que me permita obtener los rangos de IP:

Entrada:

Citar
190.168.0.1/24

Salida:
Citar
190.168.0.0
190.168.0.1
190.168.0.2
...
.
190.168.0.255

Espero que se entienda, saludos


En línea


Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)
tincopasan


Desconectado Desconectado

Mensajes: 1.286

No es lo mismo conocer el camino que recorrerlo.


Ver Perfil
Re: [Python]Transformar rangos de IP
« Respuesta #1 en: 6 Abril 2015, 05:11 am »

la verdad es que no entiendo muy bien, pero si sabés la dirección 190.168.1.24
el rango seria como iniciar los valores después del último punto desde 0  190.168.1.0 e incrementar en  1 hasta 255 y en todo caso caso usando os haces un ping a la dirección ip que quieras:  os.system("ping "+ip)
perdón sino es ni cerca de lo que preguntas.


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: [Python]Transformar rangos de IP
« Respuesta #2 en: 6 Abril 2015, 05:40 am »

4 funciones

primero
Código
  1. import socket, struct
  2.  
  3. def ip2long(ip):#convierte octetos a long
  4.  return struct.unpack("!L", socket.inet_aton(ip))[0]
  5.  
  6. def long2ip(ip):#convierte long en octetos
  7.  return socket.inet_ntoa(struct.pack("!L",ip))
  8.  
  9. def ipmask(bits):#crea un mascara de la cantidad bits en formato long
  10.  return ((1<<(bits))-1)<<(32-bits)
  11.  
  12. def iprange(ip,mask):#entrega una tupla con la primera y ultima ip del rango
  13.  return [ip&ipmask(mask),ip|(ipmask(mask)^(1<<32)-1)]
  14.  

allí tienes todo lo necesario para jugar con IPs

para hacer un rango

Código
  1. longIP = ip2long("127.0.0.1")#creamos el long
  2. extremos = iprange(longIP,24)#entregamos long y mascara
  3. rango = range(extremos[0],extremos[1]+1)#creamos un array
  4.  
  5. for i in rango: #lo que sea
  6.  print long2ip(i)
  7.  
« Última modificación: 6 Abril 2015, 05:54 am por engel lex » En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
.:UND3R:.
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.118


Ingeniería inversa / MASM


Ver Perfil WWW
Re: [Python]Transformar rangos de IP
« Respuesta #3 en: 18 Mayo 2015, 05:53 am »

Acabo de implementar el script que me has proporcionado y no tengo nada que decir, funciona excelente  ;-)

Muchas gracias por ayudarme, saludos.
En línea


Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
sistema de rangos « 1 2 »
Sugerencias y dudas sobre el Foro
NiCoLaS HdL 10 5,918 Último mensaje 5 Enero 2006, 18:03 pm
por JuszR
[RETO+Python] Buscando rangos « 1 2 »
Scripting
Novlucker 13 8,095 Último mensaje 31 Enero 2011, 18:30 pm
por Karcrack
Rangos IPv6
Redes
16BITBoy 3 4,386 Último mensaje 17 Diciembre 2011, 19:29 pm
por 16BITBoy
bloquear rangos de ip.
Redes
zuekamo 5 5,680 Último mensaje 20 Marzo 2013, 00:47 am
por HdM
Arreglos y rangos
Programación C/C++
D3US 2 2,638 Último mensaje 26 Noviembre 2020, 13:06 pm
por D3US
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines