Anda di halaman 1dari 41

El Nivel de Transporte

Arquitecura de Redes de Ordenadores


Arquitectura de Internet

GSYC
Departamento de Teora de la Seal y Comunicaciones y
Sistemas Telemticos y Computacin
Universidad Rey Juan Carlos

Marzo 2015

GSyC - 2015

El Nivel de Transporte

2015 GSyC
Algunos derechos reservados.
Este trabajo se distribuye bajo la licencia
Creative Commons Attribution Share-Alike
disponible en http://creativecommons.org/licenses/by-sa/3.1/es

GSyC - 2015

El Nivel de Transporte

Contenidos

Introduccin

Puertos

NAT

Referencias

GSyC - 2015

El Nivel de Transporte

Introduccin

Contenidos

Introduccin

Puertos

NAT
Trfico saliente
Trfico entrante que responde al saliente
Trfico saliente: mismo protocolo y puerto origen hacia el
mismo servidor
Trfico entrante nuevo

Referencias

GSyC - 2015

El Nivel de Transporte

Introduccin

Introduccin

El Nivel de Transporte se encarga de gobernar el acceso


mltiple a la red de los diversos procesos de la misma mquina
que quieran usarla: En TCP/IP se hace a travs de puertos.
Hay dos protocolos que ofrecen un servicio de nivel de
transporte:
UDP: no orientado a conexin y no fiable
TCP: orientado a conexin y fiable

GSyC - 2015

El Nivel de Transporte

Introduccin

Puertos

En una mquina multiproceso, el nivel de transporte debe


preocuparse de saber a qu proceso va destinado una unidad
de datos de UDP o TCP que acaba de llegar por la red. La
direccin IP no es suficiente. Por ello, los procesos utilizan
direcciones de nivel de transporte, denominadas puertos.
Cada puerto del Nivel de Transporte proporciona a una
aplicacin un punto de acceso a la red de comunicaciones, con
lo que sta puede dialogar con otra aplicacin situada en un
puerto de una mquina remota.

GSyC - 2015

El Nivel de Transporte

Puertos

Contenidos

Introduccin

Puertos

NAT
Trfico saliente
Trfico entrante que responde al saliente
Trfico saliente: mismo protocolo y puerto origen hacia el
mismo servidor
Trfico entrante nuevo

Referencias

GSyC - 2015

El Nivel de Transporte

Puertos

Puertos
El Nivel de Transporte TCP/IP:
multiplexa las unidades de datos que envan las aplicaciones a travs de los
puertos, encapsulndolas en unidades de datos de UDP o TCP
demultiplexa las unidades de datos de UDP y TCP, pasando los datos a las
aplicaciones.

Los puertos se identifican por un nmero de 16 bits. Los puertos UDP y TCP se
manejan por separado:
el puerto 6001 UDP y el puerto 6001 TCP son puertos distintos.
p1$ p2$ p3$ p4$ p5$
6003$
6001$ 6002$ 6004$ 6001$
Puertos$
TCP$
UDP$
MULTIPLEXACIN'
IP$
Dir.$IP$
11.0.0.100'

p1$ p2$ p3$ p4$ p5$


6003$
6002$ 6004$ 6001$
6001$
Puertos$
TCP$
UDP$
DEMULTIPLEXACIN'
IP$
Dir.$IP$
11.0.0.100'
ETHERNET$

ETHERNET$

eth0$

eth0$

LAN'

LAN'
GSyC - 2015

El Nivel de Transporte

Puertos

Puertos en la cabecera del nivel de transporte


Cuando se enva una unidad de datos del nivel de transporte se
especifica el puerto de destino y el puerto desde el que se
enva.
Cabecera'de'transporte'

Transporte:+TCP/UDP+

Puerto+ Puerto+
origen+ des8no+

Cabecera''IP' Cabecera'de'transporte'

IP+
Cabecera''Ethernet' Cabecera''IP' Cabecera'de'transporte'

Ethernet+

GSyC - 2015

El Nivel de Transporte

Puertos

Ejemplo de comunicaciones en el nivel de transporte


pA$ pB$
10000$

UDP$

TCP$

IP$

eth0$

ETHERNET$

ETHERNET$

eth0'

22222$

UDP$

12.0.0.1'

6004$

8003$

TCP$

UDP$
IP$

12.0.0.100'
ETHERNET$

eth1'

12.0.0.200'
ETHERNET$

