Post

Introducción a redes SI

Introducción sobre Redes

1. ¿Qué es una red?

Una red es un conjunto de dispositivos (computadoras, servidores, impresoras, etc.) interconectados para compartir recursos, información y servicios. Estas conexiones pueden ser físicas (cables) o inalámbricas.


2. Tipos de redes

  • LAN (Local Area Network): Red de área local, conecta dispositivos en un espacio reducido (oficina, casa).
  • WAN (Wide Area Network): Red de área amplia, conecta redes LAN a través de grandes distancias (ejemplo: Internet).
  • MAN (Metropolitan Area Network): Red que cubre una ciudad o campus.
  • PAN (Personal Area Network): Red personal, como la conexión entre un teléfono y un smartwatch.

3. Componentes básicos de una red

  • Dispositivos finales: Computadoras, teléfonos, impresoras, etc.
  • Dispositivos de red:
    • Switch: Conecta dispositivos dentro de una red LAN.
    • Router: Conecta diferentes redes y dirige el tráfico entre ellas.
    • Access Point: Permite conexiones inalámbricas.
  • Medios de transmisión:
    • Cableado: UTP, fibra óptica.
    • Inalámbrico: Wi-Fi, Bluetooth.
  • Protocolos: Reglas que permiten la comunicación (ejemplo: TCP/IP).

4. Modelos de referencia

  • Modelo OSI (Open Systems Interconnection): Divide la comunicación en 7 capas:
    1. Física
    2. Enlace de datos
    3. Red
    4. Transporte
    5. Sesión
    6. Presentación
    7. Aplicación
  • Modelo TCP/IP: Más práctico, con 4 capas:
    1. Acceso a la red
    2. Internet
    3. Transporte
    4. Aplicación

5. Direccionamiento IP

  • IPv4: Dirección de 32 bits (ejemplo: 192.168.1.1).
  • IPv6: Dirección de 128 bits, diseñada para reemplazar IPv4 (ejemplo: 2001:0db8:85a3::8a2e:0370:7334).
  • Máscara de red: Define qué parte de la IP es la red y cuál el host (ejemplo: 255.255.255.0).

6. Protocolos importantes

  • HTTP/HTTPS: Para la navegación web.
  • FTP: Transferencia de archivos.
  • SMTP/IMAP/POP3: Envío y recepción de correos electrónicos.
  • DNS: Traduce nombres de dominio (ejemplo: www.google.com) a direcciones IP.
  • DHCP: Asigna direcciones IP automáticamente.

7. Seguridad en redes

  • Firewall: Filtra el tráfico de red.
  • VPN: Crea conexiones seguras a través de redes públicas.
  • Cifrado: Protege los datos (ejemplo: HTTPS).
  • Autenticación: Verifica la identidad de los usuarios.

8. Topologías de red

  • Estrella: Todos los dispositivos conectados a un nodo central.
  • Bus: Todos los dispositivos comparten un único medio de transmisión.
  • Anillo: Los dispositivos están conectados en un círculo.
  • Malla: Cada dispositivo está conectado a varios otros.

Cómo funcionan los puertos NAT

Introducción a NAT

NAT (Network Address Translation) es una técnica utilizada en redes para permitir que múltiples dispositivos en una red privada accedan a Internet utilizando una única dirección IP pública. Esto es especialmente útil para conservar direcciones IPv4, que son limitadas.

El NAT actúa como un intermediario entre la red privada y la red pública (Internet), traduciendo las direcciones IP privadas de los dispositivos internos a una dirección IP pública asignada al router o dispositivo NAT.


Tipos de NAT

Existen varios tipos de NAT, pero el más comúnmente utilizado es el NAT de Sobrecarga (o PAT, Port Address Translation), que utiliza puertos para diferenciar las conexiones.

1. NAT Estático

  • Traduce una dirección IP privada a una dirección IP pública fija.
  • Ejemplo: 192.168.1.10 → 203.0.113.10.

2. NAT Dinámico

  • Traduce direcciones IP privadas a una dirección IP pública seleccionada de un grupo de direcciones disponibles.
  • Ejemplo: 192.168.1.10 → 203.0.113.10 o 203.0.113.11 (según disponibilidad).

