You are on page 1of 15

INSTITUTO TECNOLÓGICO SUPERIOR DE LA SIERRA NEGRA DE AJALPAN

ING. SISTEMAS COMPUTACIONALES

CATEDRÁTICO: ING. MARCO ANTONIO ISIDRO ABRIL

MATERIA: SISTEMAS OPERATIVOS

ALUMNO: RIGOBERTO PEREZ GARCIA TERCER SEMESTRE AJALPAN PUEBLA, 16 DE noviembre DE 2012

DONDE SE GUARDAN LOS LOGS El sistema de logs de Linux (log = registro), es un mecanismo estándar que se encarga de recoger los mensajes generados por los programas, aplicaciones y demonios y enviarlos a un destino predefinido. En cada mensaje consta la fuente (el programa que generó el mensaje), la prioridad (nivel de importancia del mensaje), la fecha y la hora. Hay varios niveles de prioridad de los mensajes (de menos a más prioritario: debug, info, notice, warning, warn, err, error, crit, alert, emerg y panic) y varios tipos de mensajes (auth, authpriv, cron, daemon, kern, lpr, mail, Mark, news, security, syslog, user, uucp y local0-local7). Cómo funciona el sistema de logs El sistema de logs arranca con el script /etc/init.d/sysklogd, y tiene dos demonios: Syslogd: gestiona los logs del sistema. Distribuye los mensajes a archivos, tuberías, destinos remotos, terminales o usuarios, usando las indicaciones especificadas en su archivo de configuración /etc/syslog.conf, donde se indica qué se loguea y a dónde se envían estos logs. klogd: se encarga de los logs del kernel. Lo normal es que klogd envíe sus mensajes a syslogd pero no siempre es así, sobre todo en los eventos de alta prioridad, que salen directamente por pantalla. Los logs se guardan en archivos ubicados en el directorio /var/log, aunque muchos programas manejan sus propios logs y los guardan en /var/log/<programa>. Además, es posible especificar múltiples destinos para un mismo mensaje. Archivos de registro comunes (pueden variar según la distro): /var/log/message: registro de mensajes generales del sistema /var/log/auth.log: log de autenticación /var/log/kern.log: registro del kernel /var/log/cron.log: registro de crond /var/log/maillog: registro del servidor de mails /var/log/qmail/: registro de Qmail /var/log/httpd/: registro de errores y accesos a Apache /var/log/lighttpd: registro de errores y accesos a Lighttpd

/var/log/boot.log: registro de inicio del sistema /var/log/mysqld.log: registro de la base de datos MySQL /var/log/secure: log de autenticación /var/log/utmp or /var/log/wtmp: registro de logins /var/log/dmesg: en este archivo se almacena la información que genera el kernel durante el arranque del sistema. Podemos ver su contenido con el comando dmesg: $ dmesg Los archivos de log crecen y con el tiempo se pueden volver muy extensos, pero no tenemos que preocuparnos porque en /etc/cron.daily (tareas que se ejecutan cada día) está el script /etc/cron.daily/logrotate, (cuyo archivo de configuración es /etc/logrotate.conf), que se encarga de comprimirlos y aplicar una rotación de archivos, añadiéndoles la extensión .1.gz, .2.gz, etc., volviendo a crear uno vacío (cuanto mayor sea el número más antiguo será el log). Conclusión, en /var/log se almacenan todos los registros del sistema. No obstante, algunas aplicaciones como httpd incluyen ahí dentro un subdirectorio en el que almacenan sus propios archivos de registro.

TEST PENETRACIÓN La Prueba de Penetración (Penetration Test o Pen Test en Inglés) consiste en una evaluación activa de las medidas de seguridad de la información. El propósito es detectar los puntos débiles que puedan ser capitalizados para violar cualquiera de las tres condiciones necesarias de la información: confidencialidad, integridad y disponibilidad. Generalmente, las vulnerabilidades potenciales resultan de: fallas en el software, de configuraciones inapropiadas de los sistemas, de la operación deficiente en los procesos o protecciones técnicas y del factor humano. La Prueba de Penetración se realiza desde la posición de un atacante potencial de manera remota y local, buscando explotar activamente las vulnerabilidades de seguridad para obtener información relevante. Tal como lo intentaría un intruso con propósitos adversos para la organización, pero sin dañar la información, sistemas e infraestructura informática. En código verde nos distinguimos por realizar las Pruebas de Penetración evaluando la gente, procesos, tecnología, controles técnicos y administrativos. Nuestro método es exhaustivo y por lo tanto más certero.