eth0'

eth0'
LAN'

LAN'
Comunicaciones'
desde'el'ordenador'A'

7002$

IP$

IP$

11.0.0.1'

pZ$ pY$

pC$

TCP$

ROUTER$

Dir.$IP$

11.0.0.100'

ordenador$C'

ordenador$B'

ordenador$A'
p1$ p2$ p3$ p4$ p5$
6004$
6001$ 6002$6003$
6001$Puertos$

Protocolo'

Direccin''IP'
origen'

Puerto'origen'

Direccin'IP'desCno'

Puerto'
desCno'

TCP$

11.0.0.100$

6001$

12.0.0.100$

10000$

TCP$

11.0.0.100$

6002$

12.0.0.100$

7002$

UDP$

11.0.0.100$

6003$

12.0.0.200$

8003$

UDP$

11.0.0.100$

6004$

12.0.0.200$

6004$

UDP$

11.0.0.100$

6001$

12.0.0.100$

22222$

Una comunicacin de nivel de transporte queda completamente identificada con los


siguientes parmetros: protocolo, direccin IP origen, puerto origen, direccin IP
destino y puerto destino.
GSyC - 2015

El Nivel de Transporte

10

Puertos

Puertos reservados
Los puertos menores que 1024 (puertos privilegiados) estn
reservados y asignados universalmente a aplicaciones de red
conocidas.
En una mquina Unix esta asignacin est en el fichero
/etc/services:
echo
echo
discard
discard
daytime
daytime
netstat
ftp-data
ftp
ssh
ssh
telnet
smtp
www
www

GSyC - 2015

7/tcp
7/udp
9/tcp
9/udp
13/tcp
13/udp
15/tcp
20/tcp
21/tcp
22/tcp
22/udp
23/tcp
25/tcp
80/tcp
80/udp

sink null
sink null

# default ftp data port


# SSH Remote Login Protocol

mail
http

# WorldWideWeb HTTP
# HyperText Transfer Protocol

El Nivel de Transporte

11

Puertos

Modelo de aplicaciones cliente/servidor

Al arrancar una aplicacin que funciona como servidor, sta se


quedar esperando a recibir mensajes de un determinado
protocolo de nivel de transporte y en un determinado puerto.
Al arrancar una aplicacin que funciona como cliente, sta
tomar la iniciativa de enviar el primer mensaje a la aplicacin
servidor utilizando el protocolo de nivel de transporte que est
usando la aplicacin servidor y enviando los mensajes a la
direccin IP y puerto en los que est escuchando la aplicacin
servidor.
Es necesario arrancar primero la aplicacin que funciona como
servidor y posteriormente arrancar la aplicacin que funciona
como cliente.

GSyC - 2015

El Nivel de Transporte

12

NAT

Contenidos

Introduccin

Puertos

NAT
Trfico saliente
Trfico entrante que responde al saliente
Trfico saliente: mismo protocolo y puerto origen hacia el
mismo servidor
Trfico entrante nuevo

Referencias

GSyC - 2015

El Nivel de Transporte

13

NAT

NAT (Network Address Translation)


Se denomina NAT a la reescritura por parte de un router de
algunos campos de la cabecera de los paquetes que encamina:
cambia direccin IP origen y puerto origen en el trfico saliente
cambia direccin IP destino y puerto destino en el trfico
entrante

Esta tcnica se utiliza con el propsito principal de paliar la


escasez de direcciones IP.
Gracias al NAT, una organizacin puede usar direcciones
privadas internamente, y tener una sola direccin IP global
(pblica) en el router que le da acceso a Internet.
Direcciones IP para redes privadas:
De 10.0.0.0 a 10.255.255.255: 1 red de clase A
De 172.16.0.0 a 172.31.255.255: 16 redes de clase B
De 192.168.0.0 a 192.168.255.255: 256 redes de clase
clase C
GSyC - 2015

El Nivel de Transporte

14

NAT

Direccionamiento

router& 83.77.100.1$

Internet&

10.0.0.1$ NAT&

10.0.0.11$ 10.0.0.12$

RED$PRIVADA$

212.128.4.4$

10.0.0.13$
A.B.C.D$$$Direcciones$privadas$
A.B.C.D$$$Direcciones$pblicas$

Todos los ordenadores de la red interna utilizan direcciones


