InternetTutoriales

Fundamentos de redes: conceptos básicos que debes aprender

En este artículo aprenderás sobre los fundamentos de redes. Ya que vivimos en un mundo hiperconectado, es importante conocer cómo funcionan y cómo actúan las redes de dispositivos para conocer al detalle que son esas opciones y vocabulario que a veces te encuentras en muchas configuraciones de red y no sabes qué es exactamente…

Paquetes

cabecera de paquete de red

Lo primero, ya que hablamos de paquetes, los paquetes de red no son más que bloques de datos. Cuando se transmiten datos de un ordenador a otro, ésta información se subdivide en paquetes. En el equipo destinatario se vuelven a unir de forma ordenada estos paquetes. Así, si un paquete se pierde se puede enviar solo dicho paquete, y no toda la información al completo.

Existen varios tipos de paquetes, y algunos van encapsulados dentro de otros. Un ejemplo son los paquetes frames de Ethernet, que encapsulan a otros tipos de paquetes de diferentes protocolos para transmitirse en este tipo de redes. Para que esto sea posible y que ambas partes puedan entender los datos transferidos se necesitan procesos de encapsulamiento y desencapsulamiento.

Este tipo de paquetes tienen una determinada arquitectura, con una cabecera (header), el área de datos (payload) y la cola (tráiler). Estas partes varían en función del tipo de paquete. Pero básicamente en la cabecera se incluye información general para saber cómo tratar el paquete y cómo transmitirlo desde el emisor hasta el receptor. En el área de datos se integran los datos a transportar (p.e.: un trozo del fichero que se intenta transmitir). Por último, la cola incluye bits de paridad o código para realizar detección de errores.

Te recomendamos la lectura de las siguientes guías:

TCP/IP

Equivalencia entre el modelo OSI y el TCP/IP. En el OSI, en la capa 7 tenemos la capa de aplicación, la interfaz con el usuario (HTTP, FTP, telnet, SMTP, POP3,…). Después tenemos la capa 6 o de presentación, donde procesa o cifra datos (imágenes, PDFs,…). En la capa de sesión o 5 se canalizan los datos al software apropiado, iniciando, manteniendo y cerrando sesión. La siguiente capa es la de transporte, para la transmisión de forma confiable o no confiable, corrección de errores, etc. El siguiente paso es la capa de red, donde se produce el direccionamiento lógico para el enrutamiento de los datos (routing con IP). La capa 2 o de enlace es donde se realiza el direccionamiento físico (MAC), proporcionando acceso a la transmisión, es decir, es la tarea que realiza el controlador. Finalmente la capa 1 es la física, la correspondiente a los dispositivos de red (Ethernet, ADSL, …). Como puedes comprobar, en el modelo TCP/IP la capa 7, 6 y 5 se integran en una misma capa de aplicación, al igual que la 1 y 2 en otra.

Internet se creó sobre TCP/IP, pero existen otras pilas de red para otros protocolos diferentes (véase AppleTalk, XNS, IPX/SPX, DECnet, SNA,…). No obstante, TCP/IP es el más importante y por eso me centré en la pila de red de éste. Dentro de éste se incluyen algunos protocolos básicos que debemos conocer:

  • IP crudo: Internet Protocol es el protocolo central. Permite transmitir datos entre equipos, pero no garantiza que lleguen a su destino ni que lo hagan de forma ordenada e íntegra.
  • TCP: Transmission Control Protocol es el protocolo de transporte más utilizado. Crea conexiones completas y tiene mecanismos de corrección de errores. La mayoría de subprotocolos trabajan sobre éste, como HTTP, FTP, SMTP, etc.
  • UDP: User Datagram Protocol es una implementación sencilla. Aunque es más rápido que TCP, no posee sistemas de corrección de paquetes corruptos, ni le importa si llegan duplicados, el orden, etc. Todas estas comprobaciones se las deja a la aplicación. Sistemas de streamming, subprotocolos NFS, DNS, etc., se apoyan sobre éste.
  • ICMP: Internet Control Message Protocol es otro sencillo protocolo de comunicación de datos que suele usarse para envíos de mensajes, como por ejemplo los de error.
  • IGMP: Internet Group Management Protocol es otro protocolo para el control del comportamiento de ordenadores mediante IP multicast. Se usa para intercambiar información del estado de pertenencia de los enrutadores IP multicast.
  • ARP: son las siglas de Address Resolution Protocol, un protocolo de comunicación de la capa enlace para encontrar direcciones de hardware (MAC) correspondientes a una IP. Gracias a ARP se pueden hacer conversiones entre IPv4 o IPv6 y las de 6 bytes usadas en Ethernet.

