Herramientas de usuario

Herramientas del sitio


informatica:certificaciones:lpic:lpic-1:109_networking_fundamentals:109.1_fundamentals_of_internet_protocols

109.1 Fundamentals of internet protocols

Pertenece a Topic 109: Networking Fundamentals

  • Weight: 4
  • Description: Candidates should demonstrate a proper understanding of TCP/IP network fundamentals.
  • Key Knowledge Areas:
    • Demonstrate an understanding of network masks and CIDR notation.
    • Knowledge of the differences between private and public “dotted quad” IP addresses.
    • Knowledge about common TCP and UDP ports and services (20, 21, 22, 23, 25, 53, 80, 110, 123, 139, 143, 161, 162, 389, 443, 465, 514, 636, 993, 995).
    • Knowledge about the differences and major features of UDP, TCP and ICMP.
    • Knowledge of the major differences between IPv4 and IPv6.
    • Knowledge of the basic features of IPv6.
  • The following is a partial list of the used files, terms and utilities:
    • /etc/services
    • IPv4, IPv6
    • Subnetting
    • TCP, UDP, ICMP

La comunicación de datos a través de redes se realiza por medio de protocolos, que son los “lenguajes” en los que habla la red. Cada uno de estos protocolos forman parte del protocolo principal que es el protocolo TCP/IP.

  • TCP (Protocolo de Control de Transmisión)
  • IP (Protocolo de Internet)

El funcionamiento de estos protocolos se realiza a varios niveles, que se pueden explicar en función de dos diferentes modelos: el modelo TCP/IP y el modelo OSI.

Modelo TCP/IP

El modelo TCP/IP consta de cuatro capas (de más alta a más baja):

  • Capa de Aplicación: Incorpora aplicaciones de red estándar (Telnet, SMTP, FTP, etc…). Es el nivel más alto, y en el que el usuario interactúa.
  • Capa de Transporte: Brinda los datos de enrutamiento, junto con los mecanismos que permiten conocer el estado de la transmisión. Se encarga de la calidad del servicio, control de flujo y corrección de errores. Proporciona la comunicación entre un programa de aplicación y otro.
  • Capa de Internet: Es la responsable de proporcionar el paquete de datos (datagrama). Se encarga de dividir los segmentos TCP en paquetes con la información necesaria para que la capa superior sepa hacia dónde tiene que mandarlos y de qué manera.
  • Capa de Acceso a la Red: Especifica la forma en la que los datos deben enrutarse, sea cual sea el tipo de red utilizado. Se dedica a recibir datagramas y transmitirlos al hardware de la red.

El modelo OSI utiliza 7 capas, que se relacionan directamente con las capas del modelo TCP/IP. Subdivide alguna de las capas, pero explica prácticamente lo mismio.

Estos sistemas de capas tratan de explicar el comportamiento de los paquetes y protocolos, y la manera en que se transmite la información.

Cada uno de los protocolos que forman parte del protocolo TCP/IP actúan en los niveles de estos modelos que le corresponden, como se puede ver en el siguiente diagrama:

Encapsulación y demultiplexación

En el transcurso de la comunicación entre capas, se producen dos procesos que afectan a los paquetes:

  • Encapsulación: proceso por el cual que un paquete enviado desde la aplicación, va descendiendo de capa, se le añade una cabecera a los datos hasta llegar a la última.
  • Demultiplexación: Es lo contrario a la encapsulación, cuando un paquete llega a la capa de enlace del equipo receptor, asciende de capa en capa, extrayéndose la cabecera en cada una de ellas, llegando a la última capa solo con datos, es decir, sin cabeceras.

Puertos TCP/IP

Los datos transmitidos utilizando paquetes TCP utilizan la confirmación de entrega, lo que hace que la comunicación sea mas confiable.

Los datos transmitidos mediante paquetes UDP son más rápidos, pero sin tanta confiabilidad, al no disponer de confirmación de entrega.

Existen además otros tipos de protocolos con diferentes funciones.

Protocolo Descripción
TCP Transmission Control Protocol o Protocolo de Controlo de Transmisión. Transmite los datos con la verificación de entrega y realiza la comprobación de errores.
IP Internet Protocol o Protocolo de Internet. Sin conexión, define los datagramas, se establece la dirección IP, ofrece el enrutamiento de los datagramas entre redes.
UDP User Datagram Protocol o Protocolo de Datagramas de Usuario. Los datos se envían sin comprobación de errores, es más rápido, pero propenso a ciertos errores.
ICMP Internet Control Message Protocol o Protocolo de Mensajes de Control de Internet. Notifica errores a los protocolos de capas más cercanas, no los soluciona. El programa ping lo utiliza.
PPP Point to Point Protocol o Protocolo Punto a Punto. Se utiliza para el acceso telefónico de módem a red TCP/IP