privadas, que no son vlidas en Internet.
El router que da acceso a Internet tiene una direccin
pblica, vlida en Internet.
En algunos casos, el router podra disponer de ms de una IP
pblica. Siempre que haya disponibles menos IPs pblicas que
mquinas en la red interna habr que utilizar NAT.
GSyC - 2015

El Nivel de Transporte

15

NAT

Trfico saliente

Contenidos

Introduccin

Puertos

NAT
Trfico saliente
Trfico entrante que responde al saliente
Trfico saliente: mismo protocolo y puerto origen hacia el
mismo servidor
Trfico entrante nuevo

Referencias

GSyC - 2015

El Nivel de Transporte

16

NAT

Trfico saliente

Trfico saliente, mecanismo bsico (1/3)

Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


10.0.0.11&212.128.4.4&TCP& 1050& 200&

DATOS&

router& 83.77.100.1$

Internet&

10.0.0.1$ NAT&

1&
10.0.0.11$ 10.0.0.12$

212.128.4.4$

10.0.0.13$

RED$PRIVADA$

La mquina pc1 enva un datagrama IP dirigido a pc100


pc1 usa como IP origen su direccin IP privada, que no es
vlida en Internet (pues los routers de Internet no tienen rutas
hacia esas direcciones).
GSyC - 2015

El Nivel de Transporte

17

NAT

Trfico saliente

Trfico saliente, mecanismo bsico (2/3)


Puerto& Puerto&

IP$origen$ IP&des2no& Prot& origen& des2no&


83.77.100.1$212.128.4.4&TCP& 1050& 200&

DATOS&

Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


10.0.0.11&212.128.4.4&TCP& 1050& 200&

DATOS&

2&

router& 83.77.100.1$
10.0.0.1$ NAT&

Internet&

1&
10.0.0.11$ 10.0.0.12$

212.128.4.4$

10.0.0.13$

RED$PRIVADA$

El router NAT cambia la IP de origen sustituyendo la IP


privada de la mquina que cre el datagrama (10.0.0.11) por
la IP pblica del router (83.77.100.1) .

GSyC - 2015

El Nivel de Transporte

18

NAT

Trfico saliente

Trfico saliente, mecanismo bsico (3/3)


IP$origen$ IP&des2no& Prot&

Puerto& Puerto&
origen& des2no&

83.77.100.1$212.128.4.4&TCP& 1050& 200&

DATOS&

Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


10.0.0.11&212.128.4.4&TCP& 1050& 200&

DATOS&

2&

router& 83.77.100.1$
10.0.0.1$ NAT&

Internet&

1&
10.0.0.11$ 10.0.0.12$

10.0.0.13$

3&
IP$origen$ IP&des2no& Prot&

212.128.4.4$

Puerto& Puerto&
origen& des2no&

83.77.100.1$212.128.4.4&TCP& 1050& 200&

DATOS&

RED$PRIVADA$

La mquina que recibe el datagrama cree que el origen del


mismo es el propio router NAT.

GSyC - 2015

El Nivel de Transporte

19

NAT

Trfico saliente

Trfico saliente: tabla NAT


IP$origen$ IP&des2no& Prot&

Puerto& Puerto&
origen& des2no&

83.77.100.1$212.128.4.4&TCP& 1050& 200&


IP&origen& IP&des2no&

Puerto& Puerto&
Prot& origen& des2no&

10.0.0.11&212.128.4.4&TCP& 1050& 200&

DATOS&

DATOS&

2&

Internet&

router& 83.77.100.1$
10.0.0.1$ NAT&

1&

RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&

IP&privada&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

3&
IP$origen$ IP&des2no& Prot&

212.128.4.4$

Puerto& Puerto&
origen& des2no&

83.77.100.1$212.128.4.4&TCP& 1050& 200&

DATOS&

RED$PRIVADA$

El router NAT mantiene una tabla con los cambios que hace en el trfico
saliente, para ms tarde poder hacer los cambios al revs sobre el trfico
entrante de respuesta.
La tabla contiene informacin de los campos origen del paquete recibido de la
red privada (protocolo=tcp, IP=10.0.0.11, puerto=1050) y los asocia a
los campos de origen del paquete enviado a Internet por el router NAT
(IP=83.77.100.1, puerto=1050).
GSyC - 2015

El Nivel de Transporte

20

NAT

Trfico entrante que responde al saliente

Contenidos

Introduccin

Puertos

