Direccionamiento IP
(2ª parte)
Daniel Morató
Departamento de Automática y Computación
Area de Ingeniería Telemática
Universidad Pública de Navarra
[email protected]
Laboratorio de Programación de Redes
http://www.tlm.unavarra.es/asignaturas/lpr
Esquemas de direccionamiento IP
• Hemos visto:
– Direccionamiento Classful
– Subnetting
• Ahora veremos:
– VLSM (Variable Length Subnet Masks)
– Supernetting
– CIDR (Classless Interdomain Routing)
• Hay que tener claro que la técnica actual empleada
es CIDR pero resultará útil entender los conceptos
uno a uno como se fueron creando
29 Oct
Direccionamiento IP (2ª parte)
1/18
1
Problemas con Subnetting
• Subnetting permite dividir un espacio de direcciones en subredes
• La restricción es que todas las subredes deben emplear la misma
máscara
• Si las subredes no son de tamaño (número de hosts) homogéneo esto
pueda dar lugar a un desaprovechamiento de direcciones
• Ejemplo:
29 Oct
Direccionamiento IP (2ª parte)
2/18
Problemas con Subnetting
• Ejemplo:
- En la red C 193.65.67.0 se crean tres subredes
- El número de hosts en cada subred se quiere que sea: 50 en la subred 1, 20 en la subred 2 y
20 en la subred 3
- Total 90 hosts. Tenemos una red C con 254 direcciones disponibles. ¿Suficiente?
- El host ID de la red C es de 8 bits
- Para tener 3 subredes el mínimo subnetwork ID es de 3 bits (22-2=2, 23-2=6)
- Para tener 50 hosts en una red hacen falta al menos 6 bits en el host ID (25-2=30, 26-2=62)
193.65.67.
Network ID
Subnetwork ID
host ID
¡Imposible!
Host ID
Subred 2
20 hosts
Subred 3
20 hosts
50 hosts
Subred 1
29 Oct
Direccionamiento IP (2ª parte)
3/18
2
Problemas con Subnetting
• ¿Dónde se han perdido las direcciones?
- Red C, 254 direcciones, no debería tener problemas con 90 hosts pero
- Al emplearse una máscara de tamaño fijo para toda la red hay que dimensionarla para la
subred más grande. Es decir, la máscara de subred debe tener al menos 6 bits para hosts
- Las subredes que no necesitan tantos bits los tendrán, desperdiciando direcciones
- Para 20 hosts vale con 5 bits, 25-2=30 IPs y se desperdician 10 direcciones
- Asignando 6 bits se desperdician 26-2-20=40 direcciones en la subred 2 y en la subred 3
193.65.67.
Network ID
Subnetwork ID host ID
¡Imposible!
Host ID
Subred 2
20 hosts
Subred 3
20 hosts
50 hosts
Subred 1
29 Oct
Direccionamiento IP (2ª parte)
4/18
Problemas con Subnetting
• ¿Dónde se han perdido las direcciones?
- Además, para hacer 3 subredes necesitamos al menos 3 bits en el subnetwork ID
- Pero 3 bits dan para 23-2=6 subredes
- Estamos empleando 3 subredes, ¡¡ desperdiciamos 3x26=192 direcciones !!
- De hecho, con la subred 0 (000 en binario) y la 7 (111) estamos desperdiciando 2x26=128
direcciones más
- Todo este desaprovechamiento hace que sea imposible el direccionamiento
193.65.67.
Network ID
Subnetwork ID host ID
¡Imposible!
Host ID
Subred 2
20 hosts
Subred 3
20 hosts
50 hosts
Subred 1
29 Oct
Direccionamiento IP (2ª parte)
5/18
3
VLSM
• ¿Cómo podrían aprovecharse mejor las direcciones de esa red?
- Supongamos por un lado la subred 1 y por otro lado las otras dos subredes que en conjunto
llamaremos ahora subred 2 (ficticia, solo para calcular el reparto en subredes)
- La subred 1 tiene 50 hosts, la subred 2 tiene 40 hosts (en 2 sub-subredes), empleamos 6
bits para host ID en la subred 1 y fijamos el subnetwork ID a 01
- A la subred 2 le asignamos las direcciones que tienen el subnetwork ID 10
10
01
193.65.67.
Network ID
Máscara 255.255.255.192
Subred 2
20 hosts
20 hosts
50 hosts
Subred 1
29 Oct
Direccionamiento IP (2ª parte)
6/18
VLSM
• ¿Cómo podrían aprovecharse mejor las direcciones de esa red?
- Ahora podemos empezar de nuevo el problema suponiendo que a la subred 2 se le asigna un
espacio de direcciones con 6 bits para el host ID
- Tiene dos (sub-)subredes con 20 hosts cada una
- Empleamos 1 bit para distinguir una (sub-)subred de otra y nos quedan 5 bits para host ID
101
10
0
01
193.65.67.
Network ID
Máscara 255.255.255.224
Máscara 255.255.255.224
Máscara 255.255.255.192
(sub-)subred 1
Subred 2
(sub-)subred 2
20 hosts
20 hosts
50 hosts
Subred 1
29 Oct
Direccionamiento IP (2ª parte)
7/18
4
VLSM
• ¿Resultado?
- Subred 1: Dirección de red 193.65.67.64 máscara 255.255.255.192
- Subred 2: Dirección de red 193.65.67.128 máscara 255.255.255.224
- Subred 3: Dirección de red 193.65.67.160 máscara 255.255.255.224
- Quedan disponibles las direcciones:
193.65.67.0 máscara 255.255.255.192
193.65.67.192 máscara 255.255.255.192
• Ahora la máscara es más importante porque puede ser diferente según la subred
• VLSM = Variable Length Subnet Masks
• Los routers deben ser capaces de almacenar en cada ruta no sola la dirección de la red
sino también la máscara
• Veremos más adelante que requiere que el protocolo de enrutamiento transporte no
solo las direcciones de las redes sino también las máscaras
Subred 2
20 hosts
Subred 3
20 hosts
50 hosts
Subred 1
29 Oct
Direccionamiento IP (2ª parte)
8/18
Supernetting
El problema
• Supongamos otra situación: Se desea un espacio
de direcciones para una red que dispone de 1000
máquinas
• Una red de clase C solo dispone de 254
direcciones: insuficiente
• Tendríamos que solicitar una red de clase B pero
• Desperdiciaríamos 216-2-1000=64534 direcciones,
¡¡ el 98% de las direcciones !!
• Ante esta situación, redes de tamaño medio
reservaban redes B sin utilizarlas a penas con lo
que el espacio de direcciones de las redes B se
agotaba
29 Oct
Direccionamiento IP (2ª parte)
9/18
5
Supernetting
• Una alternativa es asignarle varias redes C
• Una red de 1000 hosts necesitaría al menos 4 redes C y se necesitaría una
entrada en las tablas de rutas de todos los routers de Internet por cada red C
• Solución:
– Asignar redes C “consecutivas”
– Ejemplo:
200.45.64.0 11001000 00101101 01000000 00000000
200.45.65.0 11001000 00101101 01000001 00000000
200.45.66.0 11001000 00101101 01000010 00000000
200.45.67.0 11001000 00101101 01000011 00000000
11001000 00101101 01000000 00000000
11111111 11111111 11111100 00000000
Red: 200.45.64.0
Máscara: 255.255.255.252.0
• Se agrupan las redes consecutivas en un solo prefijo/máscara
• Los routers pueden almacenar una sola entrada en su tabla de rutas
siempre que sean capaces de recordar también la máscara de la red
29 Oct
Direccionamiento IP (2ª parte)
10/18
CIDR
• Classless InterDomain Routing
• Respuesta a los problemas que estaba teniendo Internet de:
– Agotamiento de direcciones
– Crecimiento de las tablas de rutas
Junta el funcionamiento de VLSM y Supernetting
•
• Las clases (A, B y C) dejan de tener significado
• Las entradas en las tablas de rutas de los routers deben tener no solo la
dirección de la red sino también la máscara
• El protocolo de enrutamiento que se emplee debe transportan las
máscaras
• Permite:
– Asignar redes más ajustadas al tamaño necesario. Se asigna un identificador de red
y una máscara del tamaño deseado (VLSM)
– Al no tener significado las clases la red puede estar en cualquier rango disponible
(no hace falta que sea dentro de una red B o agrupando redes C)
– Reducir el número de entradas en las tablas de rutas “resumiendo” varias entradas
en una (Supernetting)
29 Oct
Direccionamiento IP (2ª parte)
11/18
6
CIDR
Ejemplo de agregación de rutas
Hacia el exterior anuncia:
130.204.0.0/14
10000010 110011XX XXXXXXXX XXXXXXXX
130.204.0.0/15
10000010 1100110X XXXXXXXX XXXXXXXX
LAN
LAN
130.206.0.0/15
10000010 1100111X XXXXXXXX XXXXXXXX
29 Oct
Direccionamiento IP (2ª parte)
12/18
CIDR
Envío y reenvío de paquetes
• ¿Cómo actúan los routers/hosts?
– Tienen configurado:
• La dirección IP de cada uno de sus interfaces
• Cada interfaz tiene configurada la máscara empleada en la red a la que está conectado
• Una tabla de rutas con rutas a redes. Cada entrada identifica la red destino con su
dirección de red Y una máscara de red
• La máscara puede no ser la de la red destino final
– Si tiene un paquete IP que no es para una de sus direcciones:
• Comprueba con todas las entradas en su tabla de rutas si esa IP pertenece a la red
especificada por la ruta (teniendo en cuenta la máscara de red)
– Si no pertenece a ninguna, descarta el paquete
– Si encuentra una o más rutas válidas:
Escoge aquella con la máscara más “larga” (mayor número de 1s)
»
» Reenvía el paquete por donde indica esa ruta
– Nombre: Longest Match
29 Oct
Direccionamiento IP (2ª parte)
13/18
7
CIDR
Ejemplo
• El Router R2 tiene un paquete dirigido a la dirección 130.206.66.45
- Busca en su tabla de rutas aquellas redes destino a las que pertenece esta IP (solo
130.206.0.0/16)
- De ellas emplea la del prefijo más largo
- Fin
Tabla de rutas de R2
Red destino
130.206.0.0/16
131.57.0.0/17
131.58.0.0/17
Next-hop
IPR1,0
IPR1,0
IPR1,0
Interfaz
Ethernet 0
Ethernet 0
Ethernet 0
130.206.0.0/19
130.206.128.0/19
R2
130.206.64.0/19
130.206.192.0/19
130.206.32.0/20
IPR1,0
131.58.0.0/17
131.57.0.0/17
29 Oct
Direccionamiento IP (2ª parte)
14/18
CIDR
Ejemplo
• El Router R1 tiene un paquete dirigido a la dirección 130.206.66.45
- Busca en su tabla de rutas aquellas redes destino a las que pertenece esta IP
(130.206.0.0/16, 130.206.64.0/19 y 0.0.0.0/0)
- De ellas emplea la del prefijo más largo (130.206.64.0/19)
- Fin
Tabla de rutas de R1
Red destino
130.206.0.0/16
130.206.128.0/19
130.206.32.0/20
131.57.0.0/17
131.58.0.0/17
130.206.64.0/19
0.0.0.0/0
Next-hop
IPR3,0
-
-
-
IPR5,0
IPR5,0
IPR2,0
Interfaz
Ethernet 0
Ethernet 0
Ethernet 1
Ethernet 2
Ethernet 2
Ethernet 2
Ethernet 3
130.206.0.0/19
130.206.128.0/19
130.206.64.0/19
IPR3,0
130.206.32.0/20
130.206.192.0/19
R1
131.58.0.0/17
IPR5,0
131.57.0.0/17
29 Oct
Direccionamiento IP (2ª parte)
15/18
8
CIDR
• Ya no existe un “Subnetwork ID”
•
Por lo t
Comentarios de: Direccionamiento IP (2ª parte) (0)
No hay comentarios