Point-to-Point Protocol

De Departamento de Informatica
Saltar a: navegación, buscar

Contenido

Resumen

PPP es la sigla que significa Point-to-point Protocol y es el protocolo diseñado para conectar dos nodos, estando cada uno al final de un enlace, usando el puerto 53 de manera bidireccional. Funciona a nivel de la capa de enlace, pudiendo usar TCP/IP o IPX como protocolo de red. Nace a finales de la década de los 80 para reemplazar y cubrir las fallas del protocolo SLIP y esta reglamentado principalmente por la RFC 1661 y la RFC 2153. , que presentaba como principales deficiencias:

  • no soportaba el protocolo IP
  • no permitía la asignación dinámicas de IP
  • No tenia una mecanismo de autenticación.

PPP corrige lo anterior además de tener por si mismo:

  • Control de la configuración del enlace de datos
  • Multiplexión de protocolo de red
  • Configuración de enlace y verificación de la calidad del enlace
  • Detección de errores
  • Compresión y cifrado de datos

El protocolo PPP es el más usado para conectar una conexión a internet domestica con un ISP a través de un módem telefónico a través de PPPoE como para conexiones VPN usando PPTP. o L2TP

Descripción

PPP busca resolver los problemas de conectividad de Internet mediante tres componentes básicos:

  • Un método para encapsular datagramas (la información) a través de enlaces seriales. PPP utiliza el Control de enlace de datos de alto nivel (HDLC) como base para encapsular datagramas a través de enlaces punto a punto.
  • Un Protocolo de control de enlace (LCP) para establecer, configurar y probar la conexión de enlace de datos.
  • Una familia de Protocolos de control de red (NCP) para establecer y configurar distintos protocolos de capa de red. PPP está diseñado para permitir el uso simultáneo de múltiples protocolos de capa de red, además de IP, incluyendo Intercambio de paquetes de internetworking (IPX) y Appletalk. PPP utiliza su componente de NCP para encapsular múltiples protocolos.

Cabe destacar que PPP a pesar de tener de detección de errores, no ofrece corrección o retransmisión de estos.

Funcionamiento

Proceso de conexión PPP : Se llevan a cabo las siguientes negociaciones para establecer una conexión PPP:

Negociación del uso del vínculo

PPP utiliza el Protocolo de control de vínculos (LCP) para negociar parámetros del vínculo como el tamaño máximo de la trama PPP, el uso de Multivínculo y el uso de un protocolo de autenticación de PPP específico.

Autenticación

Los 2 involucrados en la conexión intercambian mensajes de acuerdo con el protocolo de autenticación negociado, que pueden ser, por ejemplo, PAP o CHAP. Este punto es opcional, ya que se puede establecer una conexión sin autenticación.

Configuración de parámetros de nivel de red

En esta fase se negocian parámetros dependientes del protocolo de red que se esté usando. PPP puede llevar muchos protocolos de red al mismo tiempo y es necesario configurar individualmente cada uno de estos protocolos. Para configurar un protocolo de red se usa el protocolo NCP correspondiente. Por ejemplo, si la red es IP, se usa el protocolo IPCP para asignar la dirección IP del cliente y sus servidores DNS.

Intercambio de Datagramas

Este es el punto en el que se intercambia la información, destacandose que PPP no provee una encriptación de datos. El protocolo LCP se encarga de ver si la linea esta o no activa.

Cierre de Conexiones

La conexión resultante permanece activa hasta que la línea se desconecte por cualquiera de los motivos siguientes:

  • Uno de los 2 involucrados termina explícitamente la conexión.
  • La línea se interrumpe debido al tiempo sin actividad.
  • Se produce un error irrecuperable en el vínculo.

Trama PPP

Se basan en HDLC tienen como mínimo un número de 6 bytes y un máximo indeterminado.

TramaPPTP.png

Etiqueta Dirección Control Protocolo Datos FCS Etiqueta 0x7e 0xFF 0x03 1 o 2 bytes Longitud variable, puede llevar relleno 2 o 4 bytes 0x7e Nota: 0x7e son 8 bits en notación hexadecimal, ver Hexadecimal para más información.

La dirección siempre es 0xFF, ya que es la dirección de difusión estándar de todos los destinos. En PPTP No existen las direcciones individuales de cada estación ya que sólo hay dos. El campo control vale 0X03 , que corresponde con tramas de usuario no numeradas en HDLC. Estos dos campos se pueden eliminar si se negocia en LCP "Address-and-Control-Field-Compression" (ACFC, compresión de los campos de dirección y control).

Los identificadores de protocolo se encuentran especificados en RFC 1661. Los más relevantes son:

• 0x0021 para IP.

• 0xc021 para LCP.

• 0xc023 para PAP.

• 0xc223 para CHAP.

El penúltimo campo, el FCS (Frame Chech Sequence) es una secuencia de comprobación de trama, ésta detecta los posibles errores en la transmición de la trama. El transmisor calcula el CRC del contenido de la trama y lo inserta en el campo FCS. El receptor calcula el CRC de la trama que recibe y lo compara con el valor del FSC. Si los valores son distintos, quiere decir que contiene bits corruptos en la trama, por lo que se descarta. Sí el campo FCS es de 2 bytes se usa un CRC de 16 bits. Sí el campo FCS es de 4 bytes, se usa un CRC de 32 bits.

PPP y Protocolos Relacionados

PPTP

PPTP (protocol point-to-point). Es un protocolo de red de nivel de enlace estandarizado en el documento RFC 1661, es decir es un protocolo asociado a la pila TCP/IP de internet. Fue creado por Microsoft para soluciones de redes privadas virtuales (VPN) que permite la realizar transferencias seguras desde clientes remotos a servidores pertenecientes a VPN, basado en una red de trabajo vía TCP/IP. Para realizar esto utiliza tanto redes telefónicas conmutadas como también internet. Generalmente, se utiliza para establecer la conexión a Internet de un particular con su proveedor de acceso a través de un módem telefónico. Ocasionalmente también es utilizado sobre conexiones de banda ancha (como PPPoE o PPPoA).

PPTP.jpg

Además del mero transporte de datos, PPTP facilita dos funciones importantes: *Autenticación. La autenticación PPTP se basa en el sistema de acceso Windows NT, como se dijo anteriormente, en el cual los diversos clientes deben proporcionar un par de login. La autenticación remota se realiza de igual manera de como se realizaría en cualquier otro servidor de acceso remoto (RAS). En el caso de Microsoft la autentificación utilizada para el acceso a los RAS soporta los protocolos CHAP, MS-CHAP y PAP. Para acceder a los recursos NTFS o de otro tipo son necesarios los recursos adecuados, por ello es recomendable hacer uso de ficheros NTFS para los ficheros a que acceden los clientes PPTP. *Asignación dinámica de IP. Los proveedores de servicio cuentan con un limitado número de direcciones IP y cuentan con más clientes que direcciones. Pero obviamente no todos los clientes se conectan a la red al mismo tiempo, por ello es posible asignarle una dirección IP a cada cliente en el momento que se conecta al proveedor. La dirección se utiliza hasta que termina la conexión, momento en el que queda ésta libre para posteriormente poder ser usada por otros clientes.

¿Como funciona? (vista global): Para la utilización de PPTP el cliente entabla una conexión dial-up con el servidor de acceso de red (NAS) de su proveedor de servicio, usando el protocolo PPP. Cuando ya está el cliente conectado, deberá establecer una segunda conexión con el servidor PPTP, el cual necesariamente debe ser Windows NT Server 4.0, que está localizado en la red privada. Éste servidor será el intermediario de la conexión, recibiendo los datos provenientes de los clientes externos y transmitiéndolos a los correspondientes destinos dentro de la ley privada. Éste protocolo encapsula los paquetes PPP en datagramas IP. Cuando los datagramas llegan al servidor PPTP, éstos son desensamblados para poder obtener el paquete PPP y desencriptados de acuerdo al protocolo de red transmitido. Además puede especificar una serie de mensajes de control para así poder crear, mantener y destruir el túnel PPTP. Esto mensajes se transmiten en paquetes de control dentro de segmento TCP. Así los paquetes almacenan la cabecera IP, la cabecera TCP, el mensaje de control PPTP y los debidos trailers.

Vulnerabilidad: La utilidad ASLEAP puede obtener claves de sesiones PPTP y descifrar el tráfico de la red VPN. Los ataques a PPTP no pueden ser detectados por el cliente o el servidor porque el exploid es pasivo.

Encriptación: Para encriptar, PPTP utiliza el proceso de secreto compartido, en donde sólo los extremos de la conexión saben la clave, la cual se genera mediante el estándar RSA RC-4 a partir del password del usuario, en donde la longitud de dicha clave puede ser de 128 bits para la clientes de Estados Unidos o Canadá o de 40 bits para el resto de clientes.


¿Cómo funciona? (vista específica): PPTP funciona a través de 5 fases fundamentales:

1)Establecer conexión. Dos ordenadores se contactan y negocian los parámetros correspondientes al enlace con el protocolo LPC. Este protocolo es muy importante para PPTP, por o que está definido en el mismo RFC. Usando el protocolo LCP se negocian varios aspectos como, el método de autenticación a utilizar, el tamaño de los datagramas, números mágicos para usar durante la autenticación, etc…

2)Autenticación. Ésta fase no es obligatoria y en la cual se pueden utilizar dos protocolos de autenticación. PAP es el mas básico e inseguro, además no se recomienda pues manda el nombre de usuario y contraseña en claro, es decir sin cifrar, lo cual resulta muy peligroso. El segundo método, el cual es más avanzado, seguro y por lo mismo preferido por a mayoría de los ISP (Internet Services Provider) es CHAP, el cual envía la contraseña de forma cifrada.