NAT
Trfico saliente
Trfico entrante que responde al saliente
Trfico saliente: mismo protocolo y puerto origen hacia el
mismo servidor
Trfico entrante nuevo

Referencias

GSyC - 2015

El Nivel de Transporte

21

NAT

Trfico entrante que responde al saliente

Trfico entrante que responde al saliente (1/3)

router& 83.77.100.1$

Internet&

10.0.0.1$ NAT&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

1&
IP&origen& IP&des2no& Prot&

212.128.4.4$

Puerto& Puerto&
origen& des2no&

212.128.4.4&83.77.100.1&TCP& 200& 1050&

DATOS&

RED$PRIVADA$

pc100 responde al datagrama recibido, con lo que usa como IP destino la


IP pblica del router NAT.

GSyC - 2015

El Nivel de Transporte

22

NAT

Trfico entrante que responde al saliente

Trfico entrante que responde al saliente (2/3)


Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


212.128.4.4&83.77.100.1&TCP& 200& 1050&

DATOS&

2&

Internet&

router& 83.77.100.1$
10.0.0.1$ NAT&
RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&

IP&privada&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

1&

212.128.4.4$

Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


212.128.4.4&83.77.100.1&TCP& 200& 1050&

DATOS&

RED$PRIVADA$

El router NAT al recibir el datagrama busca en su tabla NAT una entrada


en la que encajen los siguientes valores:

protocolo
direccin IP destino y puerto destino (la direccin IP pblica y
puerto del router NAT)
direccin IP origen y puerto origen (direccin IP y puerto
remotos)
GSyC - 2015

El Nivel de Transporte

23

NAT

Trfico entrante que responde al saliente

Trfico entrante que responde al saliente (3/3)


IP&origen& IP&des2no& Prot&

Puerto& Puerto&
origen& des2no&

212.128.4.4&83.77.100.1&TCP& 200& 1050&


IP&origen& IP$desGno$

Puerto& Puerto&
Prot& origen& des2no&

212.128.4.4& 10.0.0.11$ TCP& 200& 1050&

DATOS&

DATOS&

2&

Internet&

router& 83.77.100.1$
10.0.0.1$ NAT&

3&

RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&

IP&privada&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

1&
IP&origen& IP&des2no& Prot&

212.128.4.4$

Puerto& Puerto&
origen& des2no&

212.128.4.4&83.77.100.1&TCP& 200& 1050&

DATOS&

RED$PRIVADA$

El router NAT reenva a la red privada el datagrama cambiando los


campos de destino que ha recibido (direccin IP y puerto del router NAT
IP=83.77.100.1, puerto=1050) por los que aparecen en los campos de
Red Privada de la entrada seleccionada en la tabla NAT
(IP=10.0.0.11, puerto=1050).

GSyC - 2015

El Nivel de Transporte

24

T. saliente: mismo protocolo y puerto origen mismo


NAT servidor

Contenidos

Introduccin

Puertos

NAT
Trfico saliente
Trfico entrante que responde al saliente
Trfico saliente: mismo protocolo y puerto origen hacia el
mismo servidor
Trfico entrante nuevo

Referencias

GSyC - 2015

El Nivel de Transporte

25

T. saliente: mismo protocolo y puerto origen mismo


NAT servidor

Trfico saliente: mismo protocolo y puerto origen hacia el


mismo servidor (1/3)
Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


10.0.0.12&212.128.4.4&TCP& 1050& 200&

DATOS&

router& 83.77.100.1$

Internet&

10.0.0.1$ NAT&

10.0.0.11$ 10.0.0.12$

212.128.4.4$

10.0.0.13$

1&
RED$PRIVADA$

Supongamos que otra mquina de la red privada usa el mismo protocolo


y el mismo puerto origen (en este caso protocolo=tcp, puerto=1050)
para comunicarse con el mismo servidor (212.128.4.4 en el puerto 200)

GSyC - 2015

El Nivel de Transporte

26

T. saliente: mismo protocolo y puerto origen mismo


NAT servidor

Trfico saliente: mismo protocolo y puerto origen hacia el


mismo servidor (2/3)
Puerto$ Puerto&

IP$origen$ IP&des2no& Prot& origen$ des2no&


83.77.100.1$212.128.4.4&TCP& 1051$ 200&

DATOS&

Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


10.0.0.12&212.128.4.4&TCP& 1050& 200&

DATOS&

2&

Internet&

