Bienvenidos a este capítulo del Curso de Linux para Hackers – Los comandos IP e Ifconfig. Comparte este articulo y síguenos para recibir más capítulos y cursos gratis.

Esta guía es parte de un curso mucho más grande en donde te enseñamos a convertirte en hacker de 0 a 100. Desde los conocimientos más básicos hasta conseguir empleo.

En esta guía veremos desde cero un tema tan amplio como es Linux y lo haremos desde el punto de vista del hacking y la ciberseguridad.

Para saber más comente a continuación, respondemos todos y cada uno de los comentarios.

¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Lo que aprenderás en este artículo:

  1. Configurar interfaces de red usando ifconfig:
    • Visualizar la configuración de red, incluyendo dirección IP, MAC y MTU.
    • Asignar direcciones IP y máscaras de subred.
    • Habilitar y deshabilitar interfaces de red.
  2. Uso avanzado de ip en Linux:
    • Configurar y administrar interfaces y direcciones IP.
    • Modificar y visualizar rutas de red.
    • Activar o desactivar interfaces específicas, así como agregar o eliminar direcciones IP.

Ifconfig de Linux

El comando ifconfig significa configurador de interfaz. Este comando nos permite inicializar una interfaz, asignar una dirección IP, habilitar o deshabilitar una interfaz. Muestra la ruta y la interfaz de red.

Puede ver la dirección IP, la dirección MAC y la MTU (unidad máxima de transmisión) con el comando ifconfig.

Una versión más nueva de ifconfig es el comando ip. El comando ifconfig funciona para todas las versiones.

Sintaxis:

ifconfig

Mire la instantánea de arriba, muestra la dirección IP de los tres, es decir, eth, lo y wlan.

Obtener detalles de una interfaz específica

Para encontrar la dirección IP de los tres de forma diferente, utilice el comando

  1. ifconfig eth0  
  2. ifconfig lo  
  3. ifconfigwlan0  

Asignar IP y Gateway

Puedes asignar una IP y una Gateway a una interfaz pero estas configuraciones se perderan al reiniciar el sistema.

Syntasis:

ifconfig eth0 <address> netmask <address>  

Habilitar o deshabilitar una intefaz

Para habilitar:

ifup eth0  

para deshabilitar:

ifdown eth0  

Setting MTU size

Por defecto MTU (Maximum Transmission Unit) es de 1500, pero peudes cambiarlo.

Ifconfig eth0 mtu xxxx  

Remplace xxxx con el tamaño.  

Este comando tiene más opciones que puedes explorar

ifconfig --help

También  te recomendamos consultar las páginas man:

 man ifconfig

Comando IP de Linux

El comando IP de Linux es la versión más nueva del comando ifconfig . Es una herramienta útil para configurar las interfaces de red para los administradores de Linux . Se puede utilizar para asignar y eliminar direcciones, activar o desactivar las interfaces y realizar muchas otras tareas útiles.

Sintaxis:

La sintaxis básica del comando IP es la siguiente:

IP xxx.xxx.xxx.xxx

Opciones del comando IP :

El comando IP admite las siguientes opciones de línea de comandos:

-V o -Version: Se utiliza para mostrar la versión del comando IP.

-h, -human, -human-readable: se utiliza para mostrar las estadísticas en forma de valores legibles por humanos.

-b, -batch <FILENAME>: se utiliza para leer e invocar comandos desde el archivo o la entrada indicados. La falla puede provocar la finalización de la utilidad IP . La opción ‘-force’ no permitirá que la IP finalice en caso de errores en el modo por lotes. Si hubiera algún error durante la ejecución, el código de retorno sería distinto de cero.

-s, -stats, -statistics: Se utiliza para mostrar más información como estadísticas o valores de tiempo.

-d, -details: se utiliza para mostrar la salida detallada.

-l, -loops <COUNT>: Se utiliza para especificar un número máximo de bucles.

