You are on page 1of 9

PROYECTO DE REDES I

8 de diciembre de 2014

UNIVERSIDAD PBLICA Y AUTNOMA DE EL ALTO


DOCENTE: ING. GUILLERMO MARTIN URA OVANDO
INGENIERIA DE REDES I (SIS-326)

CALCULADORA IP
INTRODUCCIN
En las organizaciones actuales la comunicacin es bsica, y el intercambio de informacin
marca un hito dentro de la bsqueda y obtencin de mejores resultados. Esto ha dado
origen a la constitucin de redes de comunicacin de datos basadas en el protocolo
estndar TCP/IP, a travs de las cuales viajan una amplia gama de aplicaciones y servicios.
Las redes modernas son altamente dinmicas y a ellas se incorporan constantemente
nuevos dispositivos.
Por lo que la administracin del direccionamiento IP es una de las principales tareas de los
administradores de la red. Son muchas las empresas que utilizan el software para
servicios de DHCP para la administracin del direccionamiento IP.
Sin embargo, estos son de funcionalidades reducidas hablando de la administracin del
direccionamiento IP; lo que obliga a los administradores de sistemas a realizar
manualmente la administracin de las direcciones IP y a utilizar hojas de clculo para el
control de las direcciones y los dispositivos.
Mantener actualizadas las hojas de clculo estticas es una tarea difcil y puede generar la
asignacin de direcciones IP basadas en datos errneos y generar problemas molestos en
la red, como la duplicacin de asignaciones IP.
En entornos complejos en materia de TICS de hoy en da, ejecutar los procesos
manualmente es algo costoso y arriesgado.
La automatizacin de la administracin de direcciones IP es bsico para la operacin de la
infraestructura de red de cualquier empresa moderna. Las hojas de clculo son prcticas
para muchas tareas, pero la administracin de IP no es una de ellas.
Por si misma la administracin de direccionamiento IP involucra varias actividades.
- Definicin y diseo de la red de datos.
- Segmentacin lgica, basada en el uso de subredes.
- Mantener actualizada la informacin del direccionamiento
IP DE LA RED
Asignacin del direccionamiento IP para todos los dispositivos que se conectan a la red. El
presente trabajo se enfoca a desarrollar una aplicacin que permita el clculo de los
rangos de direccionamiento IP, de acuerdo a la mscara de subred que se est utilizando
con la direccin IP.
REDES 1

Pgina 1

PROYECTO DE REDES I

8 de diciembre de 2014

OBJETIVO
Administrar el recurso de red
Direcciones del Protocolo de Internet (IP), de tal forma que se faciliten las tareas que
utilizan este recurso a travs del desarrollo de una aplicacin orientada a objetos en
lenguaje HTML, que inicialmente permita el clculo de los rangos de direccionamiento IP,
de acuerdo a la mscara de subred que se est utilizando con la direccin IP.
DESARROLLO
Brevemente comentaremos la definicin de direccin IP y mascara de red como
prembulo al desarrollo de la aplicacin.
Una direccin IP es una etiqueta numrica que identifica, de manera lgica y jerrquica, a
una interfaz (elemento de comunicacin/conexin) de un dispositivo (habitualmente una
computadora) dentro de una red que utilice el protocolo IP (Internet Protocolo), que
corresponde al nivel de red del protocolo TCP/IP.
Las direcciones IP, se expresan como nmeros de notacin decimal: se dividen los 32 bits
de la direccin en cuatro octetos. El valor decimal de cada octeto es entre 0 y 255 [el
nmero binario de 8 bits ms alto es 11111111 y esos bits, de derecha a izquierda, tienen
valores decimales de 1, 2, 4, 8, 16, 32, 64 y 128, lo que suma 256 en total, 255 ms la 0
(0000 0000)].
En la expresin de direcciones IPv4 en decimal se separa cada octeto por un carcter nico
".". Cada uno de estos octetos puede estar comprendido entre 0 y 255, salvo algunas
excepciones. Los ceros inciales, si los hubiera, se pueden obviar (010.128.001.255 sera
10.128.1.255).
La "Autoridad de Nmeros Asignados en Internet", Internet Assigned Numbers Authority
(IANA), ha reservado los tres siguientes bloques de direcciones IP para el uso en internets
privadas:
10.0.0.0 172.16.0.0 192.168.0.0
- 10.255.255.255 (prefijo 10/8)
- 172.31.255.255 (prefijo 172.16/12)
- 192.168.255.255 (prefijo 192.168/16)
La mscara de red es una combinacin de bits que sirve para delimitar el mbito de una
red de computadoras. Su funcin es indicar a los dispositivos qu parte de la direccin IP
es el nmero de la red, incluyendo la subred, y qu parte es la correspondiente al host.
Los dispositivos de red realizan un AND entre la direccin IP y la mscara para obtener la
direccin de red a la que pertenece el host identificado por la direccin IP dada.
Para el manejo y control del direccionamiento IP, a diario los administradores de red se
enfrentan al clculo de las subredes que se obtienen con las diferentes mascaras de red
utilizadas.