router& 83.77.100.1$
10.0.0.1$ NAT&
RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&
10.0.0.12& 1050& 83.77.100.1& 1051& 212.128.4.4& 200&
TCP&

IP&privada&

10.0.0.11$ 10.0.0.12$

212.128.4.4$

10.0.0.13$

1&
RED$PRIVADA$

Para poder distinguir el trfico de respuesta dirigido a pc2 del dirigido a


pc1, el router NAT elegir un puerto origen pblico distinto al puerto
origen privado
Ahora cambiar adems de la direccin IP origen, el puerto origen del
datagrama por el nuevo puerto elegido (IP=83.77.100.1, puerto=1051)
GSyC - 2015

El Nivel de Transporte

27

T. saliente: mismo protocolo y puerto origen mismo


NAT servidor

Trfico saliente: mismo protocolo y puerto origen hacia el


mismo servidor (3/3)
Puerto$ Puerto&

IP$origen$ IP&des2no& Prot& origen$ des2no&


83.77.100.1$212.128.4.4&TCP& 1051$ 200&

DATOS&

Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


10.0.0.12&212.128.4.4&TCP& 1050& 200&

DATOS&

2&

Internet&

router& 83.77.100.1$
10.0.0.1$ NAT&
RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&
10.0.0.12& 1050& 83.77.100.1& 1051& 212.128.4.4& 200&
TCP&

IP&privada&

10.0.0.11$ 10.0.0.12$

1&

10.0.0.13$

3&

212.128.4.4$

Puerto$ Puerto&

IP$origen$ IP&des2no& Prot& origen$ des2no&


83.77.100.1$212.128.4.4&TCP& 1051$ 200&

DATOS&

RED$PRIVADA$

pc100 no puede distinguir que el trfico en realidad lo han generado dos


mquinas diferentes (pc1 y pc2), simplemente ve puertos origen
diferentes.

GSyC - 2015

El Nivel de Transporte

28

T. saliente: mismo protocolo y puerto origen mismo


NAT servidor

Trfico entrante que responde a pc2 (1/3)

router& 83.77.100.1$

Internet&

10.0.0.1$ NAT&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

1&
IP&origen& IP&des2no& Prot&

212.128.4.4$

Puerto& Puerto&
origen& des2no&

212.128.4.4&83.77.100.1&TCP& 200& 1051&

DATOS&

RED$PRIVADA$

pc100 responde al datagrama recibido (originalmente enviado por pc2),


con lo que usa como IP destino la IP pblica del router NAT, y como
puerto destino (83.77.100.1) el que vena como origen (1051).

GSyC - 2015

El Nivel de Transporte

29

T. saliente: mismo protocolo y puerto origen mismo


NAT servidor

Trfico entrante que responde a pc2 (2/3)


Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


212.128.4.4&83.77.100.1&TCP& 200& 1051&

DATOS&

2&

Internet&

router& 83.77.100.1$
10.0.0.1$ NAT&
RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&
10.0.0.12& 1050& 83.77.100.1& 1051& 212.128.4.4& 200&
TCP&

IP&privada&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

1&

212.128.4.4$

Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


212.128.4.4&83.77.100.1&TCP& 200& 1051&

DATOS&

RED$PRIVADA$

El router NAT al recibir el datagrama busca en su tabla NAT una entrada


en la que encajen los siguientes valores:

protocolo
direccin IP destino y puerto destino (la direccin IP pblica y
puerto del router NAT)
direccin IP origen y puerto origen (direccin IP y puerto
remotos)
GSyC - 2015

El Nivel de Transporte

30

T. saliente: mismo protocolo y puerto origen mismo


NAT servidor

Trfico entrante que responde a pc2 (3/3)


IP&origen& IP&des2no& Prot&

Puerto& Puerto&
origen& des2no&

212.128.4.4&83.77.100.1&TCP& 200& 1051&


IP&origen& IP$desGno$

Puerto& Puerto$
Prot& origen& desGno$

212.128.4.4& 10.0.0.12$ TCP& 200& 1050$

DATOS&

DATOS&

2&

Internet&

router& 83.77.100.1$
10.0.0.1$ NAT&
RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&
10.0.0.12& 1050& 83.77.100.1& 1051& 212.128.4.4& 200&
TCP&

IP&privada&

10.0.0.11$ 10.0.0.12$

3&

10.0.0.13$

1&
IP&origen& IP&des2no& Prot&