3. NAT de Sobrecarga (PAT)

  • Traduce múltiples direcciones IP privadas a una única dirección IP pública utilizando diferentes números de puerto.
  • Ejemplo:
    • 192.168.1.10:12345 → 203.0.113.10:54321
    • 192.168.1.11:12346 → 203.0.113.10:54322

Funcionamiento de los Puertos NAT

El NAT de Sobrecarga (PAT) utiliza los puertos para identificar y gestionar múltiples conexiones simultáneas desde dispositivos internos hacia Internet. Esto se logra asignando un puerto único a cada conexión.

1. Traducción de Direcciones y Puertos

Cuando un dispositivo en la red privada inicia una conexión hacia Internet:

  1. El dispositivo utiliza su dirección IP privada y un puerto de origen (por ejemplo, 192.168.1.10:12345).
  2. El router NAT reemplaza la dirección IP privada con su dirección IP pública y asigna un nuevo puerto de origen único (por ejemplo, 203.0.113.10:54321).
  3. El router mantiene una tabla de traducción para rastrear las conexiones activas.

2. Tabla de Traducción NAT

El router NAT crea una tabla que asocia las direcciones IP privadas y los puertos de origen con las direcciones IP públicas y los puertos asignados. Por ejemplo:

IP Privada:Puerto IP Pública:Puerto
192.168.1.10:12345 203.0.113.10:54321
192.168.1.11:12346 203.0.113.10:54322

Cuando el router recibe una respuesta desde Internet, consulta esta tabla para redirigir el tráfico al dispositivo correcto en la red privada.

3. Ejemplo Práctico

  • Un dispositivo con IP privada 192.168.1.10 quiere acceder a un servidor web en Internet (93.184.216.34) en el puerto 80.
  • El router NAT traduce la conexión:
    • Origen: 192.168.1.10:12345203.0.113.10:54321
    • Destino: 93.184.216.34:80
  • Cuando el servidor responde, el router NAT utiliza la tabla de traducción para redirigir la respuesta al dispositivo original.

Ventajas de NAT

  1. Conservación de direcciones IPv4: Permite que múltiples dispositivos compartan una única dirección IP pública.
  2. Seguridad básica: Oculta las direcciones IP privadas de los dispositivos internos.
  3. Flexibilidad: Facilita la conexión de redes privadas a Internet sin necesidad de direcciones IP públicas para cada dispositivo.

Limitaciones de NAT

  1. Problemas con aplicaciones específicas: Algunas aplicaciones que requieren conexiones entrantes (como servidores web o juegos en línea) pueden tener problemas con NAT.
  2. Complejidad en la configuración: Configurar NAT para servicios específicos (como redirección de puertos) puede ser complicado.
  3. Latencia: La traducción de direcciones puede introducir una ligera demora en las conexiones.

Redirección de Puertos (Port Forwarding)

La redirección de puertos es una técnica utilizada para permitir conexiones entrantes desde Internet hacia un dispositivo específico en la red privada. Esto es útil para servicios como servidores web, cámaras de seguridad, etc.

Ejemplo de Redirección de Puertos

  • Un servidor web en la red privada tiene la IP 192.168.1.100 y escucha en el puerto 80.
  • El router NAT puede configurarse para redirigir las solicitudes entrantes al puerto 80 de su IP pública (203.0.113.10:80) hacia el servidor interno (192.168.1.100:80).

Conclusión

El uso de puertos en NAT, especialmente en el caso de NAT de Sobrecarga (PAT), es esencial para permitir que múltiples dispositivos en una red privada accedan a Internet utilizando una única dirección IP pública. Aunque NAT tiene sus limitaciones, sigue siendo una solución ampliamente utilizada para gestionar redes y conservar direcciones IPv4.


Comandos para trabajar con redes en Linux

1. Ver y configurar interfaces de red

ifconfig (obsoleto, reemplazado por ip)

  • Ver información de las interfaces de red:
    1
    
    ifconfig
    
  • Configurar una dirección IP estática:
    1
    
    ifconfig eth0 192.168.1.100 netmask 255.255.255.0
    
  • Activar/desactivar una interfaz:
    1
    2
    
    ifconfig eth0 up
    ifconfig eth0 down
    