REDES 1

Pgina 2

PROYECTO DE REDES I

8 de diciembre de 2014

CDIGO HTML
<title>Calculadora de subneting</title>
<script language="javascript" type="text/javascript">
function calcula(){
var woct1, woct2, woct3, woct4, wnredes, wnhosts, wclase, werror;
var nbits, wmoct1, wmoct2, wmoct3, wmoct4, i;
/* Obtenemos los datos del formulario */
woct1 = parseInt(document.getElementById('oct1').value);
woct2 = parseInt(document.getElementById('oct2').value);
woct3 = parseInt(document.getElementById('oct3').value);
woct4 = parseInt(document.getElementById('oct4').value);
wnredes = parseInt(document.getElementById('nredes').value);
/* inicializamos las variables y deyterminamos la clase de la red en funcin del primer
octeto*/
wclase = ""
werror = false;
if ((woct1 >= 1) && (woct1 <= 126)) wclase="A";
if ((woct1 >= 128) && (woct1 <= 191)) wclase="B";
if ((woct1 >= 192) && (woct1 <= 223)) wclase="C";
if ((woct1 >= 224) && (woct1 <= 239)) wclase="D";
if ((woct1 >= 240) && (woct1 <= 255)) wclase="E";
if (wclase == ""){
alert ("ERROR CON CON EL TIPO DE RED");
document.getElementById('oct1').focus();
werror = true;
}
if (wnredes ==0){
alert ("ERROR CON CON EL NMERO DE SUBREDES");
document.getElementById('nredes').focus();
werror = true;
}
document.getElementById('tipoRed').value = wclase;
// Determinamos la potencia de 2 que es >= que el nmero de redes introducidas
// para saber el nmero de bits de la mscara
// As para 7 redes necesitamos 3 bits
nbits = 0
while (Math.pow(2,nbits) < wnredes){
nbits++
}
//Vamos a calcular la mscara en funcin del tipo de red
switch(wclase){
case 'A':

REDES 1

Pgina 3

PROYECTO DE REDES I

8 de diciembre de 2014

// Mscara por defecto sin subneting


wmoct1 = 255;
wmoct2 = 0;
wmoct3 = 0;
wmoct4 = 0;
// bits necesarios para la mscara (los de la clase+subneting)
document.getElementById('mbits').value = 8 + nbits;
//Debemos diferenciar si el nmero de redes implica 1, 2 o 3 bytes
if (nbits >= 16){
// necesitamos 2 bytes para las subredes
nbits = nbits - 16;
wmoct2 = 255;
wmoct3 = 255;
//Calculamos los bits que necesitamos para el subneting
wmoct4 = Math.pow(2,nbits) - 1;
//los pasamos a la iquierda o parte MSB mediante desplazamiento
wmoct4 = wmoct4 << (8-nbits);
}
else {
if (nbits >= 8){
// necesitamos 2 bytes para las subredes
nbits = nbits - 8;
wmoct2 = 255;
wmoct4 = 0;
//Calculamos los bits que necesitamos para el subneting
wmoct3 = Math.pow(2,nbits) - 1;
//los pasamos a la iquierda o parte MSB mediante desplazamiento
wmoct3 = wmoct3 << (8-nbits);
}
else{
// necesitamos 1 byte para las subredes, es como el caso C
//Calculamos los bits que necesitamos para el subneting
wmoct2 = Math.pow(2,nbits) - 1;
//los pasamos a la iquierda o parte MSB mediante desplazamiento
wmoct2 = wmoct2 << (8-nbits);
REDES 1

Pgina 4

PROYECTO DE REDES I

8 de diciembre de 2014

wmoct3 = 0;
wmoct4 = 0;
}
// end-else
}
break;
case 'B':
// Mscara por defecto sin subneting
wmoct1 = 255;
wmoct2 = 255;
wmoct3 = 0;
wmoct4 = 0;
// bits necesarios para la mscara (los de la clase+subneting)
document.getElementById('mbits').value = 16 + nbits;
//Debemos diferenciar si el nmero de redes implica 1 o 2 bytes
if (nbits >= 8){
// necesitamos 2 bytes para las subredes
nbits = nbits - 8;
wmoct3 = 255;
//Calculamos los bits que necesitamos para el subneting
wmoct4 = Math.pow(2,nbits) - 1;
//los pasamos a la iquierda o parte MSB mediante desplazamiento
wmoct4 = wmoct4 << (8-nbits);
}
else{
// necesitamos 1 byt para las subredes, es como el caso C
//Calculamos los bits que necesitamos para el subneting
wmoct3 = Math.pow(2,nbits) - 1;
//los pasamos a la iquierda o parte MSB mediante desplazamiento
wmoct3 = wmoct3 << (8-nbits);
}
break;
case 'C':
// Mscara por defecto sin subneting
wmoct1 = 255;
wmoct2 = 255;
wmoct3 = 255;
wmoct4 = 0;
REDES 1

Pgina 5

PROYECTO DE REDES I

8 de diciembre de 2014

// En este caso no es necesario diferenciar ya que nicamente disponemos de 1 byte para


las subredes
// bits necesarios para la mscara (los de la clase+subneting)
document.getElementById('mbits').value = 24 + nbits;
//Calculamos los bits que necesitamos para el subneting
wmoct4 = Math.pow(2,nbits) - 1;
//los pasamos a la iquierda o parte MSB mediante desplazamiento
wmoct4 = wmoct4 << (8-nbits);
case 'D':
// Mscara por defecto sin subneting
wmoct1 = 0;
wmoct2 = 0;
wmoct3 = 0;
wmoct4 = 0;
// En este caso no es necesario diferenciar ya que nicamente disponemos de 1 byte para
las subredes
// bits necesarios para la mscara (los de la clase+subneting)
document.getElementById('mbits').value = 0 + nbits;
//Calculamos los bits que necesitamos para el subneting
wmoct4 = Math.pow(2,nbits) - 1;
//los pasamos a la iquierda o parte MSB mediante desplazamiento
wmoct4 = wmoct4 << (8-nbits);
case 'E':
// Mscara por defecto sin subneting
wmoct1 = 0;
wmoct2 = 0;
wmoct3 = 0;
wmoct4 = 0;
// En este caso no es necesario diferenciar ya que nicamente disponemos de 1 byte para
las subredes
// bits necesarios para la mscara (los de la clase+subneting)
document.getElementById('mbits').value = 0 + nbits;
//Calculamos los bits que necesitamos para el subneting
REDES 1

Pgina 6

PROYECTO DE REDES I

8 de diciembre de 2014

wmoct4 = Math.pow(2,nbits) - 1;
//los pasamos a la iquierda o parte MSB mediante desplazamiento
wmoct4 = wmoct4 << (8-nbits);
break;
}
document.getElementById('moct1').value = wmoct1;
document.getElementById('moct2').value = wmoct2;
document.getElementById('moct3').value = wmoct3;
document.getElementById('moct4').value = wmoct4;
}
</script>
</head>
<body>
<h1>Calculadora Subneting</h1>
La Direccion IP Es :
<input type="text" maxlength="3" size="3" id="oct1"/>.<input type="text" maxlength="3"
size="3" id="oct2"/>.<input type="text" maxlength="3" size="3" id="oct3"/>.<input
type="text" maxlength="3" size="3" id="oct4"/>
Subredes Requeridas Son :
<input type="text" maxlength="8" size="8" id="nredes"/><br /><br />
<input type="button" value="CALCULAR" onclick="calcula()"
<hr>
<p>La Red Es De Clase :
<input type="text" maxlength="3" size="3" readonly id="tipoRed" />
Mscara :
<input type="text" maxlength="3" size="3" id="moct1" readonly/>.<input type="text"
maxlength="3" size="3" id="moct2" readonly/>.<input type="text" maxlength="3"
size="3" id="moct3" readonly/>.<input type="text" maxlength="3" size="3" id="moct4"
readonly/> / <input type="text" maxlength="3" size="3" id="mbits" readonly/> <br />
</p>
</body>
</html>

REDES 1

Pgina 7

PROYECTO DE REDES I

8 de diciembre de 2014

EJECUCIN DE LA CALCULADORA IP

REDES 1

Pgina 8

PROYECTO DE REDES I

8 de diciembre de 2014

CONCLUSIONES
Esta aplicacin aun esta en desarrollo, pero pretende convertirse en una herramienta de
gran utilidad para los administradores de red. Para el desarrollo de esta aplicacin se
utilizaron algunos recursos de programacin HTML que se vieron.
PAGINAS WEB CONSULTADAS
http://www.hopeisd.com/products/cables/eia568a.html
http://www.rfc-es.org/rfc/rfc1918-es.txt

REDES 1

Pgina 9

You might also like