212.128.4.4$

Puerto& Puerto&
origen& des2no&

212.128.4.4&83.77.100.1&TCP& 200& 1051&

DATOS&

RED$PRIVADA$

El router NAT reenva a la red privada el datagrama cambiando los


campos de destino que ha recibido (IP=83.77.100.1, puerto=1051)
por los que aparecen en los campos de Red Privada de la entrada
seleccionada en la tabla NAT (IP=10.0.0.12, puerto=1050).

GSyC - 2015

El Nivel de Transporte

31

NAT

Trfico entrante nuevo

Contenidos

Introduccin

Puertos

NAT
Trfico saliente
Trfico entrante que responde al saliente
Trfico saliente: mismo protocolo y puerto origen hacia el
mismo servidor
Trfico entrante nuevo

Referencias

GSyC - 2015

El Nivel de Transporte

32

NAT

Trfico entrante nuevo

El problema del trfico entrante nuevo (1/2)

Internet&

router& 83.77.100.1$

10.0.0.1$ NAT&

RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&
10.0.0.12& 1050& 83.77.100.1& 1051& 212.128.4.4& 200&
TCP&

IP&privada&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

1&
IP&origen& IP&des2no& Prot&

212.128.4.4$

Puerto& Puerto&
origen& des2no&

212.128.4.4&83.77.100.1&TCP& 200& 3001&

DATOS&

RED$PRIVADA$

Supongamos que pc100 enva ahora un trfico que va dirigido a una


mquina de la red privada que an no ha enviado ningn trfico saliente.

GSyC - 2015

El Nivel de Transporte

33

NAT

Trfico entrante nuevo

El problema del trfico entrante nuevo (2/2)


Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


212.128.4.4&83.77.100.1&TCP& 200& 3001&

DATOS&

2&

Internet&

router& 83.77.100.1$
10.0.0.1$ NAT&
RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&
10.0.0.12& 1050& 83.77.100.1& 1051& 212.128.4.4& 200&
TCP&

IP&privada&

?$

10.0.0.11$ 10.0.0.12$

10.0.0.13$

1&

212.128.4.4$

Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


212.128.4.4&83.77.100.1&TCP& 200& 3001&

DATOS&

RED$PRIVADA$

Cuando llega al router NAT el datagrama, el router NAT no tiene forma


de saber a qu mquina interna redirigirlo, pues no encuentra en su tabla
NAT ninguna entrada que encaje con ese datagrama.
En este caso la configuracin por defecto de un router NAT es descartar
el datagrama recibido

GSyC - 2015

El Nivel de Transporte

34

NAT

Trfico entrante nuevo

Trfico entrante nuevo: abrir puertos (1/4)

router& 83.77.100.1$

Internet&

10.0.0.1$ NAT&

RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP& Entrada&autom2ca&
10.0.0.12& 1050& 83.77.100.1& 1051& 212.128.4.4& 200&
TCP& Entrada&autom2ca&
10.0.0.11& 4023& 83.77.100.1& 3001&
*
*
TCP& Entrada&manual&

IP&privada&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

212.128.4.4$

RED$PRIVADA$

Solucin: En la configuracin del router NAT se aade manualmente (y a


priori) una entrada en su tabla que indique, en funcin del puerto de
destino (en este caso puerto=3001) a qu IP y puerto de la red internos
se redirigir el trfico (en este caso IP=10.0.0.11, puerto=4023),
independiente de su origen.
Esta solucin se conoce informalmente como abrir puertos en el router
NAT.
GSyC - 2015

El Nivel de Transporte

35

NAT

Trfico entrante nuevo

Trfico entrante nuevo: abrir puertos (2/4)

Internet&

router& 83.77.100.1$

10.0.0.1$ NAT&

RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&
10.0.0.12& 1050& 83.77.100.1& 1051& 212.128.4.4& 200&
TCP&
10.0.0.11& 4023& 83.77.100.1& 3001&
*
*
TCP&

IP&privada&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

1&
IP&origen& IP&des2no& Prot&

212.128.4.4$

Puerto& Puerto&
origen& des2no&

212.128.4.4&83.77.100.1&TCP& 200& 3001&

DATOS&

RED$PRIVADA$

pc100 debe conocer a priori:

el protocolo para comunicarse con pc1


la direccin IP pblica del router NAT y el puerto pblico del
router NAT que estarn asociados con la direccin IP privada
de pc1 y el puerto privado de pc1.

