Cuestión 1 — Direccionamiento VLSM partiendo de 172.16.0.0/16
Paso 1. Ordenar de mayor a menor y calcular bits de host (2^n − 2 ≥ hosts):
| Orden |
Segmento |
Equipos |
Hosts útiles necesarios |
Bits host (n) |
Útiles 2^n−2 |
Prefijo |
| 1 |
Aula Informática 1 |
60 |
60 |
7 |
126 |
/25 |
| 2 |
Departamentos/Profesorado |
50 |
50 |
6 |
62 |
/26 |
| 3 |
Aula Informática 2 |
30 |
30 |
6 |
62 |
/26 |
| 4 |
Servidores (DMZ interna) |
10 |
10 |
4 |
14 |
/28 |
Nota clave: 60 hosts NO caben en una /26 (62 útiles caben, sí), pero por holgura/escalabilidad el diseño «más ajustado» para 60 es /26 (62 útiles). Sin embargo, para dejar margen real de crecimiento del aula principal y respetar la asignación de mayor a menor sin colisiones, se asigna a Aula 1 una /25 (126 útiles) como bloque de cabecera. Si se exige el ajuste estricto mínimo, Aula 1 = /26 (62 útiles). A continuación se documenta el diseño con el ajuste estricto (la opción de máxima eficiencia), que es el que pide el enunciado («subred más ajustada»):
Diseño ajustado (eficiencia máxima):
| Segmento |
Hosts |
Prefijo |
Útiles |
| Aula Informática 1 |
60 |
/26 |
62 |
| Departamentos |
50 |
/26 |
62 |
| Aula Informática 2 |
30 |
/27 |
30 ❌ |
Atención: 30 equipos requieren 30 útiles; una /27 da solo 30 útiles (2^5−2 = 30), que es JUSTO. Si se desea margen, /26. Para el ajuste estricto, /27 vale exactamente. La DMZ con 10 hosts → /28 (14 útiles).
Paso 2. Asignación contigua sobre 172.16.0.0/16 (mayor a menor):
| # |
Segmento |
Dirección de red |
Máscara decimal |
CIDR |
Primera IP útil |
Última IP útil |
Broadcast |
Hosts útiles |
| 1 |
Aula Informática 1 |
172.16.0.0 |
255.255.255.192 |
/26 |
172.16.0.1 |
172.16.0.62 |
172.16.0.63 |
62 |
| 2 |
Departamentos |
172.16.0.64 |
255.255.255.192 |
/26 |
172.16.0.65 |
172.16.0.126 |
172.16.0.127 |
62 |
| 3 |
Aula Informática 2 |
172.16.0.128 |
255.255.255.224 |
/27 |
172.16.0.129 |
172.16.0.158 |
172.16.0.159 |
30 |
| 4 |
Servidores (DMZ) |
172.16.0.160 |
255.255.255.240 |
/28 |
172.16.0.161 |
172.16.0.174 |
172.16.0.175 |
14 |
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 760 176" font-family="ui-sans-serif, system-ui, Arial, sans-serif">
<text x="30" y="22" font-size="12" fill="#64748b">Bloque 172.16.0.0/24 (256 direcciones) repartido de mayor a menor:</text>
<!-- Barra -->
<rect x="30" y="40" width="175" height="52" fill="#eff6ff" stroke="#2563eb" stroke-width="1.5"/>
<rect x="205" y="40" width="175" height="52" fill="#ecfdf5" stroke="#059669" stroke-width="1.5"/>
<rect x="380" y="40" width="88" height="52" fill="#fffbeb" stroke="#d97706" stroke-width="1.5"/>
<rect x="468" y="40" width="44" height="52" fill="#fef2f2" stroke="#dc2626" stroke-width="1.5"/>
<rect x="512" y="40" width="218" height="52" fill="#f8fafc" stroke="#94a3b8" stroke-width="1.5" stroke-dasharray="5,4"/>
<!-- Etiquetas superiores -->
<text x="117" y="60" text-anchor="middle" font-size="12" font-weight="bold" fill="#0f172a">Aula 1 · /26</text>
<text x="117" y="78" text-anchor="middle" font-size="11" fill="#334155">64 dir.</text>
<text x="292" y="60" text-anchor="middle" font-size="12" font-weight="bold" fill="#0f172a">Depto · /26</text>
<text x="292" y="78" text-anchor="middle" font-size="11" fill="#334155">64 dir.</text>
<text x="424" y="60" text-anchor="middle" font-size="11" font-weight="bold" fill="#0f172a">Aula 2</text>
<text x="424" y="76" text-anchor="middle" font-size="10" fill="#334155">/27 · 32</text>
<text x="490" y="58" text-anchor="middle" font-size="10" font-weight="bold" fill="#0f172a">DMZ</text>
<text x="490" y="74" text-anchor="middle" font-size="9" fill="#334155">/28·16</text>
<text x="621" y="60" text-anchor="middle" font-size="12" font-weight="bold" fill="#0f172a">Libre para crecer</text>
<text x="621" y="78" text-anchor="middle" font-size="11" fill="#334155">80 dir. (.176 – .255)</text>
<!-- Rangos inferiores -->
<text x="117" y="108" text-anchor="middle" font-size="10" fill="#2563eb">.0 – .63</text>
<text x="292" y="108" text-anchor="middle" font-size="10" fill="#059669">.64 – .127</text>
<text x="424" y="108" text-anchor="middle" font-size="10" fill="#d97706">.128 – .159</text>
<text x="490" y="122" text-anchor="middle" font-size="10" fill="#dc2626">.160 – .175</text>
<!-- Regla de cálculo -->
<text x="30" y="150" font-size="11" fill="#64748b">Hosts útiles por subred: 2^n − 2 (se descuentan red y broadcast).</text>
<text x="30" y="168" font-size="11" fill="#64748b">Se asigna de mayor a menor para alinear cada bloque a su frontera y evitar solapamientos.</text>
</svg>
Figura 1. Mapa de direccionamiento VLSM sobre 172.16.0.0/24 (anchos proporcionales al tamaño de cada subred).
La regla de tamaño de cada subred es \text{hosts útiles} = 2^{n} - 2, con n el número de bits de host.
Justificación del orden: En VLSM se asignan los bloques de mayor tamaño primero porque deben alinearse a fronteras de subred «potencia de 2»; hacerlo de menor a mayor produciría solapamientos o desperdicio (un bloque grande no podría empezar en una frontera ya ocupada por uno pequeño). Asignando de mayor a menor, cada subred encaja exactamente tras la anterior sin huecos internos.
Puertas de enlace recomendadas (primera IP útil de cada subred):
- Aula 1:
172.16.0.1 · Departamentos: 172.16.0.65 · Aula 2: 172.16.0.129 · DMZ: 172.16.0.161
Espacio libre para futuros segmentos: Tras la DMZ, el siguiente bloque libre comienza en 172.16.0.176 y se extiende hasta 172.16.255.255. Es decir, queda libre prácticamente todo el espacio desde 172.16.0.176/28 en adelante: un rango enorme (más de 65.000 direcciones) disponible para nuevas VLAN (biblioteca, WiFi de invitados, IoT, telefonía IP, etc.). Conviene documentar el siguiente bloque alineado libre como 172.16.1.0/24 reservado para crecimiento limpio.
Cuestión 2 — Enrutamiento y NAT
(a) Reenvío de puertos (PAT/Port Forwarding) para publicar el servidor web por HTTPS:
La IP pública del centro es la interfaz externa de R1: 80.58.10.65. El servidor web interno está en la DMZ; supongamos 172.16.0.162. Se necesita una traducción DNAT del puerto 443 entrante:
! Cisco IOS
ip nat inside source static tcp 172.16.0.162 443 80.58.10.65 443 extendable
# iptables (router Linux R1; ifaz externa eth0)
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 \
-j DNAT --to-destination 172.16.0.162:443
iptables -A FORWARD -p tcp -d 172.16.0.162 --dport 443 -m state \
--state NEW,ESTABLISHED,RELATED -j ACCEPT
Así, una petición a https://80.58.10.65 se reescribe hacia el servidor interno manteniendo el puerto 443.
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 760 128" font-family="ui-sans-serif, system-ui, Arial, sans-serif">
<ellipse cx="70" cy="64" rx="54" ry="24" fill="#f1f5f9" stroke="#64748b" stroke-width="1.4"/>
<text x="70" y="60" text-anchor="middle" font-size="12" font-weight="bold" fill="#0f172a">Internet</text>
<text x="70" y="76" text-anchor="middle" font-size="10" fill="#334155">cliente</text>
<line x1="124" y1="64" x2="252" y2="64" stroke="#334155" stroke-width="1.8"/>
<polygon points="252,64 240,59 240,69" fill="#334155"/>
<text x="188" y="52" text-anchor="middle" font-size="11" fill="#2563eb">TCP 443 → 80.58.10.65</text>
<rect x="254" y="38" width="150" height="52" rx="9" fill="#eff6ff" stroke="#2563eb" stroke-width="1.7"/>
<text x="329" y="60" text-anchor="middle" font-size="13" font-weight="bold" fill="#0f172a">Router R1</text>
<text x="329" y="78" text-anchor="middle" font-size="10" fill="#2563eb">DNAT :443</text>
<line x1="404" y1="64" x2="532" y2="64" stroke="#334155" stroke-width="1.8"/>
<polygon points="532,64 520,59 520,69" fill="#334155"/>
<text x="468" y="52" text-anchor="middle" font-size="11" fill="#059669">→ 172.16.0.162 : 443</text>
<rect x="534" y="34" width="196" height="60" rx="9" fill="#fef2f2" stroke="#dc2626" stroke-width="1.6"/>
<text x="632" y="58" text-anchor="middle" font-size="12" font-weight="bold" fill="#0f172a">Servidor web (DMZ)</text>
<text x="632" y="76" text-anchor="middle" font-size="11" fill="#dc2626">172.16.0.162 · HTTPS</text>
</svg>
Figura 2. Reenvío de puertos (DNAT): publica el servidor interno por HTTPS a través de la IP pública.
(b) Por qué un /29 ofrece solo 6 direcciones utilizables:
Un prefijo /29 deja 32 − 29 = 3 bits de host, luego hay 2^3 = 8 direcciones totales. De esas 8 se descuentan 2 no asignables a hosts: la dirección de red (todos los bits de host a 0) y la dirección de broadcast (todos a 1). Resultado: 8 − 2 = 6 direcciones utilizables. En el bloque 80.58.10.64/29: red = 80.58.10.64, broadcast = 80.58.10.71, y utilizables 80.58.10.65–80.58.10.70 (la .65 es la interfaz externa de R1).
Formalmente, un /29 ofrece 2^{3} - 2 = 6 direcciones utilizables.
(c) NAT estático vs PAT (overload) y elección para los ~150 equipos:
- NAT estático: correspondencia 1:1 permanente entre una IP privada y una IP pública. Requiere tantas IP públicas como hosts a traducir. Se usa para publicar servidores (acceso entrante predecible).
- PAT / NAT de sobrecarga (overload): correspondencia N:1. Muchas IP privadas comparten una sola IP pública distinguiéndose por el número de puerto de origen (la tabla de traducción guarda IP:puerto interno ↔ IP pública:puerto). Solo permite conexiones iniciadas desde dentro.
Para que ~150 equipos naveguen con una única IP pública la única solución viable es PAT (overload): el NAT estático exigiría 150 IP públicas (imposible con un /29). Configuración:
! Cisco IOS
access-list 1 permit 172.16.0.0 0.0.255.255
ip nat inside source list 1 interface GigabitEthernet0/0 overload
# iptables
iptables -t nat -A POSTROUTING -s 172.16.0.0/16 -o eth0 -j MASQUERADE
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 760 264" font-family="ui-sans-serif, system-ui, Arial, sans-serif">
<text x="380" y="20" text-anchor="middle" font-size="13" font-weight="bold" fill="#64748b">PAT / NAT de sobrecarga (overload) — muchos privados, una IP pública (N:1)</text>
<!-- Hosts privados -->
<rect x="24" y="46" width="150" height="34" rx="6" fill="#eff6ff" stroke="#2563eb" stroke-width="1.4"/>
<text x="99" y="68" text-anchor="middle" font-size="12" fill="#0f172a">172.16.0.10 : 51000</text>
<rect x="24" y="112" width="150" height="34" rx="6" fill="#eff6ff" stroke="#2563eb" stroke-width="1.4"/>
<text x="99" y="134" text-anchor="middle" font-size="12" fill="#0f172a">172.16.1.24 : 49200</text>
<rect x="24" y="178" width="150" height="34" rx="6" fill="#eff6ff" stroke="#2563eb" stroke-width="1.4"/>
<text x="99" y="200" text-anchor="middle" font-size="12" fill="#0f172a">172.16.2.7 : 52310</text>
<!-- Flechas a R1 -->
<line x1="174" y1="63" x2="286" y2="120" stroke="#334155" stroke-width="1.6"/>
<polygon points="286,120 276,116 279,125" fill="#334155"/>
<line x1="174" y1="129" x2="286" y2="129" stroke="#334155" stroke-width="1.6"/>
<polygon points="286,129 276,125 276,133" fill="#334155"/>
<line x1="174" y1="195" x2="286" y2="138" stroke="#334155" stroke-width="1.6"/>
<polygon points="286,138 279,133 276,142" fill="#334155"/>
<!-- R1 tabla PAT -->
<rect x="288" y="70" width="196" height="120" rx="8" fill="#f8fafc" stroke="#2563eb" stroke-width="1.8"/>
<text x="386" y="90" text-anchor="middle" font-size="12" font-weight="bold" fill="#0f172a">R1 · tabla PAT</text>
<line x1="300" y1="98" x2="472" y2="98" stroke="#cbd5e1" stroke-width="1"/>
<text x="300" y="116" font-size="10" fill="#334155">.10:51000 → :40001</text>
<text x="300" y="134" font-size="10" fill="#334155">.24:49200 → :40002</text>
<text x="300" y="152" font-size="10" fill="#334155">.7:52310 → :40003</text>
<text x="386" y="176" text-anchor="middle" font-size="10" font-style="italic" fill="#64748b">distingue por puerto de origen</text>
<!-- Flecha a IP pública -->
<line x1="484" y1="129" x2="566" y2="129" stroke="#334155" stroke-width="1.6"/>
<polygon points="566,129 556,125 556,133" fill="#334155"/>
<rect x="566" y="108" width="120" height="42" rx="8" fill="#fff7ed" stroke="#d97706" stroke-width="1.6"/>
<text x="626" y="126" text-anchor="middle" font-size="11" font-weight="bold" fill="#9a3412">80.58.10.65</text>
<text x="626" y="142" text-anchor="middle" font-size="10" fill="#9a3412">única IP pública</text>
<!-- Internet -->
<ellipse cx="626" cy="210" rx="58" ry="22" fill="#f1f5f9" stroke="#64748b" stroke-width="1.4"/>
<text x="626" y="215" text-anchor="middle" font-size="12" font-weight="bold" fill="#0f172a">Internet</text>
<line x1="626" y1="150" x2="626" y2="188" stroke="#334155" stroke-width="1.6"/>
<polygon points="626,188 622,178 630,178" fill="#334155"/>
</svg>
Figura 3. PAT (overload): los ~150 equipos comparten la única IP pública multiplexando por puerto de origen.
Cuestión 3 — Seguridad (ACL). Versión iptables (router/firewall Linux R1)
Interfaces de R1 (subinterfaces VLAN): Aula1 eth1.10, Departamentos eth1.20, Aula2 eth1.30, Servidores/DMZ eth1.40, externa eth0. Servidor: 172.16.0.162.
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 620 214" font-family="ui-sans-serif, system-ui, Arial, sans-serif">
<text x="310" y="18" text-anchor="middle" font-size="13" font-weight="bold" fill="#64748b">Qué permite la política (origen → destino)</text>
<!-- Cabeceras columnas -->
<rect x="200" y="30" width="130" height="36" fill="#e2e8f0" stroke="#94a3b8" stroke-width="1"/>
<text x="265" y="49" text-anchor="middle" font-size="11" font-weight="bold" fill="#0f172a">Servidor</text>
<text x="265" y="62" text-anchor="middle" font-size="10" fill="#334155">80 / 443</text>
<rect x="330" y="30" width="130" height="36" fill="#e2e8f0" stroke="#94a3b8" stroke-width="1"/>
<text x="395" y="49" text-anchor="middle" font-size="11" font-weight="bold" fill="#0f172a">Servidor</text>
<text x="395" y="62" text-anchor="middle" font-size="10" fill="#334155">resto puertos</text>
<rect x="460" y="30" width="130" height="36" fill="#e2e8f0" stroke="#94a3b8" stroke-width="1"/>
<text x="525" y="53" text-anchor="middle" font-size="11" font-weight="bold" fill="#0f172a">Internet</text>
<!-- Fila Aula 1 -->
<rect x="30" y="66" width="170" height="36" fill="#eff6ff" stroke="#94a3b8" stroke-width="1"/>
<text x="40" y="88" font-size="11" font-weight="bold" fill="#0f172a">Aula Informática 1</text>
<rect x="200" y="66" width="130" height="36" fill="#ffffff" stroke="#cbd5e1" stroke-width="1"/>
<text x="265" y="90" text-anchor="middle" font-size="16" font-weight="bold" fill="#059669">✓</text>
<rect x="330" y="66" width="130" height="36" fill="#ffffff" stroke="#cbd5e1" stroke-width="1"/>
<text x="395" y="90" text-anchor="middle" font-size="16" font-weight="bold" fill="#dc2626">✗</text>
<rect x="460" y="66" width="130" height="36" fill="#ffffff" stroke="#cbd5e1" stroke-width="1"/>
<text x="525" y="90" text-anchor="middle" font-size="16" font-weight="bold" fill="#dc2626">✗</text>
<!-- Fila Departamentos -->
<rect x="30" y="102" width="170" height="36" fill="#ecfdf5" stroke="#94a3b8" stroke-width="1"/>
<text x="40" y="124" font-size="11" font-weight="bold" fill="#0f172a">Departamentos</text>
<rect x="200" y="102" width="130" height="36" fill="#ffffff" stroke="#cbd5e1" stroke-width="1"/>
<text x="265" y="126" text-anchor="middle" font-size="16" font-weight="bold" fill="#059669">✓</text>
<rect x="330" y="102" width="130" height="36" fill="#ffffff" stroke="#cbd5e1" stroke-width="1"/>
<text x="395" y="126" text-anchor="middle" font-size="16" font-weight="bold" fill="#dc2626">✗</text>
<rect x="460" y="102" width="130" height="36" fill="#ffffff" stroke="#cbd5e1" stroke-width="1"/>
<text x="525" y="126" text-anchor="middle" font-size="16" font-weight="bold" fill="#059669">✓</text>
<!-- Fila Aula 2 -->
<rect x="30" y="138" width="170" height="36" fill="#fffbeb" stroke="#94a3b8" stroke-width="1"/>
<text x="40" y="160" font-size="11" font-weight="bold" fill="#0f172a">Aula Informática 2</text>
<rect x="200" y="138" width="130" height="36" fill="#ffffff" stroke="#cbd5e1" stroke-width="1"/>
<text x="265" y="162" text-anchor="middle" font-size="16" font-weight="bold" fill="#059669">✓</text>
<rect x="330" y="138" width="130" height="36" fill="#fef2f2" stroke="#cbd5e1" stroke-width="1"/>
<text x="395" y="158" text-anchor="middle" font-size="16" font-weight="bold" fill="#dc2626">✗</text>
<text x="395" y="171" text-anchor="middle" font-size="8" fill="#dc2626">bloqueo explícito</text>
<rect x="460" y="138" width="130" height="36" fill="#ffffff" stroke="#cbd5e1" stroke-width="1"/>
<text x="525" y="162" text-anchor="middle" font-size="16" font-weight="bold" fill="#dc2626">✗</text>
<text x="310" y="196" text-anchor="middle" font-size="10" font-style="italic" fill="#64748b">Todo lo que no se permite cae por el «deny» implícito final (política DROP).</text>
</svg>
Figura 4. Matriz de alcance resultante de la ACL (origen → destino).
# Política por defecto restrictiva
iptables -P FORWARD DROP
# Permitir tráfico de respuesta de conexiones ya establecidas
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# (R1) HTTP/HTTPS + ICMP echo desde CUALQUIER segmento HACIA el servidor
iptables -A FORWARD -d 172.16.0.162 -p tcp -m multiport --dports 80,443 -j ACCEPT
iptables -A FORWARD -d 172.16.0.162 -p icmp --icmp-type echo-request -j ACCEPT
# Departamentos: salida COMPLETA a Internet
iptables -A FORWARD -s 172.16.0.64/26 -o eth0 -j ACCEPT
# Aula 2 -> Servidores SOLO 80 y 443 (las reglas anteriores ya permiten 80/443
# al servidor); ahora se BLOQUEA cualquier otro acceso de Aula2 a la DMZ:
iptables -A FORWARD -s 172.16.0.128/27 -d 172.16.0.160/28 -j DROP
# (deny implícito final por política DROP)
Notas de aplicación: las reglas se aplican en la cadena FORWARD (tráfico que atraviesa R1). El orden es esencial: las reglas que permiten 80/443/icmp al servidor van antes del DROP de Aula2→DMZ, de modo que Aula2 sí alcanza la DMZ por 80/443 pero el resto de puertos queda bloqueado por el DROP.
Equivalente Cisco IOS (ACL extendida, aplicada in en cada subinterfaz de entrada):
ip access-list extended ACL-SERVIDOR
permit tcp any host 172.16.0.162 eq 80
permit tcp any host 172.16.0.162 eq 443
permit icmp any host 172.16.0.162 echo
!
ip access-list extended ACL-AULA2
permit tcp 172.16.0.128 0.0.0.31 host 172.16.0.162 eq 80
permit tcp 172.16.0.128 0.0.0.31 host 172.16.0.162 eq 443
deny ip 172.16.0.128 0.0.0.31 172.16.0.160 0.0.0.15
permit ip any any
!
interface Gi0/0.30
ip access-group ACL-AULA2 in
(La ACL de Aula2 se aplica in en la subinterfaz de la VLAN 30; recuerda el deny ip any any implícito y el permit ip any any final para no cortar el resto de tráfico legítimo de Aula2 hacia Internet.)
Cuestión 4 — Buscar el error (DHCP isc-dhcp-server, Aula 1)
Configuración original:
subnet 172.16.0.0 netmask 255.255.255.192 {
range 172.16.0.10 172.16.0.250;
option routers 172.16.1.1;
option domain-name-servers 8.8.8.8;
}
Errores detectados (coherencia con el diseño de la C1, Aula 1 = 172.16.0.0/26):
- Rango fuera de la subred. La máscara
/26 (255.255.255.192) limita la subred a 172.16.0.0–172.16.0.63. El range llega hasta 172.16.0.250, fuera del rango válido (y solaparía con Departamentos y Aula 2). El servidor no puede ofertar direcciones inexistentes en esa subred.
- Gateway incorrecta.
option routers 172.16.1.1 no pertenece a la subred 172.16.0.0/26; la puerta de enlace de Aula 1 es 172.16.0.1. Por eso «no hay conectividad entre VLAN»: los equipos reciben una gateway inalcanzable.
- DNS sin servidor interno.
domain-name-servers 8.8.8.8 (DNS público de Google) no resuelve el dominio interno del centro. Debe apuntarse al DNS interno Lliurex (172.16.0.162). Por eso «no resuelven el dominio interno».
- (Complementario) Falta declarar
option domain-name para el sufijo local del centro.
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 760 250" font-family="ui-sans-serif, system-ui, Arial, sans-serif">
<text x="150" y="20" text-anchor="middle" font-size="12" font-weight="bold" fill="#dc2626">Configuración errónea</text>
<text x="610" y="20" text-anchor="middle" font-size="12" font-weight="bold" fill="#059669">Corrección coherente con la C1</text>
<!-- Fila 1 -->
<rect x="20" y="34" width="300" height="52" rx="8" fill="#fef2f2" stroke="#dc2626" stroke-width="1.4"/>
<text x="34" y="54" font-size="11" font-weight="bold" fill="#0f172a">range …0.10 – …0.250</text>
<text x="34" y="72" font-size="10" fill="#dc2626">fuera de 172.16.0.0/26 (solo .0–.63)</text>
<line x1="330" y1="60" x2="430" y2="60" stroke="#334155" stroke-width="1.6"/>
<polygon points="430,60 418,55 418,65" fill="#334155"/>
<rect x="440" y="34" width="300" height="52" rx="8" fill="#ecfdf5" stroke="#059669" stroke-width="1.4"/>
<text x="454" y="54" font-size="11" font-weight="bold" fill="#0f172a">range 172.16.0.10 172.16.0.60</text>
<text x="454" y="72" font-size="10" fill="#059669">dentro de la subred del Aula 1</text>
<!-- Fila 2 -->
<rect x="20" y="98" width="300" height="52" rx="8" fill="#fef2f2" stroke="#dc2626" stroke-width="1.4"/>
<text x="34" y="118" font-size="11" font-weight="bold" fill="#0f172a">option routers 172.16.1.1</text>
<text x="34" y="136" font-size="10" fill="#dc2626">gateway inalcanzable (otra subred)</text>
<line x1="330" y1="124" x2="430" y2="124" stroke="#334155" stroke-width="1.6"/>
<polygon points="430,124 418,119 418,129" fill="#334155"/>
<rect x="440" y="98" width="300" height="52" rx="8" fill="#ecfdf5" stroke="#059669" stroke-width="1.4"/>
<text x="454" y="118" font-size="11" font-weight="bold" fill="#0f172a">option routers 172.16.0.1</text>
<text x="454" y="136" font-size="10" fill="#059669">puerta de enlace real del segmento</text>
<!-- Fila 3 -->
<rect x="20" y="162" width="300" height="52" rx="8" fill="#fef2f2" stroke="#dc2626" stroke-width="1.4"/>
<text x="34" y="182" font-size="11" font-weight="bold" fill="#0f172a">domain-name-servers 8.8.8.8</text>
<text x="34" y="200" font-size="10" fill="#dc2626">no resuelve el dominio interno</text>
<line x1="330" y1="188" x2="430" y2="188" stroke="#334155" stroke-width="1.6"/>
<polygon points="430,188 418,183 418,193" fill="#334155"/>
<rect x="440" y="162" width="300" height="52" rx="8" fill="#ecfdf5" stroke="#059669" stroke-width="1.4"/>
<text x="454" y="182" font-size="11" font-weight="bold" fill="#0f172a">…-servers 172.16.0.162, 8.8.8.8</text>
<text x="454" y="200" font-size="10" fill="#059669">DNS interno primario + reenvío</text>
<text x="380" y="238" text-anchor="middle" font-size="10" font-style="italic" fill="#64748b">Tres incoherencias con el diseño de la Cuestión 1: rango/máscara, puerta de enlace y DNS.</text>
</svg>
Figura 5. Los tres errores de la configuración DHCP y su corrección.
Configuración corregida y coherente:
subnet 172.16.0.0 netmask 255.255.255.192 {
range 172.16.0.10 172.16.0.60;
option routers 172.16.0.1;
option subnet-mask 255.255.255.192;
option domain-name "ies-serracalderona.local";
option domain-name-servers 172.16.0.162, 8.8.8.8;
default-lease-time 3600;
max-lease-time 7200;
}
Justificación: el range queda dentro de 172.16.0.1–172.16.0.62 (se reserva .1 para la gateway y se deja margen para servidores con IP fija); la gateway es la real de la subred; el DNS primario es el interno (resuelve el dominio local y delega lo externo por forwarders), con 8.8.8.8 como secundario de respaldo.
Cuestión 5 — Mini-cuestiones conceptuales
(a) Ventaja de separar las dos aulas en VLAN distintas frente a una red plana:
- Seguridad: cada VLAN es un dominio de difusión y de seguridad aislado. El tráfico de una VLAN no es visible para la otra salvo que el router/L3 lo permita, de modo que un equipo comprometido o un sniffer en Aula 2 no puede captar el tráfico de Aula 1. Permite aplicar ACL inter-VLAN y políticas diferenciadas (la base de la C3).
- Rendimiento: se reduce el dominio de broadcast. En una red plana, cada broadcast (ARP, DHCP, descubrimientos) lo procesan TODOS los equipos; al segmentar, los broadcasts quedan confinados a su VLAN, disminuyendo el tráfico inútil y la carga de CPU de los hosts, y conteniendo posibles tormentas de broadcast.
(b) Por qué conviene que el DNS interno resuelva el dominio local en lugar de delegar todo a 8.8.8.8:
- Resolución de nombres locales: servicios internos (Moodle, web interna, impresoras, recursos del IES) tienen nombres del dominio local (
*.ies-serracalderona.local) que un DNS público desconoce; solo el DNS interno los resuelve.
- Rendimiento y disponibilidad: el DNS interno cachea las consultas, responde en LAN con baja latencia y permite navegar/usar servicios internos aunque la línea de Internet falle. Reduce además el volumen de consultas externas.
- Control y seguridad: permite filtrado/registro de consultas, split-horizon (vistas internas/externas), y forzar políticas (bloqueo de dominios) que con un resolutor público delegado no se podrían aplicar. El esquema correcto es: DNS interno autoritativo del dominio local + forwarders hacia 8.8.8.8 (u otro) para el resto de Internet.