La IP

Como puedes imaginar, para que el emisor y receptor puedan comunicarse, a parte del lenguaje de comunicación y del medio también se necesita una dirección, al igual que nosotros necesitamos una dirección postal para enviar o recibir una carta o un nombre al que dirigirnos durante una conversación. Esta dirección IP, sirve para identificar cada aparato dentro de la red. La IP se compone de unos caracteres decimales separados por puntos (o su versión binaria) que pueden tomar valores desde 0 a 255. Por ejemplo 192.168.0.20 equivaldría al número de 32bits 11000000 10101000 00000000 00010100.

IP

128

17

75

20

Cada parte de una IP tiene un significado. La parte primera y segunda de la tabla corresponde a la red. En cambio las dos siguientes varían en función de si hay o no una subred. Si no existe subred, la parte del 75 en este caso se refieren al host. En caso de haber subred, la parte del 20 designa el número de subred.

Estas IPs del IPv4 se han dividido en clases:

cLASES DE IP
Clase A Rango: 0.x.y.z – 127.x.y.z Usan el primer campo u octeto para identificar la red y los últimos tres para los host. Es decir:

red.host.host.host

Clase B Rango: 128.x.y.z – 191.x.y.z Se asignan los dos primeros octetos para la red y los dos últimos para el host:

red.red.host.host

Clase C Rango: 192.x.y.z – 223.x.y.z Se usan los tres primeros octetos par la red y el último para el host:

red.red.red.host

Clase D Rango: 224.x.y.z – 239.x.y.z Multicast.
Clase E Rango: 240.x.y.z – 255.x.y.z Experimentales.

Algunas de ellas reservadas, como por ejemplo 0.0.0.0 que se refiere al segmento actual (dispositivo actual), 1.1.1.1 para designar todas, 127.0.0.1 para pruebas en este dispositivo (localhost), etc.

Nosotros no podemos elegir la IP, es el proveedor de servicio a Internet (ISP o Internet Service Providers) quien nos da una IP cuando contratamos el alta. Lo que si se nos permite (a veces) es cambiar de una IP estática a dinámica (véase DHCP o Dynamic Host Configuration Protocol). Si es estática o fija, siempre disponemos de la misma, mientras que al tener una dinámica, varía con cada inicialización del router. Con la IP dinámica se consigue mayor seguridad y eludir algunos problemas que causan las IPs estáticas.

El problema del actual sistema IPv4 es que la cantidad de números se está agotando y no hay números suficientes para que todos los aparatos y personas del mundo tengan uno. Por ello se ha puesto en marcha el IPv6, que en vez de 32bits posee direcciones IP de 128bits, además de implementar algunas otras mejoras. Si hacen cuentas verán la cantidad de direcciones que se pueden obtener con IPv4 (232) y con IPv6 (2128). Cada grupo numérico puede ir de 0000 a FFFF. Un ejemplo de dirección IP con el nuevo estándar sería fed1:085a:1917:6a2e:0000:7557:651c:0000 (también puede usarse fed1:085a:1917:6a2e::7557:651c::). Gracias a IPv6 se ha facilitado el IoT o el Internet de las cosas…

Nombres de dominio