¿Qué beneficios aporta una Prueba de Penetración? Se determina la factibilidad real de un ataque y su impacto en el negocio. Provee la información necesaria para enfocar la implementación de controles de seguridad y mitigar los riesgos descubiertos. Eleva la conciencia de la alta gerencia acerca de la seguridad de la información. Entregables Presentación del estado actual del negocio. Reporte de hallazgos técnicos, contramedidas y ponderación del riesgo a la información. Correcciones y planes de remediación. Principales razones para realizar una Prueba de Penetración: Es el método más efectivo para determinar el nivel real de seguridad de la información. Sólo con un ataque simulado es posible identificar las vulnerabilidades que plantean riesgos significativos para la organización, tales como: Pérdidas financieras por fraude (hackers, extorsión o empleados molestos) o debido a sistemas de información y procesos poco confiables. Pérdida de confianza de los clientes o cualquier otra parte interesada. Crisis de relaciones públicas si el caso trasciende a los medios masivos. Ofrece un punto de vista independiente y analítico por un tercero, enriqueciendo la labor del equipo interno responsable de la seguridad de la información

COMO PONER LA ESCUCHA DE LOS PUERTOS Nmap (Network Mapper, insecure.org/nmap/, paquete nmap) es probablemente el escaneado de puertos más potente que existe y el más utilizado tanto por

administradores como por hackers, ya que tiene numerosas opciones de escaneo para hacking y ataques port surfing (evita ser detectado por software de detección de escaneos, hace creer al host escaneado que le escanean desde otro host, escanea a velocidad variable para no ser detectados, etc.).

Usaremos Nmap para saber qué puertos tenemos abiertos y asegurarnos de que el firewall funciona correctamente, y siempre desde una máquina distinta al equipo a escanear. Su sintaxis es:

# nmap [opciones] <ip_del_servidor> Los puertos a escanear pueden ser un rango (1-1024), una lista (22, 23, 80,443) o todos (1-65535). Si no se especifica escanea los puertos denominados bien conocidos (Well know).

Debemos tener en cuenta que para Nmap un puerto puede estar de tres maneras:

Open: el puerto es accesible y hay un demonio escuchando. Closed: el puerto es accesible pero no hay un demonio escuchando. Filtered: el puerto no es accesible, un firewall filtra el puerto. Veamos algunas opciones de nmap: Escanear puertos TCP: para escanear todos los puertos (-p 1-65535) TCP (sS) y detectar las versiones del software (-A) haremos: # nmap -sS -A -p 1-65535 192.168.1.2 Starting nmap 3.81 at 2006-03-22 17:35 CET Interesting ports on 192.168.0.2: (The 65530 ports scanned but not shown below are in state: closed) PORT STATE SERVICE VERSION OpenSSH 3.8.1p1 Debian.sarge.6 Protocol 2.0 Apache 1.3.33 Debian GNU/Linux PHP/4.3.10-18

22/tcp open ssh 80/tcp open http