-f, -family <FAMILIA>: se utiliza para determinar la familia de protocolos. Estos identificadores de familia de protocolos pueden ser inet, inet6, bridge, ipx, dnet, mpls o link. Se utilizan los siguientes atajos para la familia de protocolos:

  • -4: se utiliza para la familia inet.
  • -6: Se utiliza para la familia inet6.
  • -B: Se utiliza para la familia puente.
  • -D: Se utiliza para la familia decnet.
  • -I: Se utiliza para la familia ipx.
  • -M: Se utiliza para la familia mpls.
  • -0: Se utiliza para la familia de enlaces.

-o, -oneline: se utiliza para mostrar cada registro en una sola línea. Reemplaza los campos de línea con el carácter de barra invertida ‘\’. Es útil para contar registros con los comandos wc y grep.

-r, -resolve: se especifica cuando queremos utilizar el solucionador de nombres del sistema para imprimir nombres DNS en lugar de direcciones de host.

-n, -netns <NETNS>: Se utiliza para cambiar la IP a NETNS (espacios de nombres de red) especificados.

-a o -all: se utiliza para ejecutar el comando dado sobre todos los objetos.

-c, -color: Se utiliza para mostrar la salida en color.

-t, -timestamp: Se utiliza para mostrar la hora actual.

-ts, -tshort: es bastante similar a la opción ‘timestamp’, pero utiliza un formato más corto.

-rc, -rcvbuf<SIZE>: se utiliza para configurar el socket Netlink para recibir el tamaño del búfer, el valor predeterminado es 1 MB.

-iec: se utiliza para mostrar las tasas legibles por humanos en unidades IEC (por ejemplo, 1 Ki = 1024).

-br,-brief: Se utiliza para mostrar sólo información esencial en formato tabular para una mejor legibilidad.

IP útil – SINTAXIS DE COMANDOS

En la siguiente tabla se proporciona una sintaxis de comando útil del comando IP.

ObjectoUso
addressSe utiliza para la dirección de protocolo (IP o IPv6) en un dispositivo.
addrlabelSe utiliza para etiquetar la configuración para la selección de la dirección del protocolo.
l2tpSe utiliza para el túnel Ethernet sobre IP (L2TPv3).
linkSe utiliza para conectar en red un dispositivo.
maddressSe utiliza para realizar multidifusión de una dirección.
monitorSe utiliza para ver mensajes de Netlink.
mrouteSe utiliza para la entrada de caché de enrutamiento de multidifusión.
mruleSe utiliza para gobernar en la base de datos de políticas de enrutamiento de multidifusión.
neighbourSe utiliza para administrar entradas de caché ARP o NDISC.
netnsSe utiliza para administrar espacios de nombres de red.
ntableSe utiliza para gestionar el funcionamiento del caché vecino.
routeSe utiliza para la entrada de la tabla de enrutamiento.
ruleSe utiliza para gobernar en la base de datos de políticas de enrutamiento.
tcp_metrics/tcpmetricsSe utiliza para administrar métricas TCP.
tokenSe utiliza para administrar los identificadores de interfaz tokenizados.
tunnelSe utiliza para túnel sobre IP.
tuntapSe utiliza para administrar dispositivos TUN/TAP.

El nombre del objeto también se puede escribir de forma abreviada. Por ejemplo, el objeto de dirección se puede escribir como addr o simplemente a.

¿Cómo funciona el comando IP?

El comando IP administra la forma en que un sistema Linux maneja las direcciones IP, los controladores de interfaces de red y más. Los cambios realizados a través del comando IP surten efecto de inmediato en el sistema; no es necesario reiniciarlo.

El comando IP tiene muchas otras aplicaciones. Tiene muchos subcomandos; cada comando funciona en un objeto específico, como rutas y direcciones IP. Proporciona una gran funcionalidad.

Los siguientes son algunos objetos útiles utilizados por el comando IP:

Dirección: Contiene direcciones IP y rangos.

Enlace: Contiene interfaces de red, como conexiones y adaptadores Wi-Fi .

Ruta: Contiene los protocolos que gestionan el enrutamiento del tráfico enviado a direcciones a través de interfaces (enlaces).

Uso del comando IP