Dando un salto en los conceptos, decir que no solo se necesitan ese tipo de direcciones para realizar las comunicaciones. También los nombres de host (hostnames). Estos nombres pueden identificar ordenadores, impresoras en red, y otros dispositivos haciendo referencia a nombres más fáciles de recordar para las personas que las IPs. Los nombres suelen tener una parte que identifica al nombre de la máquina, otra parte para el dominio (grupo al que pertenecen) y un TDL o dominio de nivel superior. Por ejemplo:

EJEMPLO DE DOMINIO
lab.profesionalreview.com
En este caso la subdivisión o subdominio sería lab, aunque no es obligatorio. En muchas webs se corresponde con www y en otras con el idioma, como por ejemplo es.wikipedia.org. El nombre de dominio o de máquina (hostname) sería profesionalreview, que es el grupo de equipos al que pertenece. El TLD (Top Level Domain) en este caso es .com, pero podría ser .ces, .org, .net, .se, .edu, .gov, etc.

Dirección MAC

Otra de las direcciones necesarias para las comunicaciones es la dirección MAC (Media Access Control). Se trata de una dirección que integran los dispositivos de red físicos y que es única, como un DNI para identificar las tarjetas de red. En caso de ser una MAC para Ethernet se usan longitudes de 6 bytes, es decir, consta de 48 bits. Estas direcciones MAC se expresan en hexadecimal y en grupos de números separados por dos puntos. Por ejemplo: 00:A2:BA:C0:07:25, donde:

MAC
00 A2 BA C0 07 25
OUI (Organization Unique Identifier). Corresponde al vendedor del dispositivo de red. UAA (Universally Administration Address). Número de serie del modelo de dispositivo.

Máscara de red

Las máscaras de red o netmasks sirven para definir lo que se encuentra “fuera” o dentro de una máquina, dicho de otro modo, para definir o delimitar un rango de una red. Una máscara de red suele ser un filtro del tipo 255.255.255.0 o aparecer en su formato binario. Por ejemplo, el resultado al filtrar dos IPs con una máscara de red sería:

ejemplos de máscaras
192.168.0.75

255.0.0.0

211.95.17.201

255.255.255.0

192.0.0.0 211.95.17.0

En el primer caso está delimitando que las IPs locales a 192.x.y.z, cualquier IP diferente a eso (que varíe el primer octeto en este caso) indicaría una comunicación fuera de la red local. En el segundo ejemplo las locales son del tipo 211.95.17.x y cualquiera que varíe alguno de los tres primeros octetos definidos ahí serían IPs remotas.

Como se puede comprobar, si la cifra de la máscara de red es 1 en binario (p.e.: 255=11111111) actúa como un pasador, mientras que si la cifra es 0 filtra el valor de la IP y cuyo resultado será 0. Pero no solo puede tomar estos valores absolutos, también puede tomar otros valores como 254, 252, 248, 240, 224, 192, 128… Además, se suelen especificar mediante la forma CIDR (Classes Inter-Domain Routing) haciendo corresponder w.x.y.z/8 a la máscara 255.0.0.0 (Clase A), w.x.y.z/16 para 255.255.0.0 (Clase B), w.x.y.z/24 para 255.255.255.0 (Clase C), w.x.y.z/20 para una máscara 255.255.240.0, etc. Como habrás observado, el número del CIDR indica la cantidad de bits que se cogen para definir la red. Evidentemente, mientras más bits se cojan para la red, menos hosts se pueden tener en esa subred. Con una máscara 255.255.128.0 o /17 se podrían tener 32767 hosts, mientras que para un /30 o 255.255.255.252 solo podría haber 3 hosts. Por ejemplo,  /20 estaría indicando que 20 bits de la máscara estarían orientados a la red, dejando el resto para el host:

Máscara 255.255.240.0 = 11111111.11111111.11110000.00000000 = /20

Te recomendamos nuestro artículo de cómo calcular la máscara de subred.

Broadcast y gateway

