Saltar al contenido

Convertir dirección IP string a binario en Python

Posterior a investigar con expertos en este tema, programadores de diversas áreas y profesores dimos con la solución a la pregunta y la plasmamos en este post.

Solución:

es enchufe.inet_aton() ¿Lo que quieras?

¿Piensas en algo como lo siguiente?

ip = '192.168.1.1'
print '.'.join([bin(int(x)+256)[3:] for x in ip.split('.')])

Estoy de acuerdo con otros, probablemente debería evitar convertir a representación binaria para lograr lo que desea.

El propósito es calcular más tarde la dirección de transmisión para el tráfico de Wake on LAN

ipaddr (ver PEP 3144):

import ipaddr

print ipaddr.IPNetwork('192.168.1.1/24').broadcast
# -> 192.168.1.255

En Python 3.3, ipaddress módulo:

#!/usr/bin/env python3
import ipaddress

print(ipaddress.IPv4Network('192.162.1.1/24', strict=False).broadcast_address)
# -> 192.168.1.255

Para que coincida con el ejemplo en su pregunta exactamente:

# convert ip string to a binary number
print(bin(int(ipaddress.IPv4Address('192.168.1.1'))))
# -> 0b11000000101010000000000100000001

Valoraciones y reseñas

Si para ti ha resultado útil nuestro artículo, agradeceríamos que lo compartas con más entusiastas de la programación y nos ayudes a extender este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *