Skip to content

Conceptos generales

Introducción básica

Repaso de conceptos de redes

  • Modelo OSI y TCP/IP
  • Direcciones y puertos
  • DNS
  • Los servidores web y el protocolo HTTP.
  • URI
  • HTTPS (HTTP sobre TLS) - ver como último punto

URI

Question

Poner en común varias URI. Han de tener un ejemplo de todas las partes

Aplicaciones web vs. aplicaciones de escritorio nativas.

Rellena la siguiente tabla, primero con una tormenta de ideas, luego buscando en Internet.

Tipo de aplicación Ventajas Inconvenientes
Nativa ... ...
Web ... ...

Aplicaciones web híbridas

Busca en Internet y responde a: ¿Qué son las aplicaciones web híbridas?

Arquitectura de tres niveles.

Arquitectura de tres nivéles

Tier vs. layer

In discussions of three-tier architecture, layer is often used interchangeably – and mistakenly – for tier, as in 'presentation layer' or 'business logic layer.'

They aren't the same. A 'layer' refers to a functional division of the software, but a 'tier' refers to a functional division of the software that runs on infrastructure separate from the other divisions. The Contacts app on your phone, for example, is a three-layer application, but a single-tier application, because all three layers run on your phone.

The difference is important, because layers can't offer the same benefits as tiers.

Arquitectura y protocolos

Protocolo sin estado

HTTP no tiene forma de guardar el estado entre peticiones, por eso usamos las Cookies de sesión.

Cookies

Además de estos comandos:

  • Crea un nuevo perfil en tu navegador
    • NOTA: Las extensiones pueden modificar y acceder a mucha información
  • Instala alguna herramienta para editar Cookies.
  • Analiza qué pasa si restauras la Cookie en otro navegador.

Comandos y herramientas

Utiliza los siguientes comandos:

  • nslookup - Resolver DNS
  • nc - Trabajar con sockets y analizar protocolos
  • Para peticiones HTTPS
    • printf - Imprimir información con formato, útil para generar peticiones HTTP
    • ncat --ssl - Útil para realizar la negociación HTTPS
    • printf 'GET / HTTP/1.1\r\nHost: github.com\r\n\r\n' | ncat --ssl github.com 443

Prácticas

  • Utiliza nslookup para buscar la ip de las siguientes url:
    • educa.madrid.org
    • xataka.com
    • www.google.es
  • Utiliza la página https://whatismyipaddress.com/ip/127.0.0.1
  • Utiliza nc como servidor y haz una petición desde el navegador, luego haz las tareas de tu servidor web y escribe una página sencilla.
  • Utiliza nc como cliente y haz una petición HTTP a un servidor externo. Debes ver el HTML
  • Utiliza los comandos printf y ncat para hacer una petición a un sitio HTTPS
  • Utiliza el navegador con el plugin de editar Cookies, crea una cookie para el dominio 127.0.0.1 o localhost, realiza una petición a tu servidor nc y encuentra la cabecera donde se establece la Cookie