La configuración de redes en Linux es una habilidad esencial para cualquier administrador de sistemas. Este tema cubre los conceptos básicos y avanzados de la configuración de redes en sistemas Linux, incluyendo la configuración de interfaces de red, la gestión de rutas y la resolución de problemas de red.

Objetivos de Aprendizaje

Al final de esta sección, deberías ser capaz de:

  • Configurar interfaces de red en Linux.
  • Gestionar rutas de red.
  • Utilizar herramientas de diagnóstico de red.
  • Configurar servicios de red básicos.

  1. Conceptos Básicos de Redes

1.1. Direcciones IP

  • IPv4: Formato de 32 bits, representado como cuatro octetos (e.g., 192.168.1.1).
  • IPv6: Formato de 128 bits, representado como ocho grupos de cuatro dígitos hexadecimales (e.g., 2001:0db8:85a3:0000:0000:8a2e:0370:7334).

1.2. Máscaras de Red

  • Máscara de Subred: Define la porción de la dirección IP que corresponde a la red y la porción que corresponde a los hosts (e.g., 255.255.255.0).

1.3. Puerta de Enlace (Gateway)

  • Gateway: Dispositivo que actúa como punto de acceso a otra red (e.g., 192.168.1.1).

1.4. DNS

  • DNS (Domain Name System): Sistema que traduce nombres de dominio a direcciones IP.

  1. Configuración de Interfaces de Red

2.1. Configuración Temporal

Para configurar una interfaz de red temporalmente, puedes usar el comando ip o ifconfig.

Usando ip

sudo ip addr add 192.168.1.100/24 dev eth0
sudo ip link set eth0 up

Usando ifconfig

sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0 up

2.2. Configuración Permanente

Para hacer que la configuración de red sea persistente a través de reinicios, debes editar los archivos de configuración de red.

En sistemas basados en Debian/Ubuntu

Edita el archivo /etc/network/interfaces:

auto eth0
iface eth0 inet static
    address 192.168.1.100
    netmask 255.255.255.0
    gateway 192.168.1.1
    dns-nameservers 8.8.8.8 8.8.4.4

En sistemas basados en Red Hat/CentOS

Edita el archivo /etc/sysconfig/network-scripts/ifcfg-eth0:

DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4

  1. Gestión de Rutas de Red

3.1. Visualización de Rutas

Para ver la tabla de rutas, usa el comando ip route:

ip route show

3.2. Añadir Rutas

Para añadir una ruta estática:

sudo ip route add 192.168.2.0/24 via 192.168.1.1

3.3. Eliminar Rutas

Para eliminar una ruta estática:

sudo ip route del 192.168.2.0/24

  1. Herramientas de Diagnóstico de Red

4.1. ping

Envía paquetes ICMP a una dirección IP para verificar la conectividad.

ping 8.8.8.8

4.2. traceroute

Muestra la ruta que toman los paquetes para llegar a una dirección IP.

traceroute 8.8.8.8

4.3. netstat

Muestra estadísticas de red, incluyendo conexiones activas y tablas de enrutamiento.

netstat -r

4.4. ss

Muestra información sobre sockets.

ss -tuln

  1. Configuración de Servicios de Red Básicos

5.1. Configuración de un Servidor DHCP

Instala y configura un servidor DHCP para asignar direcciones IP dinámicamente.

Instalación en Debian/Ubuntu

sudo apt-get install isc-dhcp-server

Configuración

Edita el archivo /etc/dhcp/dhcpd.conf:

subnet 192.168.1.0 netmask 255.255.255.0 {
    range 192.168.1.100 192.168.1.200;
    option routers 192.168.1.1;
    option domain-name-servers 8.8.8.8, 8.8.4.4;
}

5.2. Configuración de un Servidor DNS

Instala y configura un servidor DNS para resolver nombres de dominio.

Instalación en Debian/Ubuntu

sudo apt-get install bind9

Configuración

Edita el archivo /etc/bind/named.conf.local:

zone "example.com" {
    type master;
    file "/etc/bind/db.example.com";
};

Crea el archivo /etc/bind/db.example.com:

$TTL    604800
@       IN      SOA     ns1.example.com. admin.example.com. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      ns1.example.com.
ns1     IN      A       192.168.1.100

Ejercicio Práctico

Ejercicio 1: Configuración de una Interfaz de Red

  1. Configura la interfaz eth0 con la dirección IP 192.168.1.50, máscara de red 255.255.255.0 y puerta de enlace 192.168.1.1 de manera temporal.
  2. Verifica la configuración usando el comando ip addr show.

Solución

sudo ip addr add 192.168.1.50/24 dev eth0
sudo ip link set eth0 up
ip addr show eth0

Ejercicio 2: Añadir una Ruta Estática

  1. Añade una ruta estática para la red 192.168.2.0/24 a través de la puerta de enlace 192.168.1.1.
  2. Verifica la tabla de rutas usando el comando ip route show.

Solución

sudo ip route add 192.168.2.0/24 via 192.168.1.1
ip route show

Conclusión

En esta sección, hemos cubierto los conceptos básicos y avanzados de la configuración de redes en Linux. Aprendiste a configurar interfaces de red, gestionar rutas y utilizar herramientas de diagnóstico de red. También vimos cómo configurar servicios de red básicos como DHCP y DNS. Con estos conocimientos, estás preparado para gestionar redes en sistemas Linux de manera efectiva.

En el próximo tema, exploraremos la configuración de firewalls y la seguridad en Linux, lo cual es crucial para proteger tus sistemas y redes.

Maestría en Linux: De Principiante a Avanzado

Módulo 1: Introducción a Linux

Módulo 2: Comandos Básicos de Linux

Módulo 3: Habilidades Avanzadas en la Línea de Comandos

Módulo 4: Scripting en Shell

Módulo 5: Administración del Sistema

Módulo 6: Redes y Seguridad

Módulo 7: Temas Avanzados

Módulo 8: Proyectos Prácticos

© Copyright 2024. Todos los derechos reservados