DNS Correo Electrónico –SMTP –POP3jsandova/el64e/clases/clase20-21.pdf · 3 5 Redes de...
-
Upload
truongkien -
Category
Documents
-
view
217 -
download
0
Transcript of DNS Correo Electrónico –SMTP –POP3jsandova/el64e/clases/clase20-21.pdf · 3 5 Redes de...
1
1EL64E Redes de Computadores [email protected]
EL64E: Redes de Computadores
Jorge Sandoval ArenasAlberto Castro Rojas
2Redes de Computadores [email protected]
Agenda
♦ DNS
♦ Correo Electrónico–SMTP–POP3
2
3EL64E Redes de Computadores [email protected]
DNS
Alberto Castro Rojas
Domain Name Server
4Redes de Computadores [email protected]
Hostnames
♦ IP Addresses son usadas por los PC’s– IP address incluye información para ruteo.
♦ IP addresses no son de fácil recordación.♦ IP addresses son imposibles de manejar.
– cual es la IP del último sitio WWW visitado?
3
5Redes de Computadores [email protected]
The Domain Name System
♦ Los sistemas de dominios de nombres sonusados para trasladar un nombre de hosts auna IP address.
♦ Los nombres de dominios son jerarquicos,incluyen nombres únicos, todavía fáciles de recordar.
6Redes de Computadores [email protected]
DNS Hierarchy
edu com org jp
rpi albany
4
7Redes de Computadores [email protected]
Estructura Host name♦ Cada host name consta de una secuencia de
labels separadas por puntos– Cada label puede ser de 63 caracteres– El largo total del nombre puede ser de
255 caracteres♦ Ejemplos:
– betosoft.cl– barney.the.purple.dinosaur.com– www.ece.uiuc.edu
8Redes de Computadores [email protected]
Domain Name
♦ El nombre de dominio de un host es lasecuencia de labels, hoja en el árbol denombres de dominios.
♦ Un dominio es un subárbol de un árbolglobal.
5
9Redes de Computadores [email protected]
Dominios Top level
♦ edu, gov, com, net, org, mil, …♦ Cada país tiene un dominio top level (2 letras
x nombre de dominio).♦ Nuevos dominios top level están siendo
introducidos:.aero .tv .coop .info .name .pro
10Redes de Computadores [email protected]
Organización DNS
♦ Database Distribuida– Quienes mantienen sus propios dominios
de nombres deben mantener un servidorDNS que provea el servicio de mapeo entre hostnames y las IP address del dominio.
– Se debe entonces contar con un servidor que responda a las peticiones sobre el dominio.
6
11Redes de Computadores [email protected]
rpi.eduDNS DB
rpi.eduDNS DB
Database DNS Distribuido
♦ Hay un dominio primario para un dominio, y servidores secundarios conteniendo lasdatabases replicadas.
nic.clDNS DB
Authoritative
nic.clDNS DB
Replicas
nic.cl DNS server
12Redes de Computadores [email protected]
DNS Clients
♦ Un DNS client se llama resolver.♦ Una llamada a gethostbyname() esmanejada por el resolver (tipicamenteparte del cliente).
♦ Ver /etc/resolv.conf en unamáquina con linux/unix.
7
13Redes de Computadores [email protected]
/etc/resolv.confdomain nic.cl128.113.1.5128.113.1.3
14Redes de Computadores [email protected]
DNS Servers
♦ Los servidores manejan las peticiones de su dominio directamente.
♦ Los servidores manejan peticiones de otros dominios contactados por servidores DNS remotos.
♦ Los servidores almacenan info de red
8
15Redes de Computadores [email protected]
Server - Server Communication♦ Si se pregunta al servidor para dar el mapeo
de un host fuera de su dominio (y por ello esta info no esta almacenada en el server cache):– El servidor encuentra un nameserver para
el dominio en cuestión– El servidor pregunta el nameserver para
dar al hostname una IP (un mapeo).♦ Para encontrar el servidor correcto se debe
usar DNS!
16Redes de Computadores [email protected]
DNS Data
♦ Las bases DNS contienen los siguientes registros (hostname a address records):– Name server records NS– Hostname aliases CNAME– Mail Exchangers MX– Host Information HINFO
9
17Redes de Computadores [email protected]
El Root DNS Server
♦ El root server needs to know la dirección delprimer (y del segundo) nivel de dominio
edu com org jp
cipece
18Redes de Computadores [email protected]
Formato de mensaje DNS
HEADER
QUERIES
Response RESOURCE RECORDS
Response AUTHORITY RECORDSResponse ADDITIONAL INFORMATION
HEADER
QUERIES
Response RESOURCE RECORDS
Response AUTHORITY RECORDSResponse ADDITIONAL INFORMATION
10
19Redes de Computadores [email protected]
Header de mensajes DNS
♦ query identifier♦ flags♦ # of questions♦ # of RRs♦ # of authority RRs♦ # of additional RRs
16 b
it fie
lds
Response}
20Redes de Computadores [email protected]
Mensajes de Flags
♦ QR: Query=0, Response=1♦ AA: Authoritative Answer♦ TC: respuesta truncada(> 512 bytes)♦ RD: recursion desired♦ RA: recursion available♦ rcode: return code
11
21Redes de Computadores [email protected]
Recursión
♦ Una petición puede indicar el uso derecursión - esto es pedir al servidor que encuentre la respuesta fuera (posiblemente por contacto con otros servidores).
♦ Si la recursión no es pedida, la respuesta puede tener una lista de otros nombres deservidores a ser contactados.
22Redes de Computadores [email protected]
Formato de pregunta
♦ Name: nombre de dominio (o IP address)
♦ Query type (A, NS, MX, …)
♦ Query class (1 para IP)
12
23Redes de Computadores [email protected]
Response Resource Record
♦ Domain Name♦ Response type ♦ Class (IP)♦ Time to live (en segundos) ♦ Largo de resource data ♦ Resource data
24Redes de Computadores [email protected]
UDP & TCP
♦ Ambos UDP y TCP son usados:– TCP para la transferencia de databases
completos a servidores secundarios(replicación).
– UDP para lookups– Si la respuesta tiene más de 512 bytes -
quién responde resubmits la petición usando TCP.
13
25Redes de Computadores [email protected]
Mucho más
♦ Descripción NO completa! ♦ De interes:
– RFC 1034: DNS conceptos y facilidades.– RFC 1035: DNS implementación y
especificación de protocol.– USAR nslookup.– Ver código de BIND (código del servidor
DNS más usado).
26EL64E Redes de Computadores [email protected]
Correo Electrónico
Jorge Sandoval Arenas
14
27Redes de Computadores [email protected]
Agenda
♦ SMTP♦ POP3
28Redes de Computadores [email protected]
SMTP♦ SIMPLE MAIL TRANSFER PROTOCOL ♦ RFC 821♦ Protocolo para el envio de e-mail♦ SMTP establece un canal de transmisión
bidireccional.♦ El servido SMTP puede ser el destino final o
uno intermedio.♦ El cliente genera comandos SMTP al servidor
que son respondidos para inyectarle los correos
15
29Redes de Computadores [email protected]
Funcionamiento
SMTPCommand / Replies
and Mail
Usuario
Cliente SMTP Servidor SMTP
30Redes de Computadores [email protected]
Ejemplo de ConexiónMAIL FROM:<[email protected]>250 OKRCPT TO: <[email protected]>250 OKRCPT TO: <[email protected]>550 No such user hereRCPT TO: <[email protected]>250 OKDATA354 Start mail input; end with .Blah blah blah... ...etc. etc. etc. . 250 OK
16
31Redes de Computadores [email protected]
Forwarding
♦ A veces la información de destino es incorrecta pero el servidor “sabe” cual es el destino correcto.
32Redes de Computadores [email protected]
Ejemplo de ForwardMAIL FROM:<[email protected]>251 User not local; will forward to <[email protected]>
En este caso el servidor es responsable de redirigir el mensaje al destino correcto
o
MAIL FROM:<[email protected]>251 User not local; please try <[email protected]>
En este caso el server rechaza el correo y el cliente debe reenviarlo al destino correcto.
17
33Redes de Computadores [email protected]
VERIFYING AND EXPANDING
♦ SMTP provee comandos para verificar un nombre de ususario o expandir una lista de mail.– Con el comando VRFY se pude enviar el
nombre de usuario y recibir el nombre completo incluido su e-mail
– Con el comando EXPN se puede enviar el nombre de una lista de distribución de correo y recibir el nombre completo de los usuarios y e-mail de los miembros de la lista.
34Redes de Computadores [email protected]
Ejemplo de VerifyingVRFY jsandova250 Jorge Sandoval <[email protected]>OVRFY jsandova251 User not local; will forward to <[email protected]>OVRFY el643550 String does not match anything.OVRFY el643551 User not local; please tryOVRFY Gourzenkyinplatz553 User ambiguous.
18
35Redes de Computadores [email protected]
Ejemplo de ExpandingEXPN el64e250 Jorge Sandoval <[email protected]>250 Redes de Computadores <[email protected]>250 Laboratorio LABNET <[email protected]>250
O
EXPN el64e502 5.7.0 Sorry, we do not allow this operation
36Redes de Computadores [email protected]
Algunos ComandosHELO <hostname>MAIL FROM: <sender> [ <parameters> ]RCPT TO: <recipient> [ <parameters> ]DATARSETVRFYEXPNHELPNOOPQUITTURN
19
37Redes de Computadores [email protected]
Reply Codes By Function Groups
500 Syntax error, command unrecognized[This may include errors such as command line too long]
501 Syntax error in parameters or arguments502 Command not implemented503 Bad sequence of commands504 Command parameter not implemented
211 System status, or system help reply214 Help message [Information on how to use the receiver or the meaning of
a particular non-standard command; this reply is useful only to thehuman user]
220 <domain> Service ready221 <domain> Service closing transmission channel421 <domain> Service not available, closing transmission channel
[This may be a reply to any command if the service knows it must shut down]
38Redes de Computadores [email protected]
Reply Codes By Function Groups (Cont)
250 Requested mail action okay, completed251 User not local; will forward to <forward-path>450 Requested mail action not taken: mailbox unavailable
[E.g., mailbox busy]550 Requested action not taken: mailbox unavailable
[E.g., mailbox not found, no access]451 Requested action aborted: error in processing551 User not local; please try <forward-path>452 Requested action not taken: insufficient system storage552 Requested mail action aborted: exceeded storage allocation553 Requested action not taken: mailbox name not allowed
[E.g., mailbox syntax incorrect]354 Start mail input; end with <CRLF>.<CRLF>554 Transaction failed
20
39Redes de Computadores [email protected]
Ejemplo de envio de un e-mail220 BBN-UNIX.ARPA Simple Mail Transfer Service ReadyHELO USC-ISIF.ARPA250 BBN-UNIX.ARPAMAIL FROM:<[email protected]>250 OKRCPT TO:<[email protected]>250 OKRCPT TO:<[email protected]>550 No such user hereRCPT TO:<[email protected]>250 OKDATA354 Start mail input; end with <CRLF>.<CRLF>Blah blah blah......etc. etc. etc..250 OKQUIT221 BBN-UNIX.ARPA Service closing transmission channel
40Redes de Computadores [email protected]
Ejemplo 2 de envio de un e-mail abortado
220 MIT-Multics.ARPA Simple Mail Transfer Service ReadyHELO ISI-VAXA.ARPA250 MIT-Multics.ARPAMAIL FROM:<[email protected]>250 OKRCPT TO:<[email protected]>250 OKRCPT TO:<[email protected]>550 No such user hereRSET250 OKQUIT221 MIT-Multics.ARPA Service closing transmission channel
21
41Redes de Computadores [email protected]
POP3
♦ Post Office Protocol - Version 3 ♦ RFC 1939♦ Protocolo para lectura de e-mail♦ POP3 establece un canal de transmisión
bidireccional.♦ El cliente genera comandos POP3 al
servidor que son respondidos para la lectura los correos
42Redes de Computadores [email protected]
Funcionamiento
Usuario
Servidor POP3
22
43Redes de Computadores [email protected]
Validación♦ Ingreso Exitoso
+OK Qpopper (version 4.0.3) at arrayan starting. USER jsandova+OK Password required for jsandova.PASS mipassword+OK jsandova has 13 visible messages (0 hidden) in 23450
octets.
♦ Ingreso fallido+OK Qpopper (version 4.0.3) at arrayan starting. USER jsandova+OK Password required for jsandova PASS 1234-ERR [AUTH] Password supplied for "jsandova" is incorrect.
44Redes de Computadores [email protected]
Mensajes en el Buzón♦ Al Ingreso
+OK Qpopper (version 4.0.3) at arrayan starting. USER jsandova+OK Password required for jsandova.PASS mipassword+OK jsandova has 13 visible messages (0 hidden) in 23450
octets.
♦ Comando STAT– Indica numero de mensajes y largo total en byte– EjemploSTAT+OK 13 23450
23
45Redes de Computadores [email protected]
Información de mensajes en el Buzón
♦ Comando LIST– Indica largo total en byte de cada uno de los mensajes– EjemploLIST+OK 13 visible messages (23450 octets)1 5382 14993 9574 25855 20746 33747 22718 22259 146410 107411 128312 167813 2428.
46Redes de Computadores [email protected]
Lectura de un Mensaje♦ La Lectura se realiza utilizando el comndo RETR♦ Ejemplo:
RETR 1+OK 538 octetsDate: 16 May 2002 12:10:57 -0400From: Mail System Internal Data <[email protected]>Subject: DON'T DELETE THIS MESSAGE -- FOLDER INTERNAL DATAMessage-ID: <[email protected]>X-IMAP: 0967564211 0000000751X-UIDL: ='h"!394!!_aJ!!'GV!!Status: RO
This text is part of the internal format of your mail folder, and is nota real message. It is created automatically by the mail system software.If deleted, important folder data will be lost, and it will be re-createdwith the data reset to initial values.
.
24
47Redes de Computadores [email protected]
Lectura Parcial de un Mensaje♦ La lectura parcial de un mensaje se realiza utilizando el
comando RETR♦ Ejemplo (leo el encabezado y 5 primeras lineas):
TOP 1 5 +OK Message followsDate: 16 May 2002 12:10:57 -0400From: Mail System Internal Data <[email protected]>Subject: DON'T DELETE THIS MESSAGE -- FOLDER INTERNAL DATAMessage-ID: <[email protected]>X-IMAP: 0967564211 0000000751X-UIDL: ='h"!394!!_aJ!!'GV!!Status: RO
This text is part of the internal format of your mail folder, and is nota real message. It is created automatically by the mail system software.If deleted, important folder data will be lost, and it will be re-createdwith the data reset to initial values.
.
48Redes de Computadores [email protected]
Eliminación de un Mensaje
♦ La Eliminación se realiza utilizando el comndo DELE
♦ Ejemplo:DELE 1+OK message 1 deleted
25
49Redes de Computadores [email protected]
Ejemplo de Conexión+OK Qpopper (version 4.0.3) at arrayan starting. USER jsandova+OK Password required for jsandova.PASS mipassword+OK jsandova has 13 visible messages (0 hidden) in 23450 octets.STAT+OK 13 23450RETR 1+OK 538 octetsDate: 16 May 2002 12:10:57 -0400From: Mail System Internal Data <[email protected]>Subject: DON'T DELETE THIS MESSAGE -- FOLDER INTERNAL DATAMessage-ID: <[email protected]>X-IMAP: 0967564211 0000000751X-UIDL: ='h"!394!!_aJ!!'GV!!Status: RO
This text is part of the internal format of your mail folder, and is nota real message. It is created automatically by the mail system software.If deleted, important folder data will be lost, and it will be re-createdwith the data reset to initial values.
.DELE 1+OK message 1 deletedQUIT+OK Pop server at arrayan signing off.