Y para calcular la dirección de difusión o broadcast (dirección empleada para difundir paquetes entre las máquinas conectadas a una subred), sustituimos el/los cero/s de la dirección IP de subred por 255. Por ejemplo, si tenemos 192.168.0.0 resultaría 192.168.255.255. El dominio de una broadcast es todo el segmento de subred con dispositivos, hubs y switches que se pueden comunicar sin elementos de seguridad. Esta subred o segmento estará separada, por un router, de la red de mayor tamaño a la que pertenece. Por ejemplo, lo rodeado por la nube anaranjada en la siguiente imagen sería el dominio de broadcast:

La puerta de enlace (gateway) también tiene su dirección IP, que actúa como ruta predeterminada con el exterior. Otra IP importante es la del servidor de nombres o DNS (Domain Name System), ya que servirá para conectar nuestra máquina a dicho servidor y disponer de este servicio.

DNS

DNS

Recordar el número de IP es difícil, por eso se nos ha facilitado la vida con los DNS. Son servidores que contienen las equivalencias entre IPs y nombres de dominio más fácilmente recordables, realizando las traducciones oportunas. Por ejemplo, con el sistema de IPs, deberíamos escribir en el navegador 173.194.64.94 para acceder a la página de Google en español, mientras que con DNS nos da la posibilidad de teclear “google.es”, mucho más sencillo de recordar. Al escribirlo, el servidor DNS buscará la IP correspondiente y nos pondrá en contacto igual que si se hubiese escrito la IP directamente.

Puertos

Me gustaría comentar sobre los puertos (no los confundas con puertos físicos). Al estar conectado a una red, un ordenador pasa a ser un destino más del ciberespacio. Los puertos serán los encargados de dar enganche a las transmisiones. Por seguridad, los que no se utilicen deben estar cerrados para evitar accesos indeseados. Existen puertos desde el 1 hasta el 65535, siendo el grupo desde el 1 al 1024 los estándar, del 1025 al 49151 los registrados y del 49152 al 65535 los dinámicos. Los inferiores a 1024 tienen privilegios, mientras que los superiores a 1024 no cuentan con privilegios.

En la tabla siguiente te presento algunos de los más conocidos en interesantes para los protocolos TCP y UDP, ya que otros protocolos como ICMP no usan número de puerto. Aunque como veremos luego, los servicios se pueden redirigir y cambiar de puerto, por defecto:

puertos populares
Puerto Protocolo Servicio
7 TCP Servicio de banner remoto (echo). Linux lo trae cerrado por defecto, otros como Solaris lo usan.
13 TCP Servicio de información de fecha (daytime).
20 TCP Servicio de transferencias de datos (ftp-data). Es usado por servicios como vsftpd, ProFTPd, etc.
21 TCP Servicio de transferencia de datos (FTP). Usado por los mismos servicios que el anterior.
22 TCP Para SSH, como por ejemplo OpenSSH, Dropbear, etc.
23 TCP Servicio de consola remota (telnet).
25 TCP Protocolo simple de transferencia de correo SMTP. Para Sendmail, Postfix, Exim, qmail,…
42 TCP Servicio del nombre host (nameserver).
53 TCP/UDP Servidor de nombre-dominio (domain). Para BIND, djbdns,…
67 UDP DHCP y su demonio dhcpd. Reservado por ISC (Internet Software Consortium). Algunas distros suelen traer una o varios de estos clientes como dhcpcd, dhclient, y pump.
69 UDP Transferencia de archivos trivial (TFTP).
70 TCP Gopher.
79 TCP Finger.
80 TCP Servicio de publicación de webs (HTTP). Usado por Apache, Roxen, thttpd, etc.
88 TCP Kerberos.
107 TCP Servicio Telnet remoto (RTelnet).
110 TCP Protocolo de correos (POP3 o Post Office Protocolo version 3). Usado por algunos programas de correo como Qpopper, Devecot, etc.
111 TCP/UDP Mapeador de puertos. Llamada de procedimiento remoto para servicios basados en Sun RPC, como NFS, NIS, etc.
113 TCP Protocolo de identificación (auth). Usado por el demonio identd, por ejemplo.
119 TCP Protocolo de transferencia de noticias a través de la red o NNTP (Network News Transfer Protocol).
123 UDP Protocolo de tiempo de red (NTP).
137 TCP Servicio de nombre NetBios (netbios-ns).
138 UDP Servicio de datagramas NetBios (netbios-dgm).
139 TCP Servicio de sesión NetBios (netbios-ssn). Usado por Samba.
143 TCP Protocolo de acceso de mensajes de Internet o IMAP (Internet Mail Access Protocol).
158 TCP Servidor PCMail (pcmail-srv).
161 UDP Servicio de SNMP (Simple Network Management Protocol).
162 UDP Captura SNMP.
177 UDP XDMCP (X Display Manager Control Protocol). Para los gestores XDM, KDM, y GDM de login para las sesiones gráficas.
194 TCP Protocolo IRC (Internet Relay Chat).
213 UDP IPX.
389 TCP Protocolo de acceso al directorio de peso ligero o LDAP (Lightweight Directory Access Protocol). Como OpenLDAP.
443 TCP Servicio de publicación de página web seguro o HTTPS (HyperText Transfer Protocol Secure). Es decir, HTTP sobre cifrado SSL/TLS.
445 TCP Microsoft Directory Services o DS. Usado por Samba.
465 TCP SMTP sobre SSL o URD (URL Rendezvous Directory).
513 TCP Inicio de sesión remoto (login).
514 TCP Servicio de Shell remota (cmd).
514 UDP Syslog.
631 TCP Protocolo de impresión por Internet, usado por CUPS.
993 TCP IMAP sobre SSL.
995 TCP POP-3 sobre SSL.
1433 TCP Microsoft SQL Server.
1433 UDP Microsoft SQL Server.
>5900 TCP Remote Framebuffer o RFB. Usado por programas VNC (Virtual Network Computing) como OpenVNC, TightVNC,…
6000-6007 TCP Para el sistema X-Window.

Otros conceptos de interés

firewall

Para obtener mayor seguridad tenemos el cortafuegos o firewall, que filtra el tráfico entre redes. El cortafuegos determinará si una conexión se debe establecer o no, ya sea para vetar información entrante como para vetar el tráfico hacia el exterior (p.e.: utilizado en empresas para evitar que los empleados accedan a ciertas páginas desde los equipos de la empresa).

Y por último, recuerda el modelo cliente-servidor del que ya hemos hablado en el tema sobre los servidores gráficos. En el caso de una red, un cliente es el programa o máquina que inicia una conexión y el servidor es aquella máquina que se mantiene a la escucha de peticiones y responde a éstas. Por eso, no asocies siempre a los servidores con grandes máquinas remotas y al cliente siempre con un PC o dispositivo, dos PCs iguales pueden hacer de cliente y servidor…

Ahora ya conoces un poco más de cerca lo que son las redes y cómo funcionan. Así que, cuando te enfrentes a una nueva configuración de red, seguro que sabrás qué es cada cosa…

Isaac Romero Torres

Más de una década trabajando en el ámbito de la investigación sobre arquitecturas y microarquitecturas de CPUs, de la electrónica, la lógica digital, de los sistemas operativos Unix (con los que trabajé como asesor para algunas empresas), programación de MCUs, PLCs, hacking, etc.
Los datos de carácter personal que nos facilite mediante este formulario quedarán registrados en un fichero de Miguel Ángel Navas Carrera, con la finalidad de gestionar los comentarios que realizas en este blog. La legitimación se realiza a través del consentimiento del interesado. Si no se acepta no podrás comentar en este blog. Puedes consultar Política de privacidad. Puede ejercitar los derechos de acceso, rectificación, cancelación y oposición en info@profesionalreview.com
Botón volver arriba