Veamos el siguiente uso del comando IP:

  • Listado de direcciones IP
  • Mostrar las direcciones IPv4 e IPv6
  • Mostrar una única interfaz
  • Agregar una dirección IP a una interfaz
  • Eliminar una dirección IP
  • IP con interfaces de red
  • Iniciar o detener una interfaz de red
  • IP con rutas

Listado de direcciones IP

La utilidad esencial del comando IP es conocer la configuración y las direcciones de nuestro sistema. Para visualizar las direcciones IP de nuestro equipo, ejecute el comando IP con una dirección de la siguiente manera:

ip

El comando anterior mostrará la configuración y las direcciones de nuestro sistema. Sin embargo, también podemos utilizar uno de los siguientes comandos para obtener el mismo resultado:

  1. ip addres show
  2. ip addres

Todos los comandos anteriores producirán el mismo resultado. Considere el siguiente resultado:

En el resultado anterior, podemos ver dos direcciones IP y mucha otra información relacionada. Además, hay información adicional sobre las interfaces que se muestran. La primera dirección IP es la dirección IP interna, que se utiliza para comunicarse localmente. La segunda es la dirección IP externa que se utiliza en la LAN (red de área local).

Mostrar las direcciones IPv4 e IPv6

Si solo desea mostrar la dirección IPv4, ejecute el comando de la siguiente manera:

ip -4  addr

El comando anterior solo mostrará la dirección IP de la versión 4. Considere el siguiente resultado:

Para mostrar la dirección IPv6, ejecute el comando de la siguiente manera:

ip -6  addr

El comando anterior solo mostrará la dirección IP de la versión 6. Considere el siguiente resultado:

Mostrar una única interfaz

Para visualizar la información de una única interfaz, utilice la opción «show dev» con el nombre de la interfaz. Por ejemplo, para ver los detalles de la interfaz ‘wlp6s0’ , ejecute el siguiente comando:

ip addr show dev eth0

El comando anterior mostrará un resultado similar a esto:

También podemos utilizar los indicadores ‘-4’ y ‘-6’ para filtrar la salida y mostrar la información de Ipv4 e Ipv6 relacionada con la interfaz dada.

Agregar una dirección IP a una interfaz

Las opciones ‘add’ y ‘dev’ se utilizan para añadir una dirección IP a una interfaz. Tenemos que especificar la dirección IP y la interfaz que se va a añadir. Por ejemplo, añadir la dirección IP «192.168.7.22» a la interfaz ‘wlp6s0’. Para añadir esta dirección IP, ejecuta el siguiente comando:

sudo ip addr 10.0.2.32 dev eth0

El comando anterior agregará la dirección IP indicada a la interfaz especificada. Si se agrega correctamente, no producirá ningún resultado. Considere el siguiente resultado:

Para verificar la dirección IP agregada, ejecute el siguiente comando:

ip addr show dev eth0

Considere el siguiente resultado:

Del resultado anterior, podemos ver que la dirección IP dada se agrega a la interfaz especificada.

Eliminar una dirección IP

Eliminar una dirección IP es lo mismo que agregarla, excepto que debemos reemplazar la opción ‘add’ por ‘del’. Para eliminar una IP, ejecute el comando de la siguiente manera:

sudo ip addr del 172.17.0.1

El comando anterior eliminará la IP indicada de la interfaz ‘wlp6s0’. Considere el siguiente resultado:

IP con interfaces de red

Podemos utilizar el objeto de enlace para trabajar e inspeccionar las interfaces de red. Para visualizar la interfaz instalada en nuestro sistema, ejecute el siguiente comando:

IP link show

El comando anterior mostrará la interfaz instalada en nuestra máquina. Considere el siguiente resultado:

Iniciar o detener una interfaz de red

La opción ‘set’ con argumentos up y down se utiliza para iniciar y detener una interfaz de red. Considere el siguiente comando:

sudo ip link set docker0 down  

El comando anterior desactivará la interfaz ‘docker0’. Para visualizar el estado de la interfaz. Considere el siguiente resultado:

Para iniciar la interfaz, ejecute el siguiente comando:

sudo ip link set docker up  

El comando anterior iniciará la interfaz indicada. Observe el resultado siguiente:

IP route