3)Comunicación de red. En ésta fase es cuando se determinan los parámetros dependientes del protocolo de red que se utilizando. Una característica de PPTP es que tiene la capacidad de utilizar uchos protocolos de red al mismo tiempo , por lo que es necesario configurar cada uno de éstos protocolos individualmente, para lo cual se utiliza el protocolo NCP correspondiente. Como ejemplo se plantea que sí fuese IP, se debe usar el protocolo IPCP para asignar así la dirección IP del cliente y sus servidores DNS.

4)Transmisión. Aquí se manda y se recibe la información de red. LCP comprueba que la línea esté activa durante periodos de inactividad. Obsérvese que PPTP no proporciona cifrado de datos.

5)Terminación. La conexión puede ser finalizada en cualquier momento y por cualquier motivo.

DiagramadefasePPTP.png

Además tiene todas las propiedades de un protocolo de nivel de enlace:

  • Garantía de recepción.
  • Recepción ordenada.
  • Uso del puerto 53 para la conexión bidireccional del sockets.
  • Usado en los balanceadores de carga (Load Balancer LB) como protocolo de distribución.


PPPoE

Del acrónimo en inglés Protocol Point-to-Point over Ethernet o Protocol Punto a Punto sobre Ethernet, es un protocolo de red para la encapsulación PPP sobre una capa de ethernet. Es comúnmente utilizada para proveer conexión de banda ancha mediante servicios de cablemondem y xDLS. Este también ofrece las ventajas del protocolo PPP como la autenticación, cifrado, mantención y comprensión.

En esencia, es un protocolo túnel, que permite implementar una capa IP sobre una conexión entre dos puertos Ethernet, pero con las características de software del protocolo PPP, por lo que es utilizado para virtualmente "marcar" a otra máquina dentro de la red Ethernet, logrando una conexión "serial" con ella, con la que se pueden transferir paquetes IP, basado en las características del protocolo PPP.

Esto permite utilizar software tradicional basado en PPP para manejar una conexión que no puede usarse en líneas seriales pero con paquetes orientados a redes locales como Ethernet para proveer una conexión clásica con autenticación para cuentas de acceso a Internet. Además, las direcciones IP en el otro lado de la conexión sólo se asignan cuando la conexión PPPoE es abierta, por lo que admite la reutilización de direcciones IP (direccionamiento dinámico).

El objetivo y funcionamiento de PPPoE es análogo al protocolo PPP sobre RTC con el que a finales de los 90 y bajo un stack tcp, se establecía un enlace ip punto a punto a través de la red telefonica conmutada (RTC), permitiendo utilizar por encima una serie de protocolos de nivel de aplicación tipo http, ftp, telnet, etc. PPPoE fue desarrollado por UUNET, Redback y RouterWare. El protocolo está publicado en la RFC 2516.

PPPOE.png

PPPoA

Del acrónimo en ingles Protocol Point-to-Point over ATM o Protocolo Punto a Punto sobre ATM, es un protocolo de red para la encapsulación PPP en capas ATM AAL5.

El protocolo PPPoA se utiliza principalmente en conexiones de banda ancha, como cable y DSL. Este ofrece las principales funciones PPP como autenticación, cifrado y compresión de datos. Actualmente tiene alguna ventaja sobre PPPoE debido a que reduce la pérdida de calidad en las transmisiones. Al igual que PPPoE, PPPoA puede usarse en los modos VC-MUX y LLC.

Este protocolo se define en la RFC 2364.

PPPOA.png

PPP versus SLIP:

El protocolo SLIP es un protocolo mas antiguo que PPTP que cumple con la misma función, pero las ventajas que posée éste último sobre SLIP son:

SLIPvsPPP.png Comandos configuración PPP:

El protocolo PP se configura con los siguientes comandos en CISCO:

  • router(config-if)#encapptulation pap
  • router(config-if)#PPP authentication pap
  • router(config-if)#ppp authentication chap

Comandos de veriificación:

  • router#show interface
  • router#debug ppp authentication
  • router#undebug pp authentication (eliminar depuracion de ppp)

Enlaces externos

[1] http://technet.microsoft.com/es-es/library/cc738840(v=ws.10).aspx
[2] https://share.zoho.com/contentfullview.do?url=ctsu80dNt03ckjVq0P9WnY0Rx0801nc6m96cdKSs6hdKe97lgADQ9N6s065Fe7789Nc9781Qe8eM34fKSj8Pe6FN1r6&service=writer&type=docview
[3] http://technet.microsoft.com/en-us/library/cc768082
Herramientas personales
Espacios de nombres
Variantes
Acciones
Navegación
Herramientas