GSyC - 2015

El Nivel de Transporte

36

NAT

Trfico entrante nuevo

Trfico entrante nuevo: abrir puertos (3/4)


Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


212.128.4.4&83.77.100.1&TCP& 200& 3001&

DATOS&

2&

Internet&

router& 83.77.100.1$
10.0.0.1$ NAT&
RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&
10.0.0.12& 1050& 83.77.100.1& 1051& 212.128.4.4& 200&
TCP&
10.0.0.11& 4023& 83.77.100.1& 3001&
*
*
TCP&

IP&privada&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

1&

212.128.4.4$

Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


212.128.4.4&83.77.100.1&TCP& 200& 3001&

DATOS&

RED$PRIVADA$

Ahora el router NAT ya tiene una entrada que le encaja con el trfico
recibido.

GSyC - 2015

El Nivel de Transporte

37

NAT

Trfico entrante nuevo

Trfico entrante nuevo: abrir puertos (4/4)


Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


212.128.4.4&83.77.100.1&TCP& 200& 3001&
IP&origen& IP$desGno$

212.128.4.4& 10.0.0.11$ TCP& 200& 4023$

3&

DATOS&

2&

Puerto& Puerto$
Prot& origen& desGno$

Internet&

DATOS&

router& 83.77.100.1$
10.0.0.1$ NAT&

RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
10.0.0.11& 1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP&
10.0.0.12& 1050& 83.77.100.1& 1051& 212.128.4.4& 200&
TCP&
10.0.0.11& 4023& 83.77.100.1& 3001&
*
*
TCP&

IP&privada&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

1&

212.128.4.4$

Puerto& Puerto&

IP&origen& IP&des2no& Prot& origen& des2no&


212.128.4.4&83.77.100.1&TCP& 200& 3001&

DATOS&

RED$PRIVADA$

El router cambia en el datagrama los campos de destino que ha recibido


(IP=83.77.100.1, puerto=3001) por los que aparecen en los campos
de Red Privada de la entrada seleccionada en la tabla NAT
(IP=10.0.0.11, puerto=4023).

GSyC - 2015

El Nivel de Transporte

38

NAT

Trfico entrante nuevo

Trfico entrante nuevo: abrir varios puertos

router& 83.77.100.1$

Internet&

10.0.0.1$ NAT&

RED$PRIVADA$
ROUTER$NAT$
REMOTO$
Puerto&
Puerto&
Puerto& Protocolo&
IP&pblica&
IP&remota&
privado&
pblico&
remoto&
1050& 83.77.100.1& 1050& 212.128.4.4& 200&
TCP& Entrada&autom2ca&
1050& 83.77.100.1& 1051& 212.128.4.4& 200&
TCP& Entrada&autom2ca&
4023& 83.77.100.1& 3001&
*
*
TCP& Entrada&manual&
4023& 83.77.100.1& 4001&
*
*
TCP& Entrada&manual&

IP&privada&
10.0.0.11&
10.0.0.12&
10.0.0.11&
10.0.0.12&

10.0.0.11$ 10.0.0.12$

10.0.0.13$

212.128.4.4$

RED$PRIVADA$

Si en la red privada hubiera otro servidor que utilizara el mismo puerto,


sera necesario al abrir el nuevo puerto usar un puerto pblico diferente
para el segundo servidor.
Ntese que desde los clientes de Internet debe saberse a priori qu puertos
pblicos se estn usando para los servidores que haya en la red privada.

GSyC - 2015

El Nivel de Transporte

39

Referencias

Contenidos

Introduccin

Puertos

NAT
Trfico saliente
Trfico entrante que responde al saliente
Trfico saliente: mismo protocolo y puerto origen hacia el
mismo servidor
Trfico entrante nuevo

Referencias

GSyC - 2015

El Nivel de Transporte

40

Referencias

Referencias

C. M. Kozierok, The TCP/IP guide: A Comprehensive


Illustrated Internet Protocols Reference: Cap. 28.
Disponible on-line:
http://www.tcpipguide.com/free/t_IPNetworkAddressTranslationNATProtocol.htm

J. F. Kurose, K. W. Ross, Computer Networking: A


Top-Down Approach (4th ed): Cap. 3 (3.1), Cap. 4 (4.4).

GSyC - 2015

El Nivel de Transporte

41

Anda mungkin juga menyukai