El objeto raíz se utiliza para inspeccionar y manipular rutas. Una ruta define el proceso de reenvío del tráfico de red y la interfaz de red aplicada. En el caso de una red compartida, el dispositivo de envío puede reenviar el paquete directamente. Sin embargo, si el dispositivo de destino no está conectado directamente, el dispositivo de envío envía el paquete al enrutador predeterminado. En esta condición, el enrutador se ocupa de los paquetes.

Para mostrar las rutas definidas de nuestro sistema, ejecute el siguiente comando:

ip route

Este comando tiene más opciones que puedes explorar

ip --help

También  te recomendamos consultar las páginas man:

 man ip

Resumen de conceptos clave y comandos de configuración de red en Linux


1. Comando ifconfig

  • Visualización de Interfaces y Configuración IP: Muestra las interfaces de red activas en el sistema, incluyendo detalles como la dirección IP, dirección MAC y la MTU (Unidad Máxima de Transmisión).
    • ifconfig
  • Obtener detalles de una interfaz específica:
    • ifconfig eth0 # Detalles para la interfaz ethernet ifconfig lo # Detalles para la interfaz de loopback ifconfig wlan0 # Detalles para la interfaz Wi-Fi
  • Asignar una dirección IP y puerta de enlace: Configura una dirección IP y una máscara de subred para la interfaz, pero los cambios se perderán tras reiniciar.
    • ifconfig eth0 <dirección_IP> netmask <máscara_de_subred>
  • Habilitar y deshabilitar interfaces:
    • ifup eth0 # Habilita la interfaz ifdown eth0 # Desactiva la interfaz
  • Establecer el tamaño MTU: Cambia el valor MTU de la interfaz.
    • ifconfig eth0 mtu <tamaño_MTU>

2. Comando ip: La alternativa moderna a ifconfig

  • Sintaxis básica:
    • ip a # o también ip address
  • Visualizar todas las interfaces:
    • ip link show # Muestra todas las interfaces de red
  • Listar direcciones IPv4 e IPv6:
    • ip -4 address show # Muestra solo direcciones IPv4 ip -6 address show # Muestra solo direcciones IPv6
  • Obtener detalles de una interfaz específica:
    • ip address show dev eth0
  • Agregar una dirección IP a una interfaz:
    • sudo ip addr add 192.168.1.100/24 dev eth0
  • Eliminar una dirección IP de una interfaz:
    • sudo ip addr del 192.168.1.100/24 dev eth0
  • Activar y desactivar una interfaz de red:
    • sudo ip link set eth0 up # Habilita la interfaz sudo ip link set eth0 down # Desactiva la interfaz

3. Configuración de rutas de red con ip

  • Visualizar la tabla de enrutamiento: Muestra las rutas configuradas en el sistema, especificando por dónde se deben enviar los paquetes.
    • ip route show
  • Agregar una ruta a la tabla de enrutamiento: Para agregar una nueva ruta hacia una red específica.
    • sudo ip route add 192.168.1.0/24 via 192.168.1.1
  • Eliminar una ruta de la tabla de enrutamiento:
    • sudo ip route del 192.168.1.0/24
  • Establecer una puerta de enlace predeterminada: Define la dirección de un enrutador que recibe el tráfico no destinado a subredes conocidas.
    • sudo ip route add default via 192.168.1.1

Conceptos adicionales del comando ip

  • -4 o -6: Muestra solo información de IPv4 o IPv6, respectivamente.
  • -o o –oneline: Muestra la salida en una sola línea, útil para procesar la salida con otros comandos.
  • -s o –statistics: Muestra información detallada como estadísticas o valores de tiempo de las interfaces.
  • -br o –brief: Muestra solo información esencial de las interfaces en un formato tabular.

Resumen y Consideraciones

  • El comando ifconfig sigue siendo útil y ampliamente usado en versiones antiguas de Linux.
  • ip es la herramienta recomendada para sistemas modernos, ya que permite un control más detallado y opciones adicionales para gestionar interfaces de red, rutas y direcciones IP.
  • Estas herramientas de configuración y monitoreo de red son esenciales para administradores de sistemas que trabajan en la gestión de redes y resolución de problemas de conectividad.