111/tcp open rpcbind 2 (rpc #100000)

113/tcp open auth 631/tcp open ipp

OpenBSD identd CUPS 1.1

MAC Address: 00:4F:49:01:E9:91 (3com) Device type: general purpose Running: Linux 2.4.X|2.5.X|2.6.X OS details: Linux 2.4.7 - 2.6.11 Service Info: OS: OpenBSD Nmap finished: 1 IP address (1 host up) scanned in 73.125 seconds Escanear puertos UDP: para escanear los puertos UDP (opción -sU) bien conocidos (opción por defecto), haremos: # Nmap -sU -A 192.168.1.2 Escaneo haciendo ping: con la opción -sP lanzaremos un ping a todas las IPs de la red (ping scan), para saber qué hosts se encuentran activos: # nmap -sP 192.168.1.0/24 Starting nmap 3.81 at 2006-03-22 20:39 CET Host 192.168.0.1 appears to be up. MAC Address: 00:01:38:55:2C:3A (XAVi Technologies) Host 192.168.0.2 appears to be up. MAC Address: 00:50: DA: 38:C5:04 (3com) Host 192.168.0.3 appears to be up. MAC Address: 00:4F:49:01:E9:91 (Unknown) Host 192.168.0.255 seems to be a subnet broadcast address. Nmap finished: 255 IP addresses (3 hosts up) scanned in 6.966 seconds

Zero Day Un ataque de día-cero (o también 0day) es un ataque contra una aplicación o sistema que tiene como objetivo la ejecución de código malicioso gracias al conocimiento de vulnerabilidades que, por lo general, son desconocidas para la

gente y el fabricante del producto. Esto supone que aún no hayan sido arregladas. Este tipo de exploit circula generalmente entre las filas de los potenciales atacantes hasta que finalmente es publicado en foros públicos. Un exploit de día-cero normalmente es desconocido para la gente y el fabricante del producto. Un ataque de día cero se considera uno de los más peligrosos instrumentos de una guerra informática Los que se dedican al malware son capaces de aprovecharse de estas vulnerabilidades mediante diferentes vías de ataque. Por ejemplo, códigos en webs que revelan vulnerabilidades en navegadores. Los navegadores son un objetivo especial debido a su amplia distribución y uso. Otra forma de revelar estos fallos es utilizar aplicaciones que abren ciertos documentos que revelan los fallos. Los exploits que pueden mejorar el software se revelan en bases de datos como US-CERT. Se puede diseñar malware para aprovecharse de estos exploits y conseguir información confidencial como contraseñas bancarias. Los ataques día-cero ocurren cuando una vulnerabilidad tiene una ventana de tiempo existente entre el tiempo en el que se publica una amenaza y el tiempo en el que se publican los parches que los solucionan. Normalmente estos parches son preparados por los propios responsables del programa "defectuoso" en cuestión (sobre todo con los programas de pago). La línea de tiempo que se emplea para virus y troyanos (entre otros) es la siguiente: Publicación del ataque o exploit al mundo Detección y estudio del problema Desarrollo de una solución al mismo Publicación del parche (o firma del virus si procede), para evitar el exploit. Distribución e instalación del parche en los sistemas de los usuarios y actualización de los antivirus. Este proceso puede durar horas o incluso días. Todo el tiempo que dura este proceso es el que dura la ventana de vulnerabilidad.

Protección La protección día-cero es la habilidad de proporcionar protección contra exploits día-cero. Por ejemplo, para limitar los ataques día-cero referentes a

vulnerabilidades en memoria, se usan técnicas como buffer overflows. Estos mecanismos de protección se pueden encontrar en sistemas operativos actuales como Microsoft Windows, Solaris, GNU/Linux, Unix y Mac OS X. Mediante métodos como el "golpeo de puertos" se proporciona seguridad frente a ataques en servicios de red, aunque estos sistemas de protección no suelen ser útiles para redes con gran cantidad de usuarios. Empresas como Gama-Sec en Israel y DataClone Labs en Reno, Nevada, ayudan a esta protección mediante el Proyecto Zero Day que proporciona información sobre futuros ataques y vulnerabilidades. Otro medio para evitar estos ataques es esperar un tiempo razonable para actualizar una versión. Las vulnerabilidades del nuevo software suelen ser arregladas en las primeras actualizaciones del mismo. Es recomendable actualizar el software para arreglar los posibles fallos existentes en el software. Vulnerabilidades Las 20 vulnerabilidades Para facilitar la identificación de las vulnerabilidades, se encuentran reunidas en diversos grupos: vulnerabilidades que pueden afectar a todos los sistemas (G), vulnerabilidades específicas de los sistemas operativos de la familia Windows (W) y vulnerabilidades específicas de Unix y derivados (U). G1. Instalación por defecto de sistemas operativos y aplicaciones Muchos programas, incluyendo los sistemas operativos y aplicaciones, pueden realizar una instalación en la que la seguridad no es un factor determinante. Es importante revisar todas las configuraciones antes de poner la máquina accesible en la red. G2. Cuentas de usuario sin contraseña o con contraseña fácilmente identificable Muchas sistemas disponen de una única línea de defensa: la contraseña del usuario. Es importante que todas las cuentas existentes dispongan de una contraseña y que esta sea robusta y no fácilmente identificable, por personas o programas. Igualmente algunos sistemas y aplicaciones crean cuentas de usuario en los que se asignan contraseñas por omisión que son conocidas.

G3. Copias de seguridad no existentes o incompletas Hay una certeza evidente: tarde o temprano ocurrirá un incidente que nos obligue a utilizar la copia de seguridad. Es importante que éstas se realicen, sean verificadas y que

existan métodos documentados y probados para restaurar los datos. No hay nada más inútil que una copia de seguridad que no pueda ser restaurada. G4. Gran número de puertos abiertos Tanto los usuarios legítimos como los atacantes acceden a nuestro sistemas a través de los puertos abiertos. Cuanto más puertos existan, más posibilidades de que alguien pueda conectar con nuestro sistema. Por tanto, es importante que sólo estén abiertos aquellos puertos que realmente son necesarios para el normal funcionamiento del equipo. G5. No realizar correctamente el filtrado de las direcciones entrantes y salientes La suplantación de direcciones IP es un método frecuente utilizado por los atacantes como medida de ocultación. Por tanto, deben aplicarse las medidas necesarias para impedir la entrada y/o salida en nuestra red de direcciones IP incorrectas, inesperadas o no válidas. G6. Registro de actividad no existente o incompleta La prevención de los incidentes de seguridad es importante, pero mucho más es poder detectarlos lo antes posible. Para ello es importante registrar cuanta más información posible sobre la actividad de nuestros sistemas, aplicando las medidas necesarias para el análisis de estos registros de actividad. G7. Programas CGI vulnerables La mayoría de servidores web permiten utilizar programas CGI para acceder a información, recoger información, identificar a los usuarios, etc. Muchos de estos programas son habitualmente utilizados en los ataques contra los sistemas, por lo que debe prestarse una especial atención a los mismos. W1. Vulnerabilidad Unicode ("Web Server Folder Traversal") Las versiones de IIS (Internet Information Server), si no se ha aplicado el correspondiente parche, son vulnerables a un ataque consistente en ocultar URL ilegales (como el acceso a directorios del sistema) mediante la representación de diversos caracteres en formato Unicode. W2. Desbordamiento de memoria intermedia en ISAPI Cuando se instala IIS, se instalan automáticamente diversas extensiones ISAPI. Existen diversos problemas de desbordamiento de memoria intermedia en estas extensiones que pueden ser utilizadas por un atacante para obtener el control completo del sistema.

W3. Remote Data Services de IIS Existen diversas vulnerabilidades en el componente RDS (Remote Data Services) de IIS que pueden ser utilizadas por

un atacante remoto para la ejecución de mandatos del sistema con privilegios de administrador. W4. NETBIOS - Recursos de red compartidos no protegidos Algunos protocolos de red incluidos en el sistema operativo Windows no ofrecen mecanismos de protección adecuados, por lo que un atacante remoto puede obtener acceso a la información almacenada en los ordenadores. W5.Obtención de información mediante sesiones de usuario anónimas Si el ordenador Windows NT o Windows 2000 permite la conexión de usuarios anónimos (sin usuario ni contraseña), un atacante remoto puede obtener información los recursos de red y las cuentas de usuario definidas en el sistema. W6. Contraseñas débiles en la SAM Con el objetivo de ofrecer compatibilidad descendente, tanto Windows NT como Windows 2000 almacenan por omisión las contraseñas utilizando un método de cifrado de escasa calidad. Esta contraseña cifrada puede ser desvelada mediante ataques de fuerza brutas con relativamente poco esfuerzo. U1. Desbordamiento de memoria intermedia en servicios RPC Los servicios RPC permiten que un ordenador ejecute un programa en otro ordenador. Existen múltiples vulnerabilidades por desbordamiento de memoria intermedia en estos servicios que permiten a un atacante remoto la realización de ataques de denegación de servicio o la obtención de privilegios de administrador. U2. Vulnerabilidades en sendmail es el programa más utilizado para en envío, redirección y encaminamiento de mensajes de correo. Las versiones antiguas de este programa tienen un gran número de problemas y vulnerabilidades que pueden permiten a un atacante obtener acceso al sistema. U3. Vulnerabilidades en BIND El programa BIND es habitualmente utilizado para actuar como servidor de nombres de dominio (DNS). Algunas versiones del mismo pueden ser utilizadas para obtener acceso al sistema con privilegios de administrador. U4. Mandatos "R" La familia de mandatos "R" permiten a un usuario autenticado de forma local ejecutar mandatos o acceder a sistemas remotos sin necesidad de volver a autenticarse. Esto puede permitir a un atacante con acceso a un sistema acceder libremente al resto de sistemas donde exista una relación de confianza. U5. "Daemon" del protocolo de impresión remota (LPD) Existe una vulnerabilidad de desbordamiento de memoria intermedia en diversas versiones del "daemon" lpd que pueden ser utilizadas por un atacante para ejecutar código arbitrario en el sistema vulnerable con privilegios de administrador.

U6. Sadmind y mountd Sadmind es un programa para la administración de los sistemas Solaris desde un entorno gráfico de usuario. Mountd facilita el acceso a los directorios exportados mediante NFS. Ambos programas tienen diversos problemas de desbordamiento de memoria intermedia que permiten a un atacante remoto obtener privilegios de administrador en los sistemas vulnerables. U7. Valores de SNMP por omisión El protocolo SNMP es ampliamente utilizado en la monitorización y administración de virtualmente cualquier dispositivo existente en una red. El sistema de seguridad utilizado, basado en los nombres de comunidad, es muy débil. Además, los valores por omisión de muchos de estos periféricos permiten que cualquiera pueda modificar su configuración. SUBNETEO El primer paso que debemos recordar son las clases de redes que existen para nuestro uso, estas son 3 las cuales enumero a continuación: – Clase A: comprendida de la red 1 a la 126 – Clase B: comprendida de la red 128 a la 191 – Clase C: comprendida de la red 192 a la 224 Ahora tenemos que recordar cuales son las mascaras de subred que tienen por default cada una de las clases de Red. – Clase A: 255.0.0.0 – Clase B: 255.255.0.0 – Clase C: 255.255.255.0 Teniendo estos conceptos claros entraremos en materia, ¿Para que nos sirve crear subredes? La respuesta es que crear subredes nos permite tener una mejor administración de red. Aunque no es el único motivo, el motivo mas importante es que cuando creamos subredes reducimos el trafico de broadcast de nuestra red global. No solo es crear subredes y ya, tenemos que estudiar la cantidad de subredes que necesitamos, el crecimiento que tendrá la empresa. Con este pequeño estudio podremos decidir que clase de red es la que mas nos conviene. Con fines prácticos utilizaremos una red de Clase A que será la 10.0.0.0 y haremos 7 subredes.

Recordemos la mascara de subred de este tipo de clase; 255.0.0.0. Hecho esto empecemos con el subneteo propiamente dicho. La ecuación que define la cantidad de bits que tenemos que tomar prestados a la parte de la mascara de subred para crear las subredes necesarias es la siguiente: 2N-2= x donde “N” es el numero de bits que pediremos prestados y “x” es el numero de subredes que queremos. En este caso vamos a sustituir los valores que tenemos. 2 N - 2 = 7 , ya tenemos el valor de las subredes que necesitamos ahora solo tenemos que buscar una potencia de dos que al restarle dos nos de 7 o mas, si ocupamos el valor de “3” tenemos 8 pero al restarle “2” solo nos quedan 6, entonces no nos sirve. Por lo cual el numero “4” es el indicado ya que al elevar y restar 2 nos quedan 14 redes utilizables, aquí se pueden preguntar que solo queremos 7 y las demás que se le van a hacer, bueno pues las 7 restantes se pueden guardar para un posterior uso. Volvamos a sustituir el nuevo numero en nuestra formula inicial 2 4 – 2 = 14. Como dijimos anteriormente “N” es el numero de bits que tomaríamos prestados a la mascara de subred para poder crear las subredes, por lo que tomaremos 4 bits de que octeto se preguntaran, están de acuerdo que los bits del primer octeto ya están ocupados y que por eso es el numero 255 en decimal. Déjenme explicarlo con mas detalle, 255.0.0.0 , es el numero decimal que representa la mascara de subred, pero el numero real es un numero en binario que se vería de la siguiente forma: 11111111.00000000.00000000.00000000 Recordemos lo que aprendimos en electrónica, donde 1 representa encendido y 0 es apagado, aquí lo aplicamos a que 1 esta lleno y el 0 es vacío. Por eso digo que el primer octeto ya esta ocupado, por eso los 4 bits los tomaremos del octeto siguiente con lo cual podríamos decir que la nueva mascara de subred en modo binario quedaría de esta forma: 11111111.11110000.00000000.00000000 Ahora convirtámoslo a decimal para saber que numero es y así lo pongamos en la configuración.

255.240.0.0 En decimal esa es la nueva mascara de subred que ocuparan todas las subredes que tengamos. Ahora solo nos falta encontrar de que tamaño serán las subredes que haremos. Aquí veamos otro concepto, Cuantas números existen en el rango de 0 a 255? Si contamos también a el numero 0 como un valor real tendríamos 256 números, de acuerdo. Ahora si a esos 256 valores les restamos el numero que encontramos en la mascara de subred ya tendremos los números que sobran que serán los saltos de cada subred. 256-240 = 16 Los saltos serán de 16 en 16 pero en que octeto haremos los saltos? Bueno recordemos cual es la red que íbamos a subnetear y la mascara de subred que hicimos: la red es la 10.0.0.0 y la mascara nueva de subred es la 255.240.0.0, estamos de acuerdo que el octeto que modificamos de la mascara de subred es el segundo así que el octeto que tenemos que modificar en la red también tiene que ser el segundo, así que si hubiéramos modificado el tercero se tendría que hacer el proceso en el tercero. Ahora ya empezaremos a crear las subredes.

Numero de Subred Subred 1 10.0.0.0 2 10.16.0.0 3 10.32.0.0 4 10.48.0.0 5 10.64.0.0 6 10.80.0.0 7 10.96.0.0 8 10.112.0.0 9 10.128.0.0 10 10.144.0.0 11 10.160.0.0 12 10.176.0.0 13 10.192.0.0 14 10.208.0.0 15 10.224.0.0 16 10.240.0.0

Broadcast 10.15.255.255 10.31.255.255 10.47.255.255 10.63.255.255 10.79.255.255 10.95.255.255 10.111.255.255 10.127.255.255 10.143.255.255 10.159.255.255 10.175.255.255 10.191.255.255 10.207.255.255 10.223.255.255 10.239.255.255 10.255.255.255

Rango de IPs Utilizables 10.0.0.1 10.16.0.1 10.32.0.1 10.48.0.1 10.64.0.1 10.80.0.1 10.96.0.1 10.112.0.1 10.128.0.1 10.144.0.1 10.160.0.1 10.176.0.1 10.192.0.1 10.208.0.1 10.224.0.1 10.240.0.1 10.15.255.254 10.31.255.254 10.47.255.254 10.63.255.254 10.79.255.254 10.95.255.254 10.111.255.254 10.127.255.254 10.143.255.254 10.159.255.254 10.175.255.254 10.191.255.254 10.207.255.254 10.223.255.254 10.239.255.254 10.255.255.254

Ahora haremos un subneteo pero de una clase B que será la 128.0.0.0 también con 7 subredes.

Recordemos ahora la mascara de subred de la clase B: 255.255.0.0 es decir en número binario seria: 11111111.11111111.00000000.00000000 Utilizaremos los números que hemos encontrado en el ejemplo anterior para este mismo caso, por lo que sabemos que tenemos que tomar 4 bits del octeto, vemos que los 2 primeros octetos están llenos así que ocuparemos el tercer octeto para trabajar. Por lo que la nueva mascara de subred nos quedaría de la siguiente manera. 11111111.11111111.11110000.00000000 255.255.240.0 que en numero decimal es

Sabemos que los saltos son de 16 números por lo que vimos anteriormente, así que nuestras subredes quedarían de la siguiente manera.

Numero Subred 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

de Subred 128.0.0.0 128.0.16.0 128.0.32.0 128.0.48.0 128.0.64.0 128.0.80.0 128.0.96.0 128.0.112.0 128.0.128.0 128.0.144.0 128.0.160.0 128.0.176.0 128.0.192.0 128.0.208.0 128.0.224.0 128.0.240.0

Broadcast

Rango de IP's 128.0.15.255 128.0.0.1 128.0.31.255 128.0.16.1 128.0.47.255 128.0.32.1 128.0.63.255 128.0.48.1 128.0.79.255 128.0.64.1 128.0.95.255 128.0.80.1 128.0.111.255 128.0.96.1 128.0.127.255 128.0.112.1 128.0.143.255 128.0.128.1 128.0.159.255 128.0.144.1 128.0.175.255 128.0.160.1 128.0.191.255 128.0.176.1 128.0.207.255 128.0.192.1 128.0.223.255 128.0.208.1 128.0.239.255 128.0.224.1 128.0.255.255 128.0.240.1

Utilizables 128.0.15.254 128.0.31.254 128.0.47.254 128.0.63.254 128.0.79.254 128.0.95.254 128.0.111.254 128.0.127.254 128.0.143.254 128.0.159.254 128.0.175.254 128.0.191.254 128.0.207.254 128.0.223.254 128.0.239.254 128.0.255.254

Ahora surgen algunas dudas, por que no cambie el “0” que esta después del 128, la respuesta es muy fácil en todas las redes de clase B, en el primer octeto donde podemos tomar prestados bits es en el tercero, es decir, los primeros dos octetos permanecen inmutables, por lo que no se puede mover. Por ultimo haremos una red de tipo c que será la 192.1.1.0 también con 7 subredes. Ocupamos los cálculos iniciales y solo tenemos que recordar la mascara de subred de la clase C la cual es 255.255.255.0 o en número binario:

11111111.11111111.11111111.00000000 en el último octeto tomamos los 4 bits, con lo cual la nueva mascara de subred quedaría de la siguiente forma: 11111111.11111111.11111111.11110000 y en numero decimal es 255.255.255.240 , sabemos que los saltos son de 16 números ahora solo nos resta crear las subredes, con lo que quedaría de la siguiente manera.

Numero Subred 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

de Subred 192.1.1.0 192.1.1.16 192.1.1.32 192.1.1.48 192.1.1.64 192.1.1.80 192.1.1.96 192.1.1.112 192.1.1.128 192.1.1.144 192.1.1.160 192.1.1.176 192.1.1.192 192.1.1.208 192.1.1.224 192.1.1.240

Broadcast 192.1.1.15 192.1.1.31 192.1.1.47 192.1.1.63 192.1.1.79 192.1.1.95 192.1.1.111 192.1.1.127 192.1.1.143 192.1.1.159 192.1.1.175 192.1.1.191 192.1.1.207 192.1.1.223 192.1.1.239 192.1.1.255

Rango de IPs 192.1.1.1 192.1.1.17 192.1.1.33 192.1.1.49 192.1.1.65 192.1.1.81 192.1.1.97 192.1.1.113 192.1.1.129 192.1.1.145 192.1.1.161 192.1.1.177 192.1.1.193 192.1.1.209 192.1.1.225 192.1.1.241

Utilizables 192.1.1.14 192.1.1.30 192.1.1.46 192.1.1.62 192.1.1.78 192.1.1.94 192.1.1.110 192.1.1.126 192.1.1.142 192.1.1.158 192.1.1.174 192.1.1.190 192.1.1.206 192.1.1.222 192.1.1.238 192.1.1.254