1. Índice
Protocolos de red..................................................................................................................................3
Que es Protocolo..............................................................................................................................3
Propiedades típicas..........................................................................................................................3
Cómo funcionan los protocolos.......................................................................................................3
El equipo origen..........................................................................................................................3
El equipo de destino....................................................................................................................4
Protocolos encaminables..................................................................................................................4
Jerarquías de protocolos...................................................................................................................4
Jerarquías estándar...........................................................................................................................5
Tipos de Protocolos..............................................................................................................................6
TPC/IP.............................................................................................................................................6
Protocolos a Nivel de Red...........................................................................................................6
TCP:........................................................................................................................................6
IP:...........................................................................................................................................6
Protocolos a Nivel de Aplicación................................................................................................7
Breve Historia del Protocolo TCP/IP..........................................................................................7
Cómo Trabaja TCP/IP......................................................................................................................8
HTTP (Hypertext Transfer Protocol)...............................................................................................9
Transacciones HTTP...................................................................................................................9
Solicitud HTTP.....................................................................................................................10
Comandos........................................................................................................................10
Encabezados....................................................................................................................10
Respuesta HTTP...................................................................................................................11
Encabezados de respuesta................................................................................................12
Los códigos de respuesta.................................................................................................12
Telnet (TELecommunication NETwork) ......................................................................................14
Funcionamiento.........................................................................................................................14
Problemas de seguridad............................................................................................................14
Manejo básico de telnet.............................................................................................................14
File Transfer Protocol....................................................................................................................15
Servidor FTP.............................................................................................................................15
Cliente FTP...............................................................................................................................16
Acceso anónimo...................................................................................................................16
Cliente FTP basado en Web..................................................................................................17
Modos de conexión del cliente FTP..........................................................................................17
Modo activo..........................................................................................................................17
Modo pasivo.........................................................................................................................18
Guía de comandos FTP.............................................................................................................19
POP3, Protocolo de la oficina de correo........................................................................................19
Características...........................................................................................................................19
Órdenes.....................................................................................................................................20
Ventajas.....................................................................................................................................21
Simple Mail Transfer Protocol (SMTP).........................................................................................22
Funcionamiento.........................................................................................................................22
Ordenes básicas de SMTP:.......................................................................................................23
Pag. 1
2. Ejemplo de una comunicación SMTP.......................................................................................23
Seguridad y spam......................................................................................................................24
Domain Name System o DNS(sistema de nombres de dominio) .................................................24
NIC (Network Information Center)..........................................................................................25
Componentes de DNS...............................................................................................................25
Clientes DNS........................................................................................................................25
Servidores DNS....................................................................................................................25
Tipos de consultas............................................................................................................26
Consultas Iterativas (no recursivas)............................................................................26
Consultas Recursivas..................................................................................................26
Zonas de Autoridad..............................................................................................................26
Referencias.........................................................................................................................................27
Pag. 2
3. Protocolos de red
Que es Protocolo
En informática, un protocolo es un conjunto de reglas usadas por computadoras para comunicarse
unas con otras a través de una red por medio de intercambio de mensajes. Son reglas de
comunicación que permiten el flujo de información entre equipos que manejan lenguajes distintos,
por ejemplo, dos computadores conectados en la misma red pero con protocolos diferentes no
podrían comunicarse jamás, para ello, es necesario que ambas "hablen" el mismo idioma.
Propiedades típicas
Si bien los protocolos pueden variar mucho en propósito y sofisticación, la mayoría especifica una o
más de las siguientes propiedades:
• Detección de la conexión física subyacente (con cable o inalámbrica), o la existencia de otro
punto final o nodo.
• Negociación de varias características de la conexión.
• Cómo iniciar y finalizar un mensaje.
• Procedimientos en el formateo de un mensaje.
• Qué hacer con mensajes corruptos o formateados incorrectamente (corrección de errores).
• Cómo detectar una pérdida inesperada de la conexión, y qué hacer entonces.
• Terminación de la sesión y/o conexión.
Cómo funcionan los protocolos
La operación técnica en la que los datos son transmitidos a través de la red se puede dividir en dos
pasos discretos, sistemáticos. A cada paso se realizan ciertas acciones que no se pueden realizar en
otro paso. Cada paso incluye sus propias reglas y procedimientos, o protocolo.
Los pasos del protocolo se tienen que llevar a cabo en un orden apropiado y que sea el mismo en
cada uno de los equipos de la red. En el equipo origen, estos pasos se tienen que llevar a cabo de
arriba hacia abajo. En el equipo de destino, estos pasos se tienen que llevar a cabo de abajo hacia
arriba.
El equipo origen
Los protocolos en el equipo origen:
1. Se dividen en secciones más pequeñas, denominadas paquetes.
2. Se añade a los paquetes información sobre la dirección, de forma que el equipo de destino
pueda determinar si los datos le pertenecen.
3. Prepara los datos para transmitirlos a través de la NIC (network interface card) y enviarlos a
través del cable de la red.
Pag. 3
4. El equipo de destino
Los protocolos en el equipo de destino constan de la misma serie de pasos, pero en sentido inverso.
1. Toma los paquetes de datos del cable y los introduce en el equipo a través de la NIC.
2. Extrae de los paquetes de datos toda la información transmitida eliminando la información
añadida por el equipo origen.
3. Copia los datos de los paquetes en un búfer para reorganizarlos enviarlos a la aplicación.
Los equipos origen y destino necesitan realizar cada paso de la misma forma para que los datos
tengan la misma estructura al recibirse que cuando se enviaron.
Protocolos encaminables
Hasta mediados de los ochenta, la mayoría de las redes de área local (LAN) estaban aisladas. Una
LAN servía a un departamento o a una compañía y rara vez se conectaba a entornos más grandes.
Sin embargo, a medida que maduraba la tecnología LAN, y la comunicación de los datos necesitaba
la expansión de los negocios, las LAN evolucionaron, haciéndose componentes de redes de
comunicaciones más grandes en las que las LAN podían hablar entre sí.
Los datos se envían de una LAN a otra a lo largo de varios caminos disponibles, es decir, se
encaminan. A los protocolos que permiten la comunicación LAN a LAN se les conoce como
protocolos encaminables. Debido a que los protocolos encaminables se pueden utilizar para unir
varias LAN y crear entornos de red de área extensa, han tomado gran importancia.
Jerarquías de protocolos
Una jerarquía de protocolos es una combinación de protocolos. Cada nivel de la jerarquía especifica
un protocolo diferente para la gestión de una función o de un subsistema del proceso de
comunicación. Cada nivel tiene su propio conjunto de reglas. Los protocolos definen las reglas para
cada nivel en el modelo OSI:
Nivel de Inicia o acepta una petición
aplicación
Nivel de Añade información de formato, presentación y cifrado
presentación al paquete de datos
Nivel de sesión Añade información del flujo de tráfico para determinar
cuándo se envía el paquete
Nivel de Añade información para el control de errores
transporte
Nivel de red Se añade información de dirección y secuencia al
paquete
Nivel de enlace Añade información de comprobación de envío y
de datos prepara los datos para que vayan a la conexión física
Nivel físico El paquete se envía como una secuencia de bits
Pag. 4
5. Los niveles inferiores en el modelo OSI especifican cómo pueden conectar los fabricantes sus
productos a los productos de otros fabricantes, por ejemplo, utilizando NIC de varios fabricantes en
la misma LAN. Cuando utilicen los mismos protocolos, pueden enviar y recibir datos entre sí. Los
niveles superiores especifican las reglas para dirigir las sesiones de comunicación (el tiempo en el
que dos equipos mantienen una conexión) y la interpretación de aplicaciones. A medida que
aumenta el nivel de la jerarquía, aumenta la sofisticación de las tareas asociadas a los protocolos.
Jerarquías estándar
La industria informática ha diseñado varios tipos de protocolos como modelos estándar de
protocolo. Los fabricantes de hardware y software pueden desarrollar sus productos para ajustarse a
cada una de las combinaciones de estos protocolos. Los modelos más importantes incluyen:
• La familia de protocolos ISO/OSI.
• La arquitectura de sistemas en red de IBM (SNA).
• Digital DECnet.
• Novell NetWare.
• Apple Talk de Apple.
• El conjunto de protocolos de Internet, TCP/IP.
Los protocolos existen en cada nivel de estas jerarquías, realizando las tareas especificadas por el
nivel. Sin embargo, las tareas de comunicación que tienen que realizar las redes se agrupan en un
tipo de protocolo entre tres. Cada tipo está compuesto por uno o más niveles del modelo OSI.
Pag. 5
6. Tipos de Protocolos
existen numerosos tipos de protocolos, entre ellos:
TPC/IP
Las siglas TCP/IP se refieren a dos protocolos de red, que son Transmission Control Protocol
(Protocolo de Control de Transmisión) e Internet Protocol (Protocolo de Internet) respectivamente.
Estos protocolos pertenecen a un conjunto mayor de protocolos. Dicho conjunto se denomina suite
TCP/IP.
Los diferentes protocolos de la suite TCP/IP trabajan conjuntamente para proporcionar el transporte
de datos dentro de Internet (o Intranet). En otras palabras, hacen posible que accedamos a los
distintos servicios de la Red. Estos servicios incluyen, transmisión de correo electrónico,
transferencia de ficheros, grupos de noticias, acceso a la World Wide Web, etc.
Hay dos clases de protocolos dentro de la suite TCP/IP que son: protocolos a nivel de red y
protocolos a nivel de aplicación.
Protocolos a Nivel de Red
Estos protocolos se encargan de controlar los mecanismos de transferencia de datos. Normalmente
son invisibles para el usuario y operan por debajo de la superficie del sistema. Dentro de estos
protocolos tenemos:
TCP:
Controla la división de la información en unidades individuales de datos (llamadas paquetes) para
que estos paquetes sean encaminados de la forma más eficiente hacia su punto de destino. En dicho
punto, TCP se encargará de reensamblar dichos paquetes para reconstruir el fichero o mensaje que
se envió. Por ejemplo, cuando se nos envía un fichero HTML desde un servidor Web, el protocolo
de control de transmisión en ese servidor divide el fichero en uno o más paquetes, numera dichos
paquetes y se los pasa al protocolo IP. Aunque cada paquete tenga la misma dirección IP de destino,
puede seguir una ruta diferente a través de la red. Del otro lado (el programa cliente en nuestro
ordenador), TCP reconstruye los paquetes individuales y espera hasta que hayan llegado todos para
presentárnoslos como un solo fichero.
IP:
Se encarga de repartir los paquetes de información enviados entre el ordenador local y los
ordenadores remotos. Esto lo hace etiquetando los paquetes con una serie de información, entre la
que cabe destacar las direcciones IP de los dos ordenadores. Basándose en esta información, IP
garantiza que los datos se encaminarán al destino correcto. Los paquetes recorrerán la red hasta su
destino (que puede estar en el otro extremo del planeta) por el camino más corto posible gracias a
unos dispositivos denominados encaminadores o routers.
Pag. 6
7. Protocolos a Nivel de Aplicación
Aquí tenemos los protocolos asociados a los distintos servicios de Internet, como FTP, Telnet,
Gopher, HTTP, etc. Estos protocolos son visibles para el usuario en alguna medida. Por ejemplo, el
protocolo FTP (File Transfer Protocol) es visible para el usuario. El usuario solicita una conexión a
otro ordenador para transferir un fichero, la conexión se establece, y comienza la transferencia.
Durante dicha transferencia, es visible parte del intercambio entre la máquina del usuario y la
máquina remota (mensajes de error y de estado de la transferencia, como por ejemplo cuantos bytes
del fichero se han transferido en un momento dado).
Breve Historia del Protocolo TCP/IP
A principios de los años 60, varios investigadores intentaban encontrar una forma de compartir
recursos informáticos de una forma más eficiente. En 1961, Leonard Klienrock introduce el
concepto de Conmutación de Paquetes (Packet Switching, en inglés). La idea era que la
comunicación entre ordenadores fuese dividida en paquetes. Cada paquete debería contener la
dirección de destino y podría encontrar su propio camino a través de la red.
En 1969 la Agencia de Proyectos de Investigación Avanzada (Defense Advanced Research Projects
Agency o DARPA) del Ejército de los EEUU desarrolla la ARPAnet. La finalidad principal de esta
red era la capacidad de resistir un ataque nuclear de la URSS para lo que se pensó en una
administración descentralizada. De este modo, si algunos ordenadores eran destruidos, la red
seguiría funcionando. Aunque dicha red funcionaba bien, estaba sujeta a algunas caídas periódicas
del sistema. De este modo, la expansión a largo plazo de esta red podría resultar difícil y costosa. Se
inició entonces una búsqueda de un conjunto de protocolos más fiables para la misma. Dicha
búsqueda finalizó, a mediados de los 70, con el desarrollo de TCP/IP.
TCP/IP tenia (y tiene) ventajas significativas respecto a otros protocolos. Por ejemplo, consume
pocos recursos de red. Además, podía ser implementado a un coste mucho menor que otras
opciones disponibles entonces. Gracias a estos aspectos, TCP/IP comenzó a hacerse popular. En
1983, TCP/IP se integró en la versión 4.2 del sistema operativo UNIX de Berkeley y la integración
en versiones comerciales de UNIX vino pronto. Así es como TCP/IP se convirtió en el estándar de
Internet.
En la actualidad, TCP/IP se usa para muchos propósitos, no solo en Internet. Por ejemplo, a menudo
se diseñan intranets usando TCP/IP. En tales entornos, TCP/IP ofrece ventajas significativas sobre
otros protocolos de red. Una de tales ventajas es que trabaja sobre una gran variedad de hardware y
sistemas operativos. De este modo puede crearse fácilmente una red heterogénea usando este
protocolo. Dicha red puede contener estaciones Mac, PC compatibles, estaciones Sun, servidores
Novell, etc. Todos estos elementos pueden comunicarse usando la misma suite de protocolos
TCP/IP. La siguiente tabla muestra una lista de plataformas que soportan TCP/IP:
Plataforma Soporte de TCP/IP
UNIX Nativo
Windows 7 Nativo
Windows NT Nativo
Macintosh MacTCP u OpenTransport (Sys 7.5+)
LINUX Nativo
Pag. 7
8. Cómo Trabaja TCP/IP
TCP/IP opera a través del uso de una pila. Dicha pila es la suma total de todos los protocolos
necesarios para completar una transferencia de datos entre dos máquinas (así como el camino que
siguen los datos para dejar una máquina o entrar en la otra). La pila está dividida en capas, como se
ilustra en la figura siguiente:
EQUIPO SERVIDOR O CLIENTE
|
Capa de Cuando un usuario inicia una transferencia de datos,
Aplicaciones esta capa pasa la solicitud a la Capa de Transporte.
|
Capa de La Capa de Transporte añade una cabecera y pasa
Transporte los datos a la Capa de Red.
|
Capa de En la Capa de Red, se añaden las direcciones IP de
Red origen y destino para el enrrutamiento de datos.
|
Capa de
Ejecuta un control de errores sobre el flujo de datos
Enlace de
entre los protocolos anteriores y la Capa Física.
Datos
|
Ingresa o egresa los datos a través del medio físico,
Capa
que puede ser Ethernet vía coaxial, PPP vía módem,
Física
etc.
Después de que los datos han pasado a través del proceso ilustrado en la figura anterior, viajan a su
destino en otra máquina de la red. Allí, el proceso se ejecuta al revés (los datos entran por la capa
física y recorren la pila hacia arriba). Cada capa de la pila puede enviar y recibir datos desde la capa
adyacente. Cada capa está también asociada con múltiples protocolos que trabajan sobre los datos.
Pag. 8
9. HTTP (Hypertext Transfer Protocol)
Es el protocolo usado en cada transacción de la World Wide Web. HTTP fue desarrollado por el
World Wide Web Consortium y la Internet Engineering Task Force, colaboración que culminó en
1999. HTTP define la sintaxis y la semántica que utilizan los elementos de software de la
arquitectura web (clientes, servidores) para comunicarse. Es un protocolo orientado a transacciones
y sigue el esquema petición-respuesta entre un cliente y un servidor. Al cliente que efectúa la
petición (un navegador web) se lo conoce como "user agent" (agente del usuario). A la información
transmitida se la llama recurso y se la identifica mediante un localizador uniforme de recursos
(URL). Los recursos pueden ser archivos, el resultado de la ejecución de un programa, una consulta
a una base de datos, la traducción automática de un documento, etc.
HTTP es un protocolo sin estado, es decir, que no guarda ninguna información sobre conexiones
anteriores. El desarrollo de aplicaciones web necesita frecuentemente mantener estado. Para esto se
usan las cookies, que es información que un servidor puede almacenar en el sistema cliente. Esto le
permite a las aplicaciones web instituir la noción de "sesión", y también permite rastrear usuarios ya
que las cookies pueden guardarse en el cliente por tiempo indeterminado.
Transacciones HTTP
El propósito del protocolo HTTP es permitir la transferencia de archivos (principalmente, en
formato HTML). entre un navegador (el cliente) y un servidor web (denominado, entre otros, httpd
en equipos UNIX) localizado mediante una cadena de caracteres denominada dirección URL.
La comunicación entre el navegador y el servidor se lleva a cabo en dos etapas:
• El navegador realiza una Solicitud HTTP
• El servidor procesa la solicitud y después envía una Respuesta HTTP
En realidad, la comunicación se realiza en más etapas si se considera el procesamiento de la
solicitud en el servidor. Dado que sólo nos ocupamos del protocolo HTTP, no se explicará la parte
del procesamiento en el servidor en esta sección del artículo. Si este tema les interesa, puede
consultar el articulo sobre el tratamiento de CGI.
Pag. 9
10. Solicitud HTTP
Una solicitud HTTP es un conjunto de líneas que el navegador envía al servidor. Incluye:
• Una línea de solicitud: es una línea que especifica el tipo de documento solicitado, el
método que se aplicará y la versión del protocolo utilizada. La línea está formada por tres
elementos que deben estar separados por un espacio:
• el método
• la dirección URL
• la versión del protocolo utilizada por el cliente (por lo general, HTTP/1.0)
• Los campos del encabezado de solicitud: es un conjunto de líneas opcionales que permiten
aportar información adicional sobre la solicitud y/o el cliente (navegador, sistema operativo,
etc.). Cada una de estas líneas está formada por un nombre que describe el tipo de
encabezado, seguido de dos puntos (:) y el valor del encabezado.
• El cuerpo de la solicitud: es un conjunto de líneas opcionales que deben estar separadas de
las líneas precedentes por una línea en blanco y, por ejemplo, permiten que se envíen datos
por un comando POST durante la transmisión de datos al servidor utilizando un formulario.
Por lo tanto, una solicitud HTTP posee la siguiente sintaxis (<crlf> significa retorno de carro y
avance de línea):
MÉTODO VERSIÓN URL<crlf>
ENCABEZADO: Valor<crlf>
. . . ENCABEZADO: Valor<crlf>
Línea en blanco <crlf>
CUERPO DE LA SOLICITUD
A continuación se encuentra un ejemplo de una solicitud HTTP:
GET http://www.google.com.py HTTP/1.0 Accept : Text/html If-Modified-Since :
Saturday, 15-January-2000 14:37:11 GMT User-Agent : Mozilla/4.0 (compatible;
MSIE 5.0; Windows 7)
Comandos
Comando Descripción
GET Solicita el recurso ubicado en la URL especificada
HEAD Solicita el encabezado del recurso ubicado en la URL especificada
POST Envía datos al programa ubicado en la URL especificada
PUT Envía datos a la URL especificada
DELETE Borra el recurso ubicado en la URL especificada
Encabezados
Nombre del
Descripción
encabezado
Tipo de contenido aceptado por el navegador (por ejemplo, texto/html).
Accept
Consulte Tipos de MIME
Pag. 10
11. Accept-Charset Juego de caracteres que el navegador espera
Accept-Encoding Codificación de datos que el navegador acepta
Accept-Language Idioma que el navegador espera (de forma predeterminada, inglés)
Authorization Identificación del navegador en el servidor
Content-Encoding Tipo de codificación para el cuerpo de la solicitud
Content-Language Tipo de idioma en el cuerpo de la solicitud
Content-Length Extensión del cuerpo de la solicitud
Tipo de contenido del cuerpo de la solicitud (por ejemplo, texto/html).
Content-Type
Consulte Tipos de MIME
Date Fecha en que comienza la transferencia de datos
Forwarded Utilizado por equipos intermediarios entre el navegador y el servidor
From Permite especificar la dirección de correo electrónico del cliente
Permite especificar que debe enviarse el documento si ha sido
From
modificado desde una fecha en particular
Link Vínculo entre dos direcciones URL
Orig-URL Dirección URL donde se originó la solicitud
Referer Dirección URL desde la cual se realizó la solicitud
Cadena con información sobre el cliente, por ejemplo, el nombre y la
User-Agent
versión del navegador y el sistema operativo
Respuesta HTTP
Una respuesta HTTP es un conjunto de líneas que el servidor envía al navegador. Está constituida
por: Incluye:
• Una línea de estado: es una línea que especifica la versión del protocolo utilizada y el
estado de la solicitud en proceso mediante un texto explicativo y un código. La línea está
compuesta por tres elementos que deben estar separados por un espacio: La línea está
formada por tres elementos que deben estar separados por un espacio:
• la versión del protocolo utilizada
• el código de estado
• el significado del código
• Los campos del encabezado de respuesta: es un conjunto de líneas opcionales que
permiten aportar información adicional sobre la respuesta y/o el servidor. Cada una de estas
líneas está compuesta por un nombre que califica el tipo de encabezado, seguido por dos
puntos (:) y por el valor del encabezado Cada una de estas líneas está formada por un
nombre que describe el tipo de encabezado, seguido de dos puntos (:) y el valor del
encabezado.
• El cuerpo de la respuesta: contiene el documento solicitado.
Por lo tanto, una respuesta HTTP posee la siguiente sintaxis (<crlf> significa retorno de carro y
avance de línea):
Pag. 11
12. VERSIÓN-HTTP CÓDIGO EXPLICACIÓN <crlf>
ENCABEZADO: Valor<crlf>
. . . ENCABEZADO: Valor<crlf>
Línea en blanco <crlf>
CUERPO DE LA RESPUESTA
A continuación se encuentra un ejemplo de una respuesta HTTP:
HTTP/1.0 200 OK Date: Sat, 15 Jan 2000 14:37:12 GMT Server : Microsoft-IIS/2.0 Content-
Type : text/HTML Content-Length : 1245 Last-Modified : Fri, 14 Jan 2000 08:25:13 GMT
Encabezados de respuesta
Nombre del encabezado Descripción
Content-Encoding Tipo de codificación para el cuerpo de la respuesta
Content-Language Tipo de idioma en el cuerpo de la respuesta
Content-Length Extensión del cuerpo de la respuesta
Tipo de contenido del cuerpo de la respuesta (por ejemplo, texto/html).
Content-Type
Consulte Tipos de MIME
Date Fecha en que comienza la transferencia de datos
Expires Fecha límite de uso de los datos
Forwarded Utilizado por equipos intermediarios entre el navegador y el servidor
Location Redireccionamiento a una nueva dirección URL asociada con el documento
Server Características del servidor que envió la respuesta
Los códigos de respuesta
Son los códigos que se ven cuando el navegador no puede mostrar la página solicitada. El código de
respuesta está formado por tres dígitos: el primero indica el estado y los dos siguientes explican la
naturaleza exacta del error.
Código Mensaje Descripción
Mensaje de
10x Estos códigos no se utilizan en la versión 1.0 del protocolo
información
20x Éxito Estos códigos indican la correcta ejecución de la transacción
200 OK La solicitud se llevó a cabo de manera correcta
Sigue a un comando POST e indica el éxito, la parte restante del
201 CREATED cuerpo indica la dirección URL donde se ubicará el documento
creado recientemente.
La solicitud ha sido aceptada, pero el procedimiento que sigue no se
202 ACCEPTED
ha llevado a cabo
PARTIAL Cuando se recibe este código en respuesta a un comando de GET
203
INFORMATION indica que la respuesta no está completa.
El servidor ha recibido la solicitud, pero no hay información de
204 NO RESPONSE
respuesta
El servidor le indica al navegador que borre el contenido en los
205 RESET CONTENT
campos de un formulario
Pag. 12
13. Es una respuesta a una solicitud que consiste en el encabezado range.
206 PARTIAL CONTENT
El servidor debe indicar el encabezado content-Range
Estos códigos indican que el recurso ya no se encuentra en la
30x Redirección
ubicación especificada
301 MOVED Los datos solicitados han sido transferidos a una nueva dirección
Los datos solicitados se encuentran en una nueva dirección URL,
302 FOUND
pero, no obstante, pueden haber sido trasladados
Significa que el cliente debe intentarlo con una nueva dirección; es
303 METHOD
preferible que intente con otro método en vez de GET
Si el cliente llevó a cabo un comando GET condicional (con la
solicitud relativa a si el documento ha sido modificado desde la
304 NOT MODIFIED
última vez) y el documento no ha sido modificado, este código se
envía como respuesta.
40x Error debido al cliente Estos códigos indican que la solicitud es incorrecta
La sintaxis de la solicitud se encuentra formulada de manera errónea
400 BAD REQUEST
o es imposible de responder
Los parámetros del mensaje aportan las especificaciones de
401 UNAUTHORIZED formularios de autorización que se admiten. El cliente debe
reformular la solicitud con los datos de autorización correctos
PAYMENT El cliente debe reformular la solicitud con los datos de pago
402
REQUIRED correctos
403 FORBIDDEN El acceso al recurso simplemente se deniega
Un clásico. El servidor no halló nada en la dirección especificada. Se
404 NOT FOUND
ha abandonado sin dejar una dirección para redireccionar... :)
Error debido al
50x Estos códigos indican que existe un error interno en el servidor
servidor
El servidor encontró una condición inesperada que le impide seguir
500 INTERNAL ERROR
con la solicitud (una de esas cosas que les suceden a los servidores...)
501 NOT IMPLEMENTED El servidor no admite el servicio solicitado (no puede saberlo todo...)
El servidor que actúa como una puerta de enlace o proxy ha recibido
502 BAD GATEWAY
una respuesta no válida del servidor al que intenta acceder
El servidor no puede responder en ese momento debido a que se
SERVICE
503 encuentra congestionado (todas las líneas de comunicación se
UNAVAILABLE
encuentran congestionadas, inténtelo de nuevo más adelante)
La respuesta del servidor ha llevado demasiado tiempo en relación al
504 GATEWAY TIMEOUT tiempo de espera que la puerta de enlace podía admitir (excedió el
tiempo asignado...)
Pag. 13
14. Telnet (TELecommunication NETwork)
Es uno de los servicios más antiguos de Internet, data de la época de ARPANET, y se utiliza para
conectar ("login") con un equipo remoto a través de la Red, de forma que el ordenador cliente se
comporta como una terminal conectada (on-line) con el ordenador remoto. Todo lo que se necesita
es un cliente Telnet (un programa especial). Utilizando la terminología informática anterior a la
Web, diríamos que un cliente telnet es en realidad un programa de emulación de terminal para
teleproceso adaptado al sistema de Internet, es decir, al protocolo TPC/IP.
Para que la conexión funcione, como en todos los servicios de Internet, la máquina a la que se
acceda debe tener un programa especial que reciba y gestione las conexiones. El puerto que se
utiliza generalmente es el 23.
Funcionamiento
Telnet sólo sirve para acceder en modo terminal, es decir, sin gráficos, pero fue una herramienta
muy útil para arreglar fallos a distancia, sin necesidad de estar físicamente en el mismo sitio que la
máquina que los tenía. También se usaba para consultar datos a distancia, como datos personales en
máquinas accesibles por red, información bibliográfica, etc.
Aparte de estos usos, en general telnet se ha utilizado (y aún hoy se puede utilizar en su variante
SSH) para abrir una sesión con una máquina UNIX, de modo que múltiples usuarios con cuenta en
la máquina, se conectan, abren sesión y pueden trabajar utilizando esa máquina. Es una forma muy
usual de trabajar con sistemas UNIX.
Problemas de seguridad
Su mayor problema es de seguridad, ya que todos los nombres de usuario y contraseñas necesarias
para entrar en las máquinas viajan por la red como texto plano (cadenas de texto sin cifrar). Esto
facilita que cualquiera que espíe el tráfico de la red pueda obtener los nombres de usuario y
contraseñas, y así acceder él también a todas esas máquinas. Por esta razón dejó de usarse, casi
totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como
una versión cifrada de telnet -actualmente se puede cifrar toda la comunicación del protocolo
durante el establecimiento de sesión (RFC correspondiente, en inglés- si cliente y servidor lo
permiten, aunque no se tienen ciertas funcionalidad extra disponibles en SSH).
Manejo básico de telnet
Para iniciar una sesión con un intérprete de comandos de otro ordenador, puede emplear el comando
telnet seguido del nombre o la dirección IP de la máquina en la que desea trabajar, por ejemplo si
desea conectarse a la máquina facitec.mifacultad.edu.com deberá teclear:
telnet facitec.mifacultad.edu.com.
y para conectarse con la dirección IP 1.2.3.4 deberá utilizar:
telnet 1.2.3.4.
Pag. 14
15. Una vez conectado, podrá ingresar el nombre de usuario y contraseña remoto para iniciar una sesión
en modo texto a modo de consola virtual (ver Lectura Sistema de usuarios y manejo de clave). La
información que transmita (incluyendo su clave) no será protegida o cifrada y podría ser vista en
otros computadores por los que se transite la información (la captura de estos datos se realiza con
un packet sniffer).
Una alternativa más segura para telnet, pero que requiere más recursos del computador, es SSH.
Este cifra la información antes de transmitirla, autentica la máquina a la cual se conecta y puede
emplear mecanismos de autenticación de usuarios más seguros.
Actualmente hay sitios para hackers en los que se entra por telnet y se van sacando las password
para ir pasando de nivel, ese uso de telnet aun es vigente.
File Transfer Protocol
FTP (siglas en inglés de File Transfer Protocol, 'Protocolo de Transferencia de Archivos')es un
protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP basado
en la arquitectura cliente-servidor. Desde un equipo cliente se puede conectar a un servidor para
descargar archivos desde él o para enviarle archivos, independientemente del sistema operativo
utilizado en cada equipo.
El servicio FTP es ofrecido por la capa de aplicación del modelo de capas de red TPC/IP al usuario,
utilizando normalmente el puerto de red 20 y el 21. Un problema básico de FTP es que está pensado
para ofrecer la máxima velocidad en la conexión, pero no la máxima seguridad, ya que todo el
intercambio de información, desde el login y password del usuario en el servidor hasta la
transferencia de cualquier archivo, se realiza en texto plano sin ningún tipo de cifrado, con lo que
un posible atacante puede capturar este tráfico, acceder al servidor y/o apropiarse de los archivos
transferidos.
Para solucionar este problema son de gran utilidad aplicaciones como scp y sftp, incluidas en el
paquete SSH, que permiten transferir archivos pero cifrando todo el tráfico.
Servidor FTP
Un servidor FTP es un programa especial que se ejecuta en un equipo servidor normalmente
conectado a Internet (aunque puede estar conectado a otros tipos de redes, LAN, MAN, etc.). Su
función es permitir el intercambio de datos entre diferentes servidores/ordenadores.
Por lo general, los programas servidores FTP no suelen encontrarse en los ordenadores personales,
por lo que un usuario normalmente utilizará el FTP para conectarse remotamente a uno y así
intercambiar información con él.
Las aplicaciones más comunes de los servidores FTP suelen ser el alojamiento web, en el que sus
clientes utilizan el servicio para subir sus páginas web y sus archivos correspondientes; o como
servidor de backup (copia de seguridad) de los archivos importantes que pueda tener una empresa.
Para ello, existen protocolos de comunicación FTP para que los datos se transmitan cifrados, como
el SFTP (Secure File Transfer Protocol).
Pag. 15
16. Cliente FTP
Cuando un navegador no está equipado con la función FTP, o si se quiere cargar archivos en un
ordenador remoto, se necesitará utilizar un programa cliente FTP. Un cliente FTP es un programa
que se instala en el ordenador del usuario, y que emplea el protocolo FTP para conectarse a un
servidor FTP y transferir archivos, ya sea para descargarlos o para subirlos.
Para utilizar un cliente FTP, se necesita conocer el nombre del archivo, el ordenador en que reside
(servidor, en el caso de descarga de archivos), el ordenador al que se quiere transferir el archivo (en
caso de querer subirlo nosotros al servidor), y la carpeta en la que se encuentra.
Algunos clientes de FTP básicos en modo consola vienen integrados en los sistemas operativos,
incluyendo Microsoft Windows, DOS, GNU/Linux y Unix. Sin embargo, hay disponibles clientes
con opciones añadidas e interfaz gráfica. Aunque muchos navegadores tienen ya integrado FTP, es
más confiable a la hora de conectarse con servidores FTP no anónimos utilizar un programa cliente.
Acceso anónimo
Los servidores FTP anónimos ofrecen sus servicios libremente a todos los usuarios, permiten
acceder a sus archivos sin necesidad de tener un 'USER ID' o una cuenta de usuario. Es la manera
más cómoda fuera del servicio web de permitir que todo el mundo tenga acceso a cierta información
sin que para ello el administrador de un sistema tenga que crear una cuenta para cada usuario.
Si un servidor posee servicio 'FTP anonymous' solamente con teclear la palabra «anonymous»,
cuando pregunte por tu usuario tendrás acceso a ese sistema. No se necesita ninguna contraseña
preestablecida, aunque tendrás que introducir una sólo para ese momento, normalmente se suele
utilizar la dirección de correo electrónico propia.
Solamente con eso se consigue acceso a los archivos del FTP, aunque con menos privilegios que un
usuario normal. Normalmente solo podrás leer y copiar los archivos que sean públicos, así
indicados por el administrador del servidor al que nos queramos conectar.
Normalmente, se utiliza un servidor FTP anónimo para depositar grandes archivos que no tienen
utilidad si no son transferidos a la máquina del usuario, como por ejemplo programas, y se reservan
los servidores de páginas web (HTTP (Hypertext Transfer Protocol)) para almacenar información
textual destinada a la lectura en línea.
Pag. 16
17. Cliente FTP basado en Web
Un «cliente FTP basado en Web» no es más que un cliente FTP al cual podemos acceder a través de
nuestro navegador web sin necesidad de tener otra aplicación para ello. El usuario accede a un
servidor web (HTTP) que lista los contenidos de un servidor FTP. El usuario se conecta mediante
HTTP a un servidor web, y el servidor web se conecta mediante FTP al servidor FTP. El servidor
web actúa de intermediario haciendo pasar la información desde el servidor FTP en los puertos 20 y
21 hacia el puerto 80 HTTP que ve el usuario.
Siempre hay momentos en que nos encontramos fuera de casa, no llevamos el ordenador portátil
encima y necesitamos realizar alguna tarea urgente desde un ordenador de acceso público, de un
amigo, del trabajo, la universidad, etc. Lo más común es que no estén instaladas las aplicaciones
que necesitamos y en muchos casos hasta carecemos de los permisos necesarios para realizar su
instalación. Otras veces estamos detrás de un proxy o cortafuegos que no nos permite acceder a
servidores FTP externos.
Al disponer de un cliente FTP basado en Web podemos acceder al servidor FTP remoto como si
estuviéramos realizando cualquier otro tipo de navegación web. A través de un cliente FTP basado
en Web podrás, crear, copiar, renombrar y eliminar archivos y directorios. Cambiar permisos, editar,
ver, subir y descargar archivos, así como cualquier otra función del protocolo FTP que el servidor
FTP remoto permita.
Modos de conexión del cliente FTP
FTP admite dos modos de conexión del cliente. Estos modos se denominan activo (o Estándar, o
PORT, debido a que el cliente envía comandos tipo PORT al servidor por el canal de control al
establecer la conexión) y pasivo (o PASV, porque en este caso envía comandos tipo PASV). Tanto
en el modo Activo como en el modo Pasivo, el cliente establece una conexión con el servidor
mediante el puerto 21, que establece el canal de control.
Modo activo.
En modo Activo, el servidor siempre crea el canal de datos en su puerto 20, mientras que en el lado
del cliente el canal de datos se asocia a un puerto aleatorio mayor que el 1024. Para ello, el cliente
manda un comando PORT al servidor por el canal de control indicándole ese número de puerto, de
manera que el servidor pueda abrirle una conexión de datos por donde se transferirán los archivos y
los listados, en el puerto especificado.
Lo anterior tiene un grave problema de seguridad, y es que la máquina cliente debe estar dispuesta a
aceptar cualquier conexión de entrada en un puerto superior al 1024, con los problemas que ello
implica si tenemos el equipo conectado a una red insegura como Internet. De hecho, los cortafuegos
que se instalen en el equipo para evitar ataques seguramente rechazarán esas conexiones aleatorias.
Para solucionar esto se desarrolló el modo pasivo.
Pag. 17
18. Modo pasivo.
Cuando el cliente envía un comando PASV sobre el canal de control, el servidor FTP le indica por
el canal de control, el puerto (mayor a 1023 del servidor. Ej:2040) al que debe conectarse el cliente.
El cliente inicia una conexión desde el puerto siguiente al puerto de control (ej: 1036) hacia el
puerto del servidor especificado anteriormente (ej: 2040).1
Antes de cada nueva transferencia tanto en el modo Activo como en el Pasivo, el cliente debe enviar
otra vez un comando de control (PORT o PASV, según el modo en el que haya conectado), y el
servidor recibirá esa conexión de datos en un nuevo puerto aleatorio (si está en modo pasivo) o por
el puerto 20 (si está en modo activo). En el protocolo FTP existen 5 tipos de transferencia en ASCII
y en binarios.
Pag. 18
19. Guía de comandos FTP
impresión de caracteres # a medida que se transfieren archivos, a modo de barra de progreso.
-help: se utiliza para mostrar una lista de comandos que podemos utilizar en el FTP.
-status: nos muestra el estado actual del FTP.
-binary: cambia de modo ASCII a modo binario.
-ASCII: cambia de modo binario a modo ASCII
-type: nos muestra el modo en el que estamos ya sea binario o ASCII
-user: nos permite reiniciar el FTP con otro usuario.
-ls: nos muestra una lista con todos los archivos que hay en el FTP en el directorio
actual.
-pwd: nos muestra la ruta actual, donde estamos trabajando.
-cd: nos cambia de directorio.
- mkdir: creamos un directorio en el directorio actual.
-rmdir: elimina un directorio en el directorio actual.
-get: este comando nos sirve para recuperar archivos del FTP
-put: nos manda un archivo del ordenador al servidor.
-open: cierra la sesión actual y abre una nueva sesión en otro FTP
-close: cierra la sesión, pero deja el software FTP activo.
-bye: cierra o desconecta el FTP y lo deja en modo inactivo.
-quit: cierra o desconecta el FTP y lo deja en modo inactivo.
POP3, Protocolo de la oficina de correo
El protocolo original fue llamado POP en 1984. En la versión 2 (1985), el POP2, se le asignó el
puerto 109 como predeterminado. Luego, en 1988, se lanza la versión 3, POP3 (revisada múltiples
veces).
Se utilizaen clientes locales de correo para obtener los mensajes de correo electrónico almacenados
en un servidor remoto. Es un protocolo de nivel de aplicación en el Modelo OSI.
Las versiones del protocolo POP (informalmente conocido como POP1) y POP2 se han hecho
obsoletas debido a las últimas versiones de POP3. En general cuando uno se refiere al término POP,
nos referimos a POP3 dentro del contexto de protocolos de correo electrónico.
Características
POP3 está diseñado para recibir correo, no para enviarlo; le permite a los usuarios con conexiones
intermitentes o muy lentas (tales como las conexiones por módem), descargar su correo electrónico
mientras tienen conexión y revisarlo posteriormente incluso estando desconectados. Cabe
Pag. 19
20. mencionar que la mayoría de los clientes de correo incluyen la opción de dejar los mensajes en el
servidor, de manera tal que, un cliente que utilice POP3 se conecta, obtiene todos los mensajes, los
almacena en la computadora del usuario como mensajes nuevos, los elimina del servidor y
finalmente se desconecta. En contraste, el protocolo IMAP permite los modos de operación
conectado y desconectado.
Los clientes de correo electrónico que utilizan IMAP dejan por lo general los mensajes en el
servidor hasta que el usuario los elimina directamente. Esto y otros factores hacen que la operación
de IMAP permita a múltiples clientes acceder al mismo buzón de correo. La mayoría de los clientes
de correo electrónico soportan POP3 o IMAP; sin embargo, solo unos cuantos proveedores de
internet ofrecen IMAP como valor agregado de sus servicios.
Al igual que otros viejos protocolos de internet, POP3 utilizaba un mecanismo de firmado sin
cifrado. La transmisión de contraseñas de POP3 en texto plano aún se da. En la actualidad POP3
cuenta con diversos métodos de autenticación que ofrecen una diversa gama de niveles de
protección contra los accesos ilegales al buzón de correo de los usuarios. Uno de estos es APOP, el
cual utiliza funciones MD5 para evitar los ataques de contraseñas. Mozilla, Eudora, Novell
Evolution así como Mozilla Thunderbird implementan funciones APOP.
Órdenes
Para establecer una conexión a un servidor POP, el cliente de correo abre una conexión TCP en el
puerto 110 del servidor. Cuando la conexión se ha establecido, el servidor POP envía al cliente POP
y después las dos máquinas se envían entre sí otras órdenes y respuestas que se especifican en el
protocolo. Como parte de esta comunicación, al cliente POP se le pide que se autentifique (Estado
de autenticación), donde el nombre de usuario y la contraseña del usuario se envían al servidor POP.
Si la autenticación es correcta, el cliente POP pasa al Estado de transacción, en este estado se
pueden utilizar órdenes LIST, RETR y DELE para mostrar, descargar y eliminar mensajes del
servidor, respectivamente. Los mensajes definidos para su eliminación no se quitan realmente del
servidor hasta que el cliente POP envía la orden QUIT para terminar la sesión. En ese momento, el
servidor POP pasa al Estado de actualización, fase en la que se eliminan los mensajes marcados y se
limpian todos los recursos restantes de la sesión.
Es posible conectarse manualmente al servidor POP3 haciendo Telnet al puerto 110. Es muy útil
cuando envían un mensaje con un fichero muy largo que no se quiere recibir.
• USER <nombre> Identificación de usuario (Solo se realiza una vez).
• PASS <password> Envía la clave del servidor.
• STAT Da el número de mensajes no borrados en el buzón y su longitud total.
• LIST Muestra todos los mensajes no borrados con su longitud.
• RETR <número> Solicita el envío del mensaje especificando el número (no se borra del
buzón).
• TOP <número> <líneas> Muestra la cabecera y el número de líneas requerido del mensaje
especificando el número.
Pag. 20
21. • DELE <número> Borra el mensaje especificando el número.
• RSET Recupera los mensajes borrados (en la conexión actual).
• UIDL <número> Devuelve una cadena identificadora del mensaje persistente a través de las
sesiones. Si no se especifica <número> se devuelve una lista con los números de mensajes y
su cadena identificadora de los mensajes no borrados.
• QUIT Salir.
Ventajas
La ventaja con otros protocolos es que entre servidor-cliente no se tienen que enviar tantas órdenes
para la comunicación entre ellos. El protocolo POP también funciona adecuadamente si no se utiliza
una conexión constante a Internet o a la red que contiene el servidor de correo.
Pag. 21
22. Simple Mail Transfer Protocol (SMTP)
Protocolo Simple de Transferencia de Correo, es un protocolo de la capa de aplicación. Protocolo de
red basado en textos utilizados para el intercambio de mensajes de correo electrónico entre
computadoras u otros dispositivos (PDA's, teléfonos móviles, etc.).
En 1982 se diseñó el primer sistema para intercambiar correos electrónicos en ARPANET, con el
tiempo se ha convertido en uno de los protocolos más usados en internet. Para adaptarse a las
nuevas necesidades surgidas por el crecimiento y popularidad de internet se han hecho varias
ampliaciones a este protocolo, como por ejemplo enviar texto con formato.
Funcionamiento
SMTP se basa en el modelo cliente-servidor, donde un cliente envía un mensaje a uno o varios
receptores. La comunicación entre el cliente y el servidor consiste enteramente en líneas de texto
compuestas por caracteres ASCII. El tamaño máximo permitido para estas líneas es de 1000
caracteres.
Las respuestas del servidor constan de un código numérico de tres dígitos, seguido de un texto
explicativo. El número va dirigido a un procesado automático de la respuesta por autómata,
mientras que el texto permite que un humano interprete la respuesta. En el protocolo SMTP todas
las órdenes, réplicas o datos son líneas de texto, delimitadas por el carácter <CRLF>. Todas las
réplicas tienen un código numérico al comienzo de la línea.
En el conjunto de protocolos TCP/IP, el SMTP va por encima del TCP, usando normalmente el
puerto 25 en el servidor para establecer la conexión.
Cuando un cliente establece una conexión con el servidor SMTP, espera a que éste envíe un
mensaje “220 Service ready” o “421 Service non available”
• Se envía un HELO desde el cliente. Con ello el servidor se identifica. Esto puede usarse
para comprobar si se conectó con el servidor SMTP correcto.
• El cliente comienza la transacción del correo con la orden MAIL FROM. Como argumento
de esta orden se puede pasar la dirección de correo al que el servidor notificará cualquier
fallo en el envío del correo (Por ejemplo, MAIL FROM:<fuente@host0>). Luego si el
servidor comprueba que el origen es valido, el servidor responde “250 OK”.
• Ya le hemos dicho al servidor que queremos mandar un correo, ahora hay que comunicarle a
quien. La orden para esto es RCPT TO:<destino@host>. Se pueden mandar tantas órdenes
RCPT como destinatarios del correo queramos. Por cada destinatario, el servidor contestará
“250 OK” o bien “550 No such user here”, si no encuentra al destinatario.
• Una vez enviados todos los RCPT, el cliente envía una orden DATA para indicar que a
continuación se envían los contenidos del mensaje. El servidor responde “354 Start mail
input, end with <CRLF>.<CRLF>” Esto indica al cliente como ha de notificar el fin del
mensaje.
• Ahora el cliente envía el cuerpo del mensaje, línea a línea. Una vez finalizado, se termina
con un <CRLF>.<CRLF> (la última línea será un punto), a lo que el servidor contestará
“250 OK”, o un mensaje de error apropiado.
Pag. 22
23. • Tras el envío, el cliente, si no tiene que enviar más correos, con la orden QUIT corta la
conexión. También puede usar la orden TURN, con lo que el cliente pasa a ser el servidor, y
el servidor se convierte en cliente. Finalmente, si tiene más mensajes que enviar, repite el
proceso hasta completarlos.
Ordenes básicas de SMTP:
• HELO, para abrir una sesión con el servidor
• MAIL FROM, para indicar quien envía el mensaje
• RCPT TO, para indicar el destinatario del mensaje
• DATA, para indicar el comienzo del mensaje, éste finalizará cuando haya una línea
únicamente con un punto.
• QUIT, para cerrar la sesión
• RSET Aborta la transacción en curso y borra todos los registros.
• SEND Inicia una transacción en la cual el mensaje se entrega a una terminal.
• SOML El mensaje se entrega a un terminal o a un buzón.
• SAML El mensaje se entrega a un terminal y a un buzón.
• VRFY Solicita al servidor la verificación del argumento.
• EXPN Solicita al servidor la confirmación del argumento.
• HELP Permite solicitar información sobre un comando.
• NOOP Se emplea para reiniciar los temporizadores.
• TURN Solicita al servidor que intercambien los papeles.
Ejemplo de una comunicación SMTP
En primer lugar se ha de establecer una conexión entre el emisor (cliente) y el receptor (servidor).
Esto puede hacerse automáticamente con un programa cliente de correo o mediante un cliente
telnet.
En el siguiente ejemplo se muestra una conexión típica. Se nombra con la letra C al cliente y con S
al servidor.
S: 220 Servidor ESMTP
C: HELO miequipo.midominio.com
S: 250 Hello, please to meet you
C: MAIL FROM: <yo@midominio.com>
S: 250 Ok
C: RCPT TO: <destinatario@sudominio.com>
S: 250 Ok
C: DATA
S: 354 End data with <CR><LF>.<CR><LF>
C: Subject: Campo de asunto
C: From: yo@midominio.com
C: To: destinatario@sudominio.com
C:
C: Hola,
C: Esto es una prueba.
C: Hasta luego.
C:
C: .
S: 250 Ok: queued as 12345
C: quit
S: 221 Bye
Pag. 23
24. Seguridad y spam
Una de las limitaciones del SMTP original es que no facilita métodos de autenticación a los
emisores, así que se definió la extensión SMTP-AUTH.
A pesar de esto, el spam es aún el mayor problema. No se cree que las extensiones sean una forma
práctica para prevenirlo. Internet Mail 2000 es una de las propuestas para reemplazarlo.
Domain Name System o DNS(sistema de nombres de dominio)
el cuál nació en la década de los 80's. Creado por Paúl Mockapetris en colaboración con Jon Postel
de la Universidad del Sur de California y posteriormente, Paúl Vixie. Juntos desarrollaron lo que
hasta ahora conocemos como el DNS (BIND, Barkeley Internet Name Domain), un sistema
cliente/servidor, distribuido y jerárquico.
Se crearon entonces los nombres de dominio genéricos de primer nivel (gTLD, generic Top-level
Domain), .com .net y .org, es decir, se habían creado estas tres clasificaciones con el fin de ubicar el
tipo de entidades que buscaban tener presencia en Internet.
Además de estos gTLD se empezó por delegar los sufijos nacionales (nTLD, national Top-level
Domain) a los países que se fueran conectando a la red.
Este sistema asocia información variada con nombres de dominios asignado a cada uno de los
participantes. Su función más importante, es traducir (resolver) nombres inteligibles para los
humanos en identificadores binarios asociados con los equipos conectados a la red, esto con el
propósito de poder localizar y direccionar estos equipos mundialmente.
El servidor DNS utiliza una base de datos distribuida y jerárquica que almacena información
asociada a nombres de dominio en redes como Internet. Aunque como base de datos el DNS es
capaz de asociar diferentes tipos de información a cada nombre, los usos más comunes son la
asignación de nombres de dominio a direcciones IP y la localización de los servidores de correo
electrónico de cada dominio.
La asignación de nombres a direcciones IP es ciertamente la función más conocida de los protocolos
DNS. Por ejemplo, si la dirección IP del sitio FTP (File Transfer Protocol) de facitec.py es
192.64.128.4, la mayoría de la gente llega a este equipo especificando ftp.facitec.py y no la
dirección IP. Además de ser más fácil de recordar, el nombre es más fiable. La dirección numérica
podría cambiar por muchas razones, sin que tenga que cambiar el nombre.
Cada dominio es como si terminase con un “.” Por eso nuestro dominio seria “www.facitec.py” y el
punto al final es el elemento raíz de nuestro árbol y lo que indica al cliente que debe de empezar la
búsqueda en los root Server. Estos root Server son los que tienen los registros TLD que son los
dominios de nivel superior ósea los que no pertenecen a otro dominio, como son “com, org, net, es,
etc.” Actualmente hay 13 TLD en todo el mundo y 10 de ellos se encuentran en estados unidos, uno
en Estocolmo, otro en Japón, y el último en Londres. Si alguna catástrofe hiciese que estos 13
servidores dejasen de operar provocaría un gran apagón de Internet y causaría estragos a nivel
mundial.
Pag. 24
25. NIC (Network Information Center)
NIC (acrónimo de Network Information Center o Centro de Información sobre la Red) es una
institución encargada de asignar los nombres de dominio en Internet, ya sean nombres de dominio
genéricos, o por países, permitiendo personas, o empresas, montar sitios de Internet a través de un
ISP, mediante un DNS. Técnicamente existe un NIC por cada país en el mundo, y cada uno de
éstos es responsable por todos los dominios con la terminación correspondiente a su país. Por
ejemplo: NIC Paraguay es la entidad encargada de gestionar todos los dominios con terminación
.py, la cual es la terminación correspondiente asignada a los dominios de Paraguay.
Componentes de DNS.
DNS opera a través de tres componentes: Clientes DNS, Servidores DNS, y Zonas de Autoridad.
Clientes DNS.
Son programas que ejecuta un usuario y que generan peticiones de consulta para resolver nombres.
Básicamente preguntan por la dirección IP que corresponde a un nombre determinado.
Servidores DNS.
Son servicios que contestan las consultas realizadas por los Clientes DNS. Hay dos tipos de
servidores de nombres:
• Servidor Maestro: También denominado Primario. Obtiene los datos del dominio a partir
de un archivo alojado en el mismo servidor.
• Servidor Esclavo: También denominado Secundario. Al iniciar obtiene los datos del
dominio a través de un Servidor Maestro (o primario), realizando un proceso denominado
transferencia de zona.
Un gran número de problemas de operación de servidores DNS se atribuyen a las pobres opciones
de servidores secundarios para las zona de DNS. De acuerdo al RFC 2182, el DNS requiere que al
menos tres servidores existan para todos los dominios delegados (o zonas).
Una de las principales razones para tener al menos tres servidores para cada zona, es permitir que
la información de la zona misma esté disponible siempre, y de forma confiable, hacia los Clientes
DNS, a través de Internet cuando un servidor DNS de dicha zona falle, esté fuera de servicio, y/o
esté inalcanzable.
Contar con múltiples servidores también facilita la propagación de la zona y mejoran la eficiencia
del sistema en general al brindar opciones a los Clientes DNS si acaso encontraran dificultades para
realizar una consulta en un Servidor DNS. En otras palabras: tener múltiples servidores para una
zona permite contar con redundancia, y respaldo, del servicio.
Pag. 25
26. Tipos de consultas
Consultas Iterativas (no recursivas)
El cliente hace una consulta al Servidor DNS, y éste le responde con la mejor respuesta que
pueda darse basada sobre su caché, o en las zonas locales. Si es imposible dar una respuesta,
la consulta se reenvía hacia otro Servidor DNS repitiéndose este proceso hasta encontrar al
Servidor DNS que tiene la Zona de Autoridad capaz de resolver la consulta.
Consultas Recursivas
El Servidor DNS asume toda la carga de proporcionar una respuesta completa para la
consulta realizada por el Cliente DNS. El Servidor DNS desarrolla entonces Consultas
Iterativas separadas hacia otros Servidores DNS (en lugar de hacerlo el Cliente DNS) para
obtener la respuesta solicitada.
Zonas de Autoridad.
Permiten al Servidor Maestro o Primario cargar la información de una zona. Cada Zona de
Autoridad abarca al menos un dominio, y, posiblemente, sus sub-dominios, si estos últimos son
imposibles de delegar a otras zonas de autoridad.
Pag. 26