Utiliza man ifconfig o man ip para profundizar en opciones y ejemplos avanzados.

Pon en práctica lo aprendido

Ahora pon a prueba lo aprendido con estas preguntas y ejercicios.

Preguntas

  1. ¿Cuál es la función principal del comando ifconfig en Linux?
  2. ¿Qué diferencias existen entre el comando ifconfig y el comando ip en términos de funcionalidad?
  3. ¿Cómo se puede ver la dirección IP de una interfaz específica utilizando ifconfig?
  4. ¿Qué comando utilizarías para habilitar una interfaz de red con ifconfig?
  5. ¿Cuál es la sintaxis para asignar una dirección IP y una máscara de red a una interfaz con ifconfig?
  6. ¿Cómo se puede modificar la MTU de una interfaz con ifconfig?
  7. ¿Qué hace el comando ip addr show?
  8. ¿Cómo mostrarías solo las direcciones IPv4 en el sistema utilizando el comando ip?
  9. ¿Cuál es la sintaxis para agregar una dirección IP a una interfaz específica utilizando ip?
  10. ¿Qué comando usarías para listar todas las rutas configuradas en el sistema?

Ejercicios

  1. Ver configuración de red básica: Ejecuta ifconfig y describe los campos mostrados, como dirección IP, MAC y MTU.
  2. Asignar una dirección IP temporal: Usa ifconfig para asignar la dirección IP 192.168.1.10 a la interfaz eth0 con una máscara de red 255.255.255.0.
  3. Habilitar y deshabilitar una interfaz: Usa ifup para activar y ifdown para desactivar la interfaz eth0.
  4. Configurar MTU: Cambia la MTU de la interfaz eth0 a 1400 utilizando ifconfig.
  5. Ver direcciones IP: Usa ip addr para mostrar todas las direcciones IP configuradas en el sistema.
  6. Mostrar solo IPv4: Usa ip -4 addr para listar únicamente las direcciones IPv4 del sistema.
  7. Agregar dirección IP: Usa ip para asignar la dirección 10.0.0.5/24 a la interfaz eth0.
  8. Eliminar dirección IP: Borra la dirección IP 10.0.0.5 de la interfaz eth0 con el comando ip.
  9. Reiniciar una interfaz: Usa ip link set eth0 down y ip link set eth0 up para apagar y encender la interfaz eth0.
  10. Listar rutas IP: Usa ip route para mostrar la tabla de enrutamiento de red.

Respuestas a las Preguntas

  1. Función principal de ifconfig: Configurar y mostrar información de las interfaces de red, como direcciones IP y MAC.
  2. Diferencias entre ifconfig y ip: El comando ip es una versión más moderna que ofrece opciones adicionales y compatibilidad con funcionalidades avanzadas de red.
  3. Ver IP de una interfaz específica con ifconfig:
    • ifconfig eth0
  4. Habilitar una interfaz de red con ifconfig:
    • ifup eth0
  5. Sintaxis para asignar una IP y máscara de red:
    • ifconfig eth0 192.168.1.10 netmask 255.255.255.0
  6. Modificar MTU con ifconfig:
    • ifconfig eth0 mtu 1400
  7. Función de ip addr show: Muestra todas las direcciones IP configuradas en el sistema, tanto IPv4 como IPv6.
  8. Mostrar solo IPv4 con ip:
    • ip -4 addr
  9. Agregar una dirección IP con ip:
    • sudo ip addr add 192.168.1.100/24 dev eth0
  10. Listar rutas configuradas:
    • ip route