Dentro del protocolo TCP/IP además podemos utilizar diferentes servicios que utilizan diferentes protocolos y tipos de datos. Disponemos de 65.536 puertos TCP/IP en el sistema, pero solo algunos están dedicados a servicios específicos.

Estos puertos están definidos en el archivo /etc/services, a modo informativo, no se trata de un fichero de configuración.

Los puertos por debajo de 1024 son privilegiados, solo root tiene acceso a ellos.

Estos servicios utilizan cada uno un puerto específico, que puede transmitir datos vía TCP o UDP.

En la siguiente tabla veremos algunos de los puertos asignados a servicios más comunes:

Puerto Protocolo
20 FTP (datos)
21 FTP (control)
22 SSH
23 Telnet
25 SMTP
53 DNS
80 Web
110 POP3
123 NTP
139 Netbios
143 IMAP
389 LDAP
443 HTTPS
465 SMTPS
514 Syslog
636 LDAPS
993 IMAPS
995 POP3S

Direcciones IP

Una dirección IP es un identificador (una “matrícula” única) que se asigna a cada conexión de red, y no a cada ordenador. Es decir, si un ordenador tiene varias conexiones de red, tiene varias direcciones IP.

Hay dos versiones del protocolo IP:

  • IPv4: Está formada por 4 números entre 0 y 255, separados por puntos (direcciones de 32 bits). Ejemplo: 112.85.69.221
  • IPv6: Está formada por 8 grupos de 4 letras y números hexadecimales, separados por “:” (direcciones de 128 bits). Ejemplo: fec0::a987:211:22ff:fe33:4455

En las direcciones IPv6, dos dos puntos seguidos (::) indican que ese grupo solo contiene ceros.

La versión 4 es la más utilizada en la actualidad, aunque se está implantando cada vez más la versión 6 por el agotamiento de direcciones de la versión 4.

Los ordenadores del mismo segmento de red tienen una parte común en sus direcciones IP.

Una IP está dividida en dos partes:

  • La parte de red que es la parte común a todos los equipos conectados a esa red. (Ejemplo: 192.168.3.1)
  • La parte host que es la propia conexión o dispositivo de red que se conecta. (192.168.3.1)

Las IP se dividen en distintas clases dependiendo del número de hosts que se necesiten para cada red.

En el caso de direcciones de internet se han dividido en las clases primarias A, B y C.

No ocurre lo mismo con la clase D (direcciones multicast), que está formada por direcciones que identifican no a un host, sino a un grupo de ellos.

La clase E son direcciones reservadas.

Direcciones IP: Clase A

La clase A comprende redes desde 1.0.0.0 hasta 127.0.0.0

El número de red está en el primer octeto, con lo que solo hay 127 redes de este tipo, pero cada una tiene 24 bits disponibles para identificar a los nodos.

Cada red puede direccionar hasta 16.777.214 máquinas.

Las direcciones de red de clase A tienen siempre el primer bit a 0. 0 + red(7 bits) + Máquina(24 bits)

Sólo existen 124 direcciones de red de clase A.

Direcciones IP: Clase B

La clase B comprende redes desde 128.0.0.0 hasta 191.255.0.0

El número de red es de 16 bits (los dos primeros octetos)

Cada red puede direccionar hasta 65.534 máquinas.

Las direcciones de red de clase B tienen siempre los dos primeros bit a 10. 10 + red(14 bits) + Máquina(16 bits)

Solo existen 16.382 direcciones de red de clase B

Direcciones IP: Clase C

Las direcciones de clase C van 192.0.0.0 a 223.255.255.255

El número de red es de 24 bits (los tres primeros octetos)

Cada red puede direccionar hasta 254 máquinas.

Las direcciones de red de clase C tienen siempre los tres primeros bit a 110. 110 + red(21 bits) + Máquina(8 bits)

Existen 2.097.152 direcciones de red de clase C.

Direcciones IP: Clase D

Las direcciones de clase D van 224.0.0.0 a 239.255.255.255.

Son direcciones MULTICAST, ya que carecen de host. Se utilizan para dirigirse a grupos de máquinas.

Direcciones IP: Clase E

Las direcciones de clase E van de 240.0.0.0 a 255.255.255.255.

Estas direcciones no se utilizan, ya que están reservadas para un futuro uso.

Direcciones IP: Direcciones reservadas

No todas las direcciones comprendidas entre la 0.0.0.0 y la 223.255.255.255 son válidas para un host. Algunas de ellas tienen significados especiales, por lo que se reservan para otros usos.

