Identificar direcciones MAC e IP en Linux

CompTIABeginner
Practicar Ahora

Introducción

En este laboratorio, aprenderás a identificar información esencial de direccionamiento de red en un sistema Linux utilizando el moderno y potente comando ip a. El objetivo principal es adquirir destreza en la inspección de las interfaces de red de tu sistema y localizar detalles específicos dentro de la salida del comando, incluyendo direcciones MAC, direcciones IPv4 y direcciones IPv6.

Comenzarás ejecutando el comando ip a para mostrar una visión general completa de todas las interfaces de red, como la interfaz de bucle local (lo) y la interfaz Ethernet principal (eth0). A continuación, aprenderás a analizar la salida detallada para identificar la línea link/ether para la dirección MAC, la línea inet para la dirección IPv4 y la línea inet6 para la dirección IPv6, consolidando así tus conocimientos sobre el análisis de redes en Linux.

Mostrar toda la información de las interfaces de red con ip a

En este paso, aprenderás a utilizar el comando ip, que es la herramienta moderna y preferida para visualizar y manipular interfaces de red, direcciones IP y rutas en sistemas Linux. Comenzaremos con el comando más fundamental para mostrar información sobre todas las interfaces de red disponibles.

El comando ip a es un atajo para ip address show. Proporciona una visión general completa de la configuración de red de tu sistema.

Primero, asegúrate de estar en la terminal. Tu ruta predeterminada es ~/project. Ahora, ejecuta el comando ip a para listar todas las interfaces de red y sus direcciones asociadas.

ip a

Verás una salida detallada que enumera todas las interfaces de red. Normalmente, verás varias interfaces:

  1. lo: Es la interfaz de bucle local (loopback), una interfaz de red virtual que el sistema utiliza para comunicarse consigo mismo. Siempre tiene la dirección IP 127.0.0.1.
  2. eth0 (o un nombre similar como enp0s5): Es tu interfaz Ethernet principal, que conecta tu sistema a la red externa. Observa los campos altname, que proporcionan nombres alternativos para la interfaz.
  3. docker0: Si Docker está instalado, es posible que veas una interfaz docker0, que es un puente virtual creado por Docker para la red de contenedores.

Tu salida se verá similar al ejemplo siguiente, aunque los nombres y direcciones específicos serán diferentes.

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:16:3e:0e:d8:3c brd ff:ff:ff:ff:ff:ff
    altname enp0s5
    altname ens5
    inet 172.16.50.202/24 metric 100 brd 172.16.50.255 scope global dynamic eth0
       valid_lft 1892159975sec preferred_lft 1892159975sec
    inet6 fe80::216:3eff:fe0e:d83c/64 scope link
       valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
    link/ether 02:42:60:7e:6f:bc brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever

Tómate un momento para examinar la salida. En los siguientes pasos, desglosaremos esta información para identificar detalles específicos como la dirección MAC y las direcciones IP.

Encontrar la dirección MAC (link/ether)

En este paso, aprenderás a identificar la dirección de control de acceso al medio (MAC) a partir de la salida del comando ip a. La dirección MAC es un identificador único a nivel de hardware asignado a una tarjeta de interfaz de red (NIC). También se conoce como dirección física y se representa como un número hexadecimal de 12 dígitos.

En el paso anterior, ejecutaste ip a y viste mucha información. Ahora, centrémonos en encontrar la dirección MAC. Busca tu interfaz de red principal, que suele ser eth0. La dirección MAC se encuentra en la línea que comienza con link/ether.

Para facilitar esto, puedes redirigir la salida de ip a al comando grep para filtrar solo la línea que contiene la dirección MAC. El símbolo de tubería | toma la salida del comando a su izquierda y la utiliza como entrada para el comando a su derecha.

En tu terminal, ejecuta el siguiente comando:

ip a | grep "link/ether"

Este comando mostrará solo las líneas de la salida de ip a que contienen la cadena "link/ether".

Verás una salida mucho más corta, lo que facilita la localización de las direcciones MAC. Los 12 caracteres hexadecimales separados por dos puntos son las direcciones MAC.

    link/ether 00:16:3e:0e:d8:3c brd ff:ff:ff:ff:ff:ff
    link/ether 02:42:60:7e:6f:bc brd ff:ff:ff:ff:ff:ff

