Extrayendo la dirección MAC usando Python

La dirección MAC, también conocida como dirección física, es el identificador único que se asigna a la NIC (tarjeta de interfaz de red) de la computadora. NIC ayuda en la conexión de una computadora con otras computadoras en la red. La dirección MAC es única para todas las NIC.

Usos de la dirección MAC:

  • Útil en lugares donde la dirección IP cambia con frecuencia. Ayuda al administrador de la red. para obtener información sobre el tráfico de la red.
  • Nos ayuda a configurar qué equipos se pueden conectar a nuestros equipos. De esta forma podemos filtrar posibles ataques de spam/virus.
  • Ayuda a identificar de manera única las computadoras de otras computadoras en todo el mundo.

MAC-Address

Este artículo tiene como objetivo extraer la dirección MAC de la computadora usando Python.

Método 1: usar el módulo mac
Para obtener la dirección física del dispositivo, usamos el módulo getmac de Python.

>>>from getmac import get_mac_address as gma
>>>print(gma())
'3c:7e:94:8f:d0:34'

Método 2: Usar uuid.getnode()

getnode() se puede usar para extraer la dirección MAC de la computadora. Esta función se define en el módulo uuid .
El código ilustrado que se muestra a continuación muestra cómo generar un UUID para un host determinado, identificado por su dirección MAC, utilizando la función uuid1().

# Python Program to compute
# MAC address of host
# using UUID module
  
import uuid
  
# printing the value of unique MAC
# address using uuid and getnode() function 
print (hex(uuid.getnode()))

Producción :

0x163e990bdb

Retirarse :

  • El inconveniente visible es que la salida no está formateada.

Método 3: Usar getnode() + format() [para un mejor formateo]

# Python 3 code to print MAC
# in formatted way.
  
import uuid
  
# joins elements of getnode() after each 2 digits.
  
print ("The MAC address in formatted way is : ", end="")
print (':'.join(['{:02x}'.format((uuid.getnode() >> ele) & 0xff)
for ele in range(0,8*6,8)][::-1]))

Producción :

The MAC address in formatted way is : 00:16:3e:99:0b:db

Retirarse :

  • Este código parece ser complejo.

Método 4: Usar getnode() + findall() + re() [para reducir la complejidad]

# Python 3 code to print MAC
# in formatted way and easier
# to understand
  
import re, uuid
  
# joins elements of getnode() after each 2 digits.
# using regex expression
print ("The MAC address in formatted and less complex way is : ", end="")
print (':'.join(re.findall('..', '%012x' % uuid.getnode())))

Producción :

The MAC address in formatted and less complex way is : 00:16:3e:99:0b:db

Publicación traducida automáticamente

Artículo escrito por suman_709 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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