Para indicar todos los ordenadores o grupos de ordenadores, es decir, la difusión de un paquete por todos los ordenadores, también llamado BROADCAST, se utiliza la dirección 255.255.255.255 o se cambia el byte de host todos a 1. (255). Por ejemplo:

  • Clase A: 120.255.255.255
  • Clase B: 140.20.255.255
  • Clase C: 192.168.30.255

El 127.0.0.1 es una dirección de LOOPBACK, es decir, una dirección que hace referencia a sí misma. La dirección de loopback es utilizada por servicios del sistema para comunicarse internamente. Cualquier dirección de loopback empieza por 127, pero se suele utilizar la nombrada anteriormente (127.0.0.1)

Direcciones IP: Direcciones privadas

Como las direcciones IP son limitadas, se llegó a un convenio con el que se reservó direcciones para redes privadas (Intranets).

Una dirección IP que pertenezca a una de estas redes se dice que es una dirección IP privada. Son las siguientes:

Clase Rango de direcciones reservadas de redes
A 10.0.0.0
B 172.16.0.0 - 172.31.0.0
C 192.168.0.0 - 192.168.255.0

Direcciones IP: Máscaras de subred

La máscara de subred define el número de máquinas que pertenecen a una red.

Una dirección de red se puede expresar poniendo a 0 la parte de host, mediante el formato MÁSCARA o el formato CIDR.

Formato Máscara

Los bytes de red se cambian a 1 y pasan a ser 255 y los de host a 0.

Ejemplos:

  • Clase A: 110.0.0.0 / 255.0.0.0 (la parte de red es 110)
  • Clase B: 150.23.0.0 / 255.255.0.0 (la parte de red es 150.23)
  • Clase C: 192.168.10.0 / 255.255.255.0 (la parte de red es 192.168.10)

Formato CIDR

CIDR (Classless Inter-Domain Routing o Enrutamiento entre Dominios sin Clases). En este formato se indica el número de bits que forma la parte de red.

Ejemplos:

  • Clase A: 110.0.0.0/8 (bits)
  • Clase B: 150.23.0.0/16 (bits).
  • Clase C: 192.168.10.0/24 (bits).

Subnetting

El Subnetting es la manera de subdividir redes utilizando máscaras de subred para definir los rangos.

Es raro que aparezcan pregutans sobre esto en los exámenes de certificación.

Cada clase de dirección IP tiene un rango determinado de direcciones. Mediante subnetting podemos dividir una red en varias redes que, aunque estén en el mismo tramo físico, no se vean entre sí. Para ello debemos definir segmentos dentro de la clase. Esto se hace con el subnetting.

00000000.00000000.00000000.00000000
   |        |         |       |
  255       255      255     255

La dirección IP (IPv4) esta formada por 4 octetos de 8 bits. El último octeto es el que define los hosts disponibles. Si le “robamos” bits a ese último octeto, podemos definir las diferentes subredes

Podemos definir el octeto en función de su valor:

Valor decimal: 128 64 32 16 8 4 2 1
Bits:            0  0  0  0 0 0 0 0
  • 00000000: 0
  • 00000001: 1
  • 00000010: 2
  • 00000100: 4

Usando la regla 2n = nº subredes, podemos calcular los bits necesarios. Por ejemplo, si queremos 4 subredes:

22 = 4 subredes

Esto quiere decir que para hacer 4 subdivisiones en una red de clase C, utilizaremos 2 bits.

Sumamos el valor de dichos bits (empezando por la izquierda) y obtenemos el valor de la máscara: 128+64 = 192

El valor del último bit empleado (64) me define el número de máquinas posibles por subred. A eso le tengo que restar la primera y la última IP del rango, que serán mis direcciones de network y broadcast, así que n-2 = 62 hosts posibles.

En resumen, las 4 subredes que hemos definido usarán la máscara 255.255.255.192 (en notación CIDR sería 192.168.1.0/26):

  • 192.168.1.0/255.255.255.192: desde la .1 hasta la .62 (la .0 es la de red y la .63 es la de broadcast)
  • 192.168.1.65/255.255.255.192: desde la .65 hasta la .126 (la .64 es la de red y la .127 es la de broadcast)
  • 192.168.1.128/255.255.255.192: desde la .129 hasta la .190 (la .128 es la de red y la .191 es la de broadcast)
  • 192.168.1.192/255.255.255.192: desde la .193 hasta la .254 (la .192 es la de red y la .255 es la de broadcast)

Como vemos, cuando nosotros subdividimos, lo que hacemos es coger el rango que va desde 192.168.1.0 a 192.168.1.255 y subdividirlo en 4 partes.

informatica/certificaciones/lpic/lpic-1/109_networking_fundamentals/109.1_fundamentals_of_internet_protocols.txt · Última modificación: por tempwin