Respuestas a los Ejercicios

  1. Ver configuración de red básica:
    • ifconfig Descripción: Muestra la IP asignada, dirección MAC, estado de la interfaz (UP/DOWN) y MTU.
  2. Asignar dirección IP temporal:
    • sudo ifconfig eth0 192.168.1.10 netmask 255.255.255.0
  3. Habilitar y deshabilitar la interfaz eth0:
    • sudo ifup eth0 sudo ifdown eth0
  4. Configurar MTU:
    • sudo ifconfig eth0 mtu 1400
  5. Ver direcciones IP:
    • ip addr
  6. Mostrar solo IPv4:
    • ip -4 addr
  7. Agregar dirección IP:
    • sudo ip addr add 10.0.0.5/24 dev eth0
  8. Eliminar dirección IP:
    • sudo ip addr del 10.0.0.5/24 dev eth0
  9. Reiniciar la interfaz:
    • sudo ip link set eth0 down sudo ip link set eth0 up
  10. Listar rutas IP:
    • ip route

No te detengas, sigue avanzando

Aquí tienes un propósito que debes considerar seriamente: si has querido mejorar tus habilidades en hacking, Ciberseguridad y programación ahora es definitivamente el momento de dar el siguiente paso. ¡Desarrolla tus habilidades aprovechando nuestros cursos a un precio increíble y avanza en tu carrera! El mundo necesita más hackers…

¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Sobre los autores

Álvaro Chirou

Yo soy Álvaro Chirou, tengo más de 20 Años de experiencia trabajando en Tecnología, eh dado disertaciones en eventos internacionales como OWASP, tengo más de 1.800.000 estudiantes en Udemy y 100 formaciones profesionales impartidas en la misma. Puedes seguirme en mis redes:

Laprovittera Carlos

Soy Laprovittera Carlos. Con más de 20 años de experiencia en IT brindo Educación y Consultoría en Seguridad de la Información para profesionales, bancos y empresas. Puedes saber más de mi y de mis servicios en mi sitio web: laprovittera.com y seguirme en mis redes:

Hacker de 0 a 100 desde las bases hasta conseguir empleo

¿Quieres iniciarte en hacking y ciberseguridad pero no sabes por dónde empezar? Inicia leyendo nuestra guia gratuita: https://achirou.com/hacker-de-0-a-100-desde-las-bases-hasta-conseguir-empleo/ que te lleva de 0 a 100. Desde los fundamentos más básicos, pasando por cursos, recursos y certificaciones hasta cómo obtener tu primer empleo.

Hemos creado una ruta de 0 a 100. Un plan de desarrollo que va desde las bases: cómo aprender hacking, qué aprender, en qué orden; pasando por las areas técnicas necesarias como Linux, Redes, Programación y los conocimientos necesarios en ciber seguridad, hacking, pentesting hasta la práctica y el inicio laboral: Crear tu propio laboratorio, certificaciones, adquirir experiencia e iniciarse laboralmente.

Este es un mega post. Una guía con más de 250 artículos que te llevaran por el camino del hacker. Esta guía es gratuita y esta creada gracias al esfuerzo y al trabajo combinado de Alvaro Chirou y mío (Laprovittera Carlos).

Creamos esta guía (futuro curso) para que puedas iniciarte en este mundo. Puedes arrancar ahora, GRATIS, solo necesitas un PC, conexión a internet y paciencia (Ser hacker NO ES un camino de la noche a la mañana).

El Hacking y la ciberseguridad es una carrera divertida, emocionante y gratificante que te recompensará y desafiará por igual. Sin embargo, para quienes buscan adentrarse en este campo en auge y en constante evolución, puede resultar difícil saber por dónde empezar. ¡Ahí es donde entra en juego nuestra guía en ciberseguridad!

Esta es la hoja de ruta hacia el trabajo de ciberseguridad de tus sueños. Te ayudará a entender qué conocimientos, habilidades y certificados son necesarios para alcanzar tus metas profesionales y tener una carrera próspera. Si quieres ser consultor de ciberseguridad, analista de malware, evaluador de penetración, analista de SOC o cualquier otro puesto de ciberseguridad, esta guía es lo que necesitas.

SIGUE APRENDIENDO GRATIS CON NUESTRAS GUIAS

Aprende con nuestros más de 100 cursos que tenemos disponibles para vos

Compartimos estos recursos para ayudar a la comunidad de hacking y ciberseguridad. COMPARTE y Siéntete libre de agregar más sugerencias en los comentarios a continuación, respondemos todos y cada uno de los comentarios.

Saludos amigos y happy hacking!!!