La interfaz de bucle local lo no tiene una dirección MAC tradicional, por lo que no aparecerá en esta salida filtrada. La dirección 00:16:3e:0e:d8:3c es la dirección MAC para la interfaz eth0 en este ejemplo. Tu dirección será diferente, pero seguirá el mismo formato.

Encontrar la dirección IPv4 (inet)

En este paso, localizarás la dirección del Protocolo de Internet versión 4 (IPv4). A diferencia de la dirección MAC física, una dirección IP es una dirección lógica asignada a tu dispositivo para la comunicación en una red. Las direcciones IPv4 son el formato más común, representadas por cuatro números separados por puntos (por ejemplo, 192.168.1.10).

Dentro de la salida del comando ip a, la dirección IPv4 se encuentra en la línea que comienza con inet. Podemos usar el comando grep nuevamente para filtrar la salida, tal como hicimos con la dirección MAC. Para evitar que coincida con inet6, es una buena práctica incluir un espacio después de inet en tu patrón de búsqueda.

En tu terminal, ejecuta el siguiente comando para encontrar todas las direcciones IPv4 configuradas en tu sistema:

ip a | grep "inet "

El comando filtrará la salida para mostrar solo las líneas que contienen direcciones IPv4. Normalmente verás varias: una para la interfaz de bucle local (lo), una para tu interfaz de red principal (eth0) y posiblemente otras como docker0.

    inet 127.0.0.1/8 scope host lo
    inet 172.16.50.202/24 metric 100 brd 172.16.50.255 scope global dynamic eth0
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0

A partir de esta salida, puedes identificar múltiples direcciones IPv4:

  • 127.0.0.1: Es la dirección de bucle local, que el sistema utiliza para comunicarse consigo mismo.
  • 172.16.50.202/24: Es la dirección IPv4 principal para la interfaz eth0, utilizada para comunicarse con otros dispositivos en la red. El /24 es la notación CIDR, que define la máscara de subred para la red. Tu dirección será diferente.
  • 172.17.0.1/16: Es la dirección IPv4 para el puente docker0.

Encontrar la dirección IPv6 (inet6)

En este paso final, identificarás la dirección del Protocolo de Internet versión 6 (IPv6). IPv6 es el sucesor de IPv4 y fue diseñado para solucionar el agotamiento eventual de las direcciones IPv4. Las direcciones IPv6 tienen 128 bits de longitud y se escriben en notación hexadecimal, separadas por dos puntos (por ejemplo, 2001:0db8:85a3:0000:0000:8a2e:0370:7334).

Al igual que con IPv4, el comando ip a muestra información de IPv6. La línea que contiene una dirección IPv6 está claramente marcada con inet6. Usaremos grep una última vez para aislar esta información.

En tu terminal, ejecuta el siguiente comando para encontrar todas las direcciones IPv6 en tu sistema:

ip a | grep "inet6"

Este comando mostrará las líneas que contienen direcciones IPv6 para tus interfaces.

    inet6 ::1/128 scope host
    inet6 fe80::216:3eff:fe0e:d83c/64 scope link

A partir de esta salida, puedes identificar dos direcciones IPv6:

  • ::1/128: Es el formato comprimido para la dirección IPv6 de bucle local, equivalente a 127.0.0.1 en IPv4.
  • fe80::216:3eff:fe0e:d83c/64: Es una dirección IPv6 link-local para la interfaz eth0. Las direcciones link-local se configuran automáticamente en todas las interfaces habilitadas para IPv6 y se utilizan para la comunicación solo en el mismo segmento de red local. Tu dirección será diferente.

¡Felicidades! Ahora has aprendido a utilizar el comando ip a para identificar la dirección MAC, la dirección IPv4 y la dirección IPv6 en un sistema Linux.

Resumen

En este laboratorio, aprendiste a utilizar el comando ip a para identificar direcciones de red en Linux. Ejecutaste ip a, una herramienta moderna y preferida para la configuración de redes, para mostrar información completa sobre todas las interfaces de red. La salida reveló detalles tanto para la interfaz de bucle local (lo) como para la interfaz Ethernet principal (eth0), proporcionando una visión general completa de la configuración de red del sistema.

Al examinar la salida del comando ip a, aprendiste a localizar identificadores de red específicos. Identificaste con éxito la dirección MAC, encontrada en la línea etiquetada como link/ether. Además, localizaste la dirección IPv4 del sistema junto a la etiqueta inet y su dirección IPv6 junto a la etiqueta inet6, dominando la habilidad fundamental de recuperar información esencial de direcciones de red en un sistema Linux.