ip (reemplazo moderno de ifconfig)

  • Mostrar información de las interfaces de red:
    1
    
    ip addr show
    
  • Asignar una dirección IP estática:
    1
    
    ip addr add 192.168.1.100/24 dev eth0
    
  • Activar/desactivar una interfaz:
    1
    2
    
    ip link set eth0 up
    ip link set eth0 down
    

2. Ver y configurar rutas

route (obsoleto, reemplazado por ip)

  • Ver la tabla de enrutamiento:
    1
    
    route -n
    
  • Añadir una ruta estática:
    1
    
    route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.1
    
  • Eliminar una ruta:
    1
    
    route del -net 192.168.2.0 netmask 255.255.255.0
    

ip (para rutas)

  • Ver la tabla de enrutamiento:
    1
    
    ip route show
    
  • Añadir una ruta estática:
    1
    
    ip route add 192.168.2.0/24 via 192.168.1.1
    
  • Eliminar una ruta:
    1
    
    ip route del 192.168.2.0/24
    

3. Diagnóstico de red

  • ping: Verifica la conectividad con otro dispositivo.
    1
    2
    
    ping 8.8.8.8
    ping www.google.com
    
  • traceroute: Muestra la ruta que sigue un paquete hasta su destino.
    1
    
    traceroute www.google.com
    
  • mtr: Combina ping y traceroute para un análisis más detallado.
    1
    
    mtr www.google.com
    
  • netstat (obsoleto, reemplazado por ss):
    • Ver conexiones activas:
      1
      
      netstat -tuln
      
  • ss (reemplazo moderno de netstat):
    • Ver conexiones activas:
      1
      
      ss -tuln
      
  • nslookup: Resuelve nombres de dominio a direcciones IP.
    1
    
    nslookup www.google.com
    
  • dig: Herramienta avanzada para consultas DNS.
    1
    
    dig www.google.com
    

4. Monitoreo de red

  • tcpdump: Captura y analiza paquetes de red.
    1
    2
    
    tcpdump -i eth0
    tcpdump -i eth0 port 80
    
  • wireshark: Herramienta gráfica para analizar tráfico de red (requiere instalación).

  • iftop: Monitorea el uso del ancho de banda en tiempo real.
    1
    
    iftop
    
  • nload: Muestra el tráfico de red entrante y saliente.
    1
    
    nload
    

5. Configuración de DNS

  • Ver el archivo de configuración de DNS:
    1
    
    cat /etc/resolv.conf
    
  • Cambiar el servidor DNS (temporalmente):
    1
    
    echo "nameserver 8.8.8.8" > /etc/resolv.conf
    

6. Escaneo de red y puertos

  • nmap: Escanea redes y puertos.
    • Escanear una dirección IP:
      1
      
      nmap 192.168.1.1
      
    • Escanear un rango de IPs:
      1
      
      nmap 192.168.1.0/24
      

7. Transferencia de archivos

  • scp: Copia archivos entre dispositivos usando SSH.
    1
    
    scp archivo.txt usuario@192.168.1.2:/ruta/destino
    
  • rsync: Sincroniza archivos entre dispositivos.
    1
    
    rsync -av archivo.txt usuario@192.168.1.2:/ruta/destino
    

8. Configuración de firewall

  • ufw (Uncomplicated Firewall):
    • Permitir un puerto:
      1
      
      ufw allow 22
      
    • Denegar un puerto:
      1
      
      ufw deny 22
      
    • Ver el estado del firewall:
      1
      
      ufw status
      
  • iptables: Configuración avanzada de firewall.
    • Permitir tráfico en un puerto:
      1
      
      iptables -A INPUT -p tcp --dport 22 -j ACCEPT
      
    • Bloquear tráfico en un puerto:
      1
      
      iptables -A INPUT -p tcp --dport 22 -j DROP
      

9. Configuración de Wi-Fi

  • Ver redes disponibles:
    1
    
    nmcli dev wifi list
    
  • Conectarse a una red Wi-Fi:
    1
    
    nmcli dev wifi connect "SSID" password "contraseña"
    

10. Otros comandos útiles

  • curl: Realiza solicitudes HTTP.
    1
    
    curl http://www.google.com
    
  • wget: Descarga archivos desde la web.
    1
    
    wget http://www.ejemplo.com/archivo.zip
    

This post is licensed under CC BY 4.0 by the author.