martes, 4 de junio de 2013
Las tablas pivote sirven para presentar los
datos de una forma mas estructurada, reportes, mostrar totales etc, a modo de
darle una mejor vista a los datos y que sean mas entendibles al mismo tiempo.
Esto se puede realizar con sql básico que es aceptado por
cualquier DBMS y también haciendo uso de la función "pivot" que no
pertenece al estándar sql pero que es aceptada por algunos dbms.
Oracle implemento el uso de esta función a partir de la versión 11
(según leí) por lo que en versiones anteriores no es reconocida, se usaba la función DECODE que trabaja de forma similar.
Los siguientes ejemplos están realizados en oracle 11.2 XE versión
para windows y prácticamente sirven para mostrar como pasar una consulta pivote
realizada con sql básico a una realizada con la función pivot, la cual nos
simplifica el código de la consulta.
Se tiene la siguiente
consulta con tabla pivote realizada con sql básico
Para realizar esta misma consulta con la función pivot se realiza lo siguiente :
1. Seleccionamos los campos que necesitamos en este caso el año y el mes donde cada año representa una fila y los meses las columnas.
Select * (Select extract(year from fecha_inventario) as anio,extract(month from fecha_inventario) as mes From equipos S )
2. Escribir la instrucción pivot a continuación de la consulta anterior
3. Hacer la función de agregación que necesitamos en este caso “count” y realizar el FOR y el IN
Pivot ( Count (mes) For mes in (1 as enero,2 as febrero,3 as marzo,4 as abril,5 as mayo,6 as junio,7 as julio,8 as agosto,9 as septiembre,10 as octubre,11 as noviembre,12 as diciembre) ) order by anio
Count (mes) para contar el numero de equipos por cada mes y luego el FOR<campo>
Como se puede observar al encontrar un “1” se devolverá “enero” y así sucesivamente.
y con esto ya esta realizada la consulta con la función PIVOT.
Nota: al incluir la clausula IN solamente se puede indicar un conjunto de valores, es decir un listado previamente conocido de valores ya que si queremos agregar las columnas de forma dinámica haciendo un SELECT IN nos dará un error ya que la función pivot no permite trabajar de esta manera.
Por ultimo un ejemplo de una consulta que agrega totales verticales y lo unico que se hace es un UNION ALL.
lunes, 3 de junio de 2013
La siguiente mini aplicación muestra como conectarse a una base de datos ingresando de forma manual los parámetros de conexión (bd, puerto, etc) y luego visualizar los datos de cualquiera de las tablas de la BD seleccionada, lo diferente que tiene a la mayoría de ejemplos mostrados en Internet es que se cargan las columnas de forma dinámica es decir que se cargan todas las columnas de la tabla y no solo un numero estático de columnas definidas en el programa, lo cual puede servir en muchos casos, con esto se tiene la conexión y la lectura de datos, si se quiere hacer cualquier otro uso como insertar , eliminar etc, se puede seguir el mismo patrón partiendo de este ejemplo.
En el .zip va incluido el driver (ultima version) para conectar java con postgres, se realizo en netbeans 7.3 con jdk 7u21.
La aplicación se ve así:
y en el cuadro de dialogo ingresan los valores correspondientes y en el combobox de la ventana principal pueden ver las tablas disponibles y ver los datos de cada una.
Pueden descargarla en: Java - Postgres
Nota: El código no es el mas optimo que digamos porque no tenia tiempo para mejorarlo, la prioridad era que funcionara XD y lo pueden notar en los métodos de la clase conexión pero puede ser mejorado y/o modificada de acuerdo a las necesidades.
Créditos a: http://gnucesar.wordpress.com/2008/07/22/conexion-a-postgres-desde-java/ ya que a partir de esta clase me base para hacer la conexión.
En el .zip va incluido el driver (ultima version) para conectar java con postgres, se realizo en netbeans 7.3 con jdk 7u21.
La aplicación se ve así:
y en el cuadro de dialogo ingresan los valores correspondientes y en el combobox de la ventana principal pueden ver las tablas disponibles y ver los datos de cada una.
Pueden descargarla en: Java - Postgres
Nota: El código no es el mas optimo que digamos porque no tenia tiempo para mejorarlo, la prioridad era que funcionara XD y lo pueden notar en los métodos de la clase conexión pero puede ser mejorado y/o modificada de acuerdo a las necesidades.
Créditos a: http://gnucesar.wordpress.com/2008/07/22/conexion-a-postgres-desde-java/ ya que a partir de esta clase me base para hacer la conexión.
jueves, 2 de mayo de 2013
Las siguientes consultas muestran como trabajar con CASE en sql haciendo uso de tablas dinámicas o pivote, subconsultas entre otras cosas que nos sirven para realizar consultas mas complejas a una base de datos.
Se muestra lo que se pide en la consulta y su resultado (imagen) de la misma, al final se puede descargar el script de la base de datos y el .sql con el código de las consultas. Las consultas se realizaron en postgresql.
Se tiene el siguiente modelo relacional
1. ¿Quién es el cliente que más ha comprado? Mostrar el número de cliente, el primer nombre y el total.
cliente que mas ha comprado (dinero gastado)
Aquí cabe resaltar la forma para mostrar el numero de cliente y el primer nombre junto con el máximo esto realizado con subconsultas.
2. ¿Cuál es la categoría más vendida y la menos vendida? (una sola consulta)
Mostrar en la primera línea el nombre de la categoría máxima y el total vendido y
en la segunda línea el nombre de la categoría mínima y el total vendido.
En esta consulta se utiliza la clausula UNION.
3. ¿Cuáles son los totales vendidos por categoría y por mes?
Mostrar la categoría, el total del mes 1 hasta el mes 12 y los subtotales tanto
horizontal como vertical
En esta consulta ya se trabaja con las tablas dinámicas mostrando la información que se tiene almacenada en filas como columnas.
4. ¿Cuáles son los totales vendidos por país y por categoría?
Mostrar el país, el total de la categoría Action hasta Travel y los subtotales tanto
horizontal como vertical
Otra consulta parecida a la numero 3 solo que un poco mas extensa.
5. ¿Cuáles son los totales vendidos por los mejores 5 vendedores por categoría?
Mostrar el nombre del vendedor, el total de la categoría Action hasta Travel y los
subtotales tanto horizontal como vertical.
Otra consulta con tablas dinámicas pero que para los totales de cada columna se necesita realizar una subconsulta con cada uno porque no se están tomando todos los datos sino que solo los cinco mayores.
Descarga: Consultas
Aquí cabe resaltar la forma para mostrar el numero de cliente y el primer nombre junto con el máximo esto realizado con subconsultas.
2. ¿Cuál es la categoría más vendida y la menos vendida? (una sola consulta)
Mostrar en la primera línea el nombre de la categoría máxima y el total vendido y
en la segunda línea el nombre de la categoría mínima y el total vendido.
En esta consulta se utiliza la clausula UNION.
3. ¿Cuáles son los totales vendidos por categoría y por mes?
Mostrar la categoría, el total del mes 1 hasta el mes 12 y los subtotales tanto
horizontal como vertical
En esta consulta ya se trabaja con las tablas dinámicas mostrando la información que se tiene almacenada en filas como columnas.
4. ¿Cuáles son los totales vendidos por país y por categoría?
Mostrar el país, el total de la categoría Action hasta Travel y los subtotales tanto
horizontal como vertical
Otra consulta parecida a la numero 3 solo que un poco mas extensa.
5. ¿Cuáles son los totales vendidos por los mejores 5 vendedores por categoría?
Mostrar el nombre del vendedor, el total de la categoría Action hasta Travel y los
subtotales tanto horizontal como vertical.
Otra consulta con tablas dinámicas pero que para los totales de cada columna se necesita realizar una subconsulta con cada uno porque no se están tomando todos los datos sino que solo los cinco mayores.
Descarga: Consultas
miércoles, 1 de mayo de 2013
Pequeño tutorial de como instalar postgresql en ubuntu, específicamente la ultima versión a la fecha de este sistema operativo.
Hay varias formas de realizarlo pero esta me parece de las mas sencillas ya que lo único que cambia en cuanto a su instalación con windows es que necesitamos dar permisos de ejecución al archivo .run y listo, lo ejecutamos desde la terminal como superusuario o doble clic en la carpeta como superusuario.
1. Descargamos la ultima versión desde el siguiente enlace.
2. Nos autenticamos como superusuario (sudo su) y nos vamos a la carpeta donde descargamos el archivo de postgresql.
Le damos permisos de ejecución (chmod +x <nombre_archivo>
como podemos ver en la primera parte donde liste los archivos de la carpeta (ls) aparece el de postgresql con letras blancas, al darle permisos de ejecución y al listar nuevamente aparece con letras verdes.
3. Ejecutamos (./<nombre_archivo>) el archivo y ya comienza la instalación normal.
y por ultimo ya podemos abrir Pgadmin III para trabajar con esta base de datos.
Hay varias formas de realizarlo pero esta me parece de las mas sencillas ya que lo único que cambia en cuanto a su instalación con windows es que necesitamos dar permisos de ejecución al archivo .run y listo, lo ejecutamos desde la terminal como superusuario o doble clic en la carpeta como superusuario.
1. Descargamos la ultima versión desde el siguiente enlace.
2. Nos autenticamos como superusuario (sudo su) y nos vamos a la carpeta donde descargamos el archivo de postgresql.
Le damos permisos de ejecución (chmod +x <nombre_archivo>
como podemos ver en la primera parte donde liste los archivos de la carpeta (ls) aparece el de postgresql con letras blancas, al darle permisos de ejecución y al listar nuevamente aparece con letras verdes.
3. Ejecutamos (./<nombre_archivo>) el archivo y ya comienza la instalación normal.
y por ultimo ya podemos abrir Pgadmin III para trabajar con esta base de datos.
On 15:18 by Unknown in Ubuntu No comments
La semana pasada se libero la ultima versión de Ubuntu, he usado ubuntu desde hace 3 años y he utilizado desde la versión 8 hasta esta ultima y la verdad que al principio me funciono excelente pero ya a partir de la versión 11.10 empece a tener problemas de compatibilidad, errores bastante raros y con la versión que trabaje bastante fue con la 12.10 y me pareció bastante inestable en comparación con las anteriores.
Entonces decidí esperar esta ultima versión y ver si había mejorado en algo y la respuesta es SI, esta versión ha mejorado bastante en comparación a su predecesora y resaltare los puntos de mejora :
1. Inicio mas rápido: El inicio es bastante rápido aproximadamente unos de 10-15 segundos, no mas que W8 pero si mas rápido que ubuntu 12.xx o alguna otra versión de windows.
2. Apagado casi instantáneo El apagado de ubuntu casi siempre ha sido un poco lento, ahora vuela, solamente clic a la opción apagar, luego al menú de apagado que aparece y en cuestión de segundos se apaga el sistema.
3. rapidez en Unity: Una de las cosas que no ayudaban mucho era la lentitud al querer buscar alguna aplicación con unity ahora encuentra todo bastante rápido.
4. Fluides en el Sistema: Da esa sensación de fluidez y rapidez al navegar por carpetas, trabajar en el escritorio y correr aplicaciones.
El único problema que tengo es que no me reconoce el 100% de mi batería y intente probar cuanto dura la carga y es aproximadamente 1h 35min mientras que en windows casi 2h 30min y no se si tenga que ver con el hardware o ya sea problema directamente del S.O.
Pero ignorando lo anterior hasta ahora mi experiencia ha sido bastante buena ya hasta le he agarrado gusto a unity (no me gustaba) y en resumen se puede decir que ubuntu 13.04 es RAPIDO.
Queda explorarlo y trabajar con el a fondo para ver si en realidad ha sido mejorado en todos los aspectos posibles.
1. Inicio mas rápido: El inicio es bastante rápido aproximadamente unos de 10-15 segundos, no mas que W8 pero si mas rápido que ubuntu 12.xx o alguna otra versión de windows.
2. Apagado casi instantáneo El apagado de ubuntu casi siempre ha sido un poco lento, ahora vuela, solamente clic a la opción apagar, luego al menú de apagado que aparece y en cuestión de segundos se apaga el sistema.
3. rapidez en Unity: Una de las cosas que no ayudaban mucho era la lentitud al querer buscar alguna aplicación con unity ahora encuentra todo bastante rápido.
4. Fluides en el Sistema: Da esa sensación de fluidez y rapidez al navegar por carpetas, trabajar en el escritorio y correr aplicaciones.
El único problema que tengo es que no me reconoce el 100% de mi batería y intente probar cuanto dura la carga y es aproximadamente 1h 35min mientras que en windows casi 2h 30min y no se si tenga que ver con el hardware o ya sea problema directamente del S.O.
Pero ignorando lo anterior hasta ahora mi experiencia ha sido bastante buena ya hasta le he agarrado gusto a unity (no me gustaba) y en resumen se puede decir que ubuntu 13.04 es RAPIDO.
Queda explorarlo y trabajar con el a fondo para ver si en realidad ha sido mejorado en todos los aspectos posibles.
lunes, 29 de abril de 2013
El siguiente ejemplo muestra la redistribución entre protocolos de enrutamiento.
Tenemos la siguiente topologia:
Como se ve en la imagen vamos a redistribuir entre ospf - rip y entre ospf-eigrp.
R1 tiene protocolo rip
R2 tiene protcolo rip y tambien ospf asi como redistribucion de rip a ospf y redistrubucion de ospf a rip.
R3 y R4 tienen ospf
R5 tiene ospf y eigrp asi como la redistribucion entre ambos.
R6 tiene protcolo eigrp
Se hacen las respectivas configuraciones de las ip de cada puerto, se asignan protocolos y ya es posible hacer pruebas para ver si redistribuimos de forma correcta.
Por ejemplo un traceroute de R6 a R1
y por ultimo ping del host ubuntu al winxp y tracert de winxp a ubuntu respectivamente
.
Dejo los archivos de configuración de los routers por si le sirve para ver la sintaxis y entender de mejor forma el enrutamiento dinámico.
Configs
Tenemos la siguiente topologia:
Como se ve en la imagen vamos a redistribuir entre ospf - rip y entre ospf-eigrp.
R1 tiene protocolo rip
R2 tiene protcolo rip y tambien ospf asi como redistribucion de rip a ospf y redistrubucion de ospf a rip.
R3 y R4 tienen ospf
R5 tiene ospf y eigrp asi como la redistribucion entre ambos.
R6 tiene protcolo eigrp
Se hacen las respectivas configuraciones de las ip de cada puerto, se asignan protocolos y ya es posible hacer pruebas para ver si redistribuimos de forma correcta.
Por ejemplo un traceroute de R6 a R1
y por ultimo ping del host ubuntu al winxp y tracert de winxp a ubuntu respectivamente
.
Dejo los archivos de configuración de los routers por si le sirve para ver la sintaxis y entender de mejor forma el enrutamiento dinámico.
Configs
domingo, 21 de abril de 2013
Cada uno de los protocolos de enrutamiento dinámico es usado para diferentes propósitos de acuerdo a las características de cada uno y comúnmente se utilizan juntos en redes de gran tamaño.
En el post anterior se mostro un ejemplo del protocolo RIP, en este se mostrara nuevamente su sintaxis asi como tambien como hacer que se comunique con otros protocolos (comando redistribute) y lo mismo para el protocolo EIGRP y el OSPF.
conf t
router rip
version 2
network <red_directa>
exit
Si en dado caso tenemos un router que tiene que redistribuir el protocolo OSPF agregamos entonces:
conf t
router rip
version 2
redistribute ospf [ID] metric 1
exit
Si lo que queremos distribuir es el protcolo EIGRP entonces:
conf t
router rip
version 2
redistribute eigrp [SA] metric 1
exit
o bien si ya sabemos previamente que debemos redistribuir protcolos lo hacemos todo junto desde el inicio.
conf t
router rip
version 2
network <red_directa>
--redistribucion--
exit
Donde [ID] es el valor asignado al protocolo OSPF y metric 1 es el valor de la métrica por defecto y
[SA] es el valor asignado al sistema autónomo del protcolo eigrp.
conf t
router eigrp <SA>
network <red_directa> <wilcard>
exit
<SA> es el valor de sistema autonomo que le asignemos al protcolo eigrp el cual es un numero entre 1 - 65535. NOTA: todos los routers que esten relacionados con el protocolo eigrp deben tener el mismo numero de SA.
Para redistribuir RIP:
conf t
router eigrp <SA>
redistribute rip metric 10000 10 255 1 1500
exit
donde los valores de metric son : <ancho_banda> <retraso><confiabilidad><carga><mtu>
para mas informacion sobre estas metricas pueden ir a:
metricas EIGRP
Para redistribuir OSPF:
conf t
router eigrp <SA>
redistribute ospf [ID] metric 10000 100 255 1 1500
exit
conf t
router ospf <id>
network <red_directa> <wilcard> area <num_area>
exit
donde <id> es un numero entre 1 y 65535 y debe ser común entre los demás routers que se relacionen con el protocolo ospf y el área también debe ser el mismo numero en los demás routers.
Para redistribuir RIP:
conf t
router ospf <id>
redistribute rip subnets
exit
Para redistribuir EIGRP:
conf t
router ospf <id>
redistribute eigrp [SA] metric 500 subnets
exit
Para mas información sobre las métricas de OSPF: Metricas OSPF
Esa es la sintaxis básica para configurar protocolos y la redistribución En el siguiente post se mostrara un ejemplo realizado en GNS3 en donde se utilizaran los 3 protcolos juntos.
En el post anterior se mostro un ejemplo del protocolo RIP, en este se mostrara nuevamente su sintaxis asi como tambien como hacer que se comunique con otros protocolos (comando redistribute) y lo mismo para el protocolo EIGRP y el OSPF.
Sintaxis protocolo Rip:
conf t
router rip
version 2
network <red_directa>
exit
Si en dado caso tenemos un router que tiene que redistribuir el protocolo OSPF agregamos entonces:
conf t
router rip
version 2
redistribute ospf [ID] metric 1
exit
Si lo que queremos distribuir es el protcolo EIGRP entonces:
conf t
router rip
version 2
redistribute eigrp [SA] metric 1
exit
o bien si ya sabemos previamente que debemos redistribuir protcolos lo hacemos todo junto desde el inicio.
conf t
router rip
version 2
network <red_directa>
--redistribucion--
exit
Donde [ID] es el valor asignado al protocolo OSPF y metric 1 es el valor de la métrica por defecto y
[SA] es el valor asignado al sistema autónomo del protcolo eigrp.
Sintaxis Protocolo EIGRP
router eigrp <SA>
network <red_directa> <wilcard>
exit
<SA> es el valor de sistema autonomo que le asignemos al protcolo eigrp el cual es un numero entre 1 - 65535. NOTA: todos los routers que esten relacionados con el protocolo eigrp deben tener el mismo numero de SA.
Para redistribuir RIP:
conf t
router eigrp <SA>
redistribute rip metric 10000 10 255 1 1500
exit
donde los valores de metric son : <ancho_banda> <retraso><confiabilidad><carga><mtu>
para mas informacion sobre estas metricas pueden ir a:
metricas EIGRP
Para redistribuir OSPF:
conf t
router eigrp <SA>
redistribute ospf [ID] metric 10000 100 255 1 1500
exit
Sintaxis protocolo OSPF
conf t
router ospf <id>
network <red_directa> <wilcard> area <num_area>
exit
donde <id> es un numero entre 1 y 65535 y debe ser común entre los demás routers que se relacionen con el protocolo ospf y el área también debe ser el mismo numero en los demás routers.
Para redistribuir RIP:
conf t
router ospf <id>
redistribute rip subnets
exit
Para redistribuir EIGRP:
conf t
router ospf <id>
redistribute eigrp [SA] metric 500 subnets
exit
Para mas información sobre las métricas de OSPF: Metricas OSPF
Esa es la sintaxis básica para configurar protocolos y la redistribución En el siguiente post se mostrara un ejemplo realizado en GNS3 en donde se utilizaran los 3 protcolos juntos.
martes, 16 de abril de 2013
Vamos a ver como configurar el protocolo RIP que es el protocolo mas sencillo de ruteo dinamico, utilizando GNS3.
1. Tenemos la siguiente topologia:
3 routers con protocolo RIP y dos maquinas virtuales (virtualBox) con Windows xp.
2. la configuración del router 3 (R3) seria de la siguiente manera:
2.1 asignamos la dirección ip a cada una de las interfaces del router (f0/0 y f0/1) donde las ip serian 10.0.0.1 y 30.0.0.2 respectivamente (en la imagen se muestran todas las direcciones).
asignadas todas las direcciones en los routers (asumo que ya saben hacerlo) vamos a configurar el protocolo, para R3 seria:
en
conf t
router rip
version 2
network 10.0.0.0
network 30.0.0.0
exit
donde lo único que cambia es network <red_conectada_directamente>
y como este tiene 2 redes se colocan las 2, si solo tuviera 1 solo se coloca 1.
Se configuran los dos siguientes routers de la misma forma y se configuran los equipos al final.
Los equipos deben de tener configurado el adaptador de ethernet 2 ya que la maquina virtual tiene 2 por defecto, el primero se desactiva y el segundo se modifica colocándole la ip, mascara y default gateway.
Por ejemplo para la maquina winxp (ver imagen) sus datos serian:
Como podemos ver en la imagen el adaptador 1 esta desactivado, la ip es la que se muestra en el diagrama igual que la mascara y el default gateway es la direccion de la interfaz del router que se comunica con la PC.
Hecho lo anterior ya se pueden realizar pruebas de ping, ya sea entre routers o de una computadora a la otra.
1. Ping desde R3 hacia f0/1 de R1
2. ping de winxp hacia R2
3. ping de winxp hacia winxp (Desactivar firewall en ambas PC's)
Esta configuracion es mucho mas sencilla que el ruteo dinamico y pues se pueden realizar distintas topologias siguiendo los estandares de dicho protocolo.
1. Tenemos la siguiente topologia:
2. la configuración del router 3 (R3) seria de la siguiente manera:
2.1 asignamos la dirección ip a cada una de las interfaces del router (f0/0 y f0/1) donde las ip serian 10.0.0.1 y 30.0.0.2 respectivamente (en la imagen se muestran todas las direcciones).
asignadas todas las direcciones en los routers (asumo que ya saben hacerlo) vamos a configurar el protocolo, para R3 seria:
en
conf t
router rip
version 2
network 10.0.0.0
network 30.0.0.0
exit
donde lo único que cambia es network <red_conectada_directamente>
y como este tiene 2 redes se colocan las 2, si solo tuviera 1 solo se coloca 1.
Se configuran los dos siguientes routers de la misma forma y se configuran los equipos al final.
Los equipos deben de tener configurado el adaptador de ethernet 2 ya que la maquina virtual tiene 2 por defecto, el primero se desactiva y el segundo se modifica colocándole la ip, mascara y default gateway.
Por ejemplo para la maquina winxp (ver imagen) sus datos serian:
Como podemos ver en la imagen el adaptador 1 esta desactivado, la ip es la que se muestra en el diagrama igual que la mascara y el default gateway es la direccion de la interfaz del router que se comunica con la PC.
Hecho lo anterior ya se pueden realizar pruebas de ping, ya sea entre routers o de una computadora a la otra.
1. Ping desde R3 hacia f0/1 de R1
2. ping de winxp hacia R2
3. ping de winxp hacia winxp (Desactivar firewall en ambas PC's)
Esta configuracion es mucho mas sencilla que el ruteo dinamico y pues se pueden realizar distintas topologias siguiendo los estandares de dicho protocolo.
lunes, 15 de abril de 2013
Para realizar topologias de gran tamaño, para mejor simulación o distintos factores podemos utilizar diferentes computadoras físicas para dicha topologia y conectarlas, la forma mas sencilla de hacerlo es por medio de cable cruzado.
El siguiente es un ejemplo sencillo con un solo router y una nube en cada computadora el cual es la base para realizar diagramas mucho mas grandes.
Antes de empezar los puntos importantes a tomar en cuenta y los problemas mas comunes por los cuales no se puede tener comunicación entre las dos computadoras son los siguientes:
1. Mala configuración de la red. Es decir no asignamos correctamente las direcciones IP a las interfaces (puertos).
2. Incorrecta configuracion de la nube. Una nube nos sirve para la comunicación con la otra computadora, es decir es nuestro enlace de entrada y salida por lo que es necesario tenerla para este tipo de conexión y configurarla de forma adecuada.
3. Firewall activado: Si el firewall de una o ambas computadoras esta activado no se podrá realizar la comunicación debido a la seguridad que este impone por lo que es necesario desactivarlo.
4. En el ultimo de los casos si todo lo anterior esta bien, el antivirus puede estar bloqueando la comunicación entre ambas computadoras por lo que habrá que revisar los parámetros de configuración del antivirus o bien desactivarlo.
Tomando en cuenta los puntos vamos con el ejemplo:
1. Agregamos un router y una nube.
2. De momento no es posible conectarlos ya que debemos configurar una interfaz para la nube
3. Clic derecho en la nube y nos vamos al combo box que se ve en la imagen.
elegimos la opción Ethernet ya que por ella nos comunicaremos, clic en "add", "apply" y "ok ", ahora ya podemos conectar el router con la nube.
4. Configuramos el router asignando la ip al puerto conectado a la nube, por ejemplo la dirección 192.168.0.1/24
5. Realizamos lo mismo en la computadora 2 y asignamos la direccion 192.168.0.2/24
6. Conectamos el cable entre las 2 computadoras y realizamos pruebas de ping, como mencione tomando en cuenta los puntos mencionados al principio si todo esta correcto no debe de dar problema y asi de sencillo nos comunicamos entre 2 pc's. Para una topologia mas compleja es el mismo caso y solo es de configurar correctamente los routers.
En la imagen anterior vemos al router conectado a la nube, esa nube lo que hace es simularnos el router de la otra maquina es decir como que tuvieramos:
Pero como son en diferentes PC'S por eso se utiliza la nube.
sábado, 6 de abril de 2013
El siguiente ejemplo es sobre como realizar un ruteo estático sencillo utilizando gns3.
Asumiendo que ya tienen instalado e importada al menos una imagen de algunos de los routers
de este simulador voy a explicar como realizar el ruteo.
Realizar el diagrama de forma física conectando los routers y agregando las etiquetas para identificar mas fácil las redes y las direcciones IP.
Una vez teniendo el diagrama iniciamos los routers.
Encendidos se les debe asignar una direccion IP a cada uno de los puertos de los routers en uso para ello se hace lo siguiente.
clic derecho en el router, clic en console se utilizan los siguientes comandos:
en
conf t
int <puerto>
no shutdown
ip address <direccion_ip> <mascara de red>
exit
exit
Por ejemplo para R1 (ver diagrama ) seria:
en
conf t
int f0/0
no shutdown
ip address <20.0.0.2> <255.255.255.0>
exit
exit
y esto se hace para cada uno de los routers, por ejemplo para el router R2 que tiene 3 interfacez (puertos) configurados se les debe asignar una ip a cada uno por ejemplo:
en
conf t
int f0/0
no shutdown
ip address <20.0.0.1> <255.255.255.0>
exit
int f0/1
no shutdown
ip address <30.0.0.1> <255.255.255.0>
exit
int f1/0
no shutdown
ip address <10.0.0.2> <255.255.255.0>
exit
Terminado de asignar las direcciones se puede verficar haciendo ping entre los routers que estan conectados directamente. Ahora si viene la parte del ruteo estatico donde se le indica a cada router por donde llegar hacia una red que no conoce por ejemplo ir de R1 hacia R5. Si miramos el diagrama R1 esta conectado en la red 20.0.0.0 pero no hay forma de llegar a la 10.0.0.0 o a la 30.0.0.0 entonces su ruteo estatico seria:
#R1
conf t
ip route <red_destino><mascara_red_destino><interfaz_por_donde_llega>
exit
#R1
conf t
ip route 10.0.0.0 255.255.255.0 20.0.0.1
ip route 10.0.0.0 255.255.255.0 30.0.0.1
exit
Para ver como quedo configurado el ruteo podemos ejecutar:
#R1
show ip route
y para ver la direccion ip de los puertos
#R1
sh ip int brief
y para ver la configuracion completa del router
#R1
show run
Terminado de asignar las rutas estaticas en los routers R2 y R5 (R3 conecta con todas las redes por lo que no se configura) ya es posible realizar las pruebas de hacer ping entre todos los routers.
Por ejemplo en R5 hacer un ping hacia 10.0.0.1
y con esto queda configurado el ruteo estatico.
NOTA: las imagenes ISO utilizadas son del router 2691, para guardar el proyecto se marcan ambos checkbox (save nrams..... y save IOS....) y por ultimo para escribir la configuracion de los routers y no perderla al apagarlos (recordemos que se guarda en la ram de los routers) usamos el comando "write" o "wr".
Asumiendo que ya tienen instalado e importada al menos una imagen de algunos de los routers
de este simulador voy a explicar como realizar el ruteo.
Realizar el diagrama de forma física conectando los routers y agregando las etiquetas para identificar mas fácil las redes y las direcciones IP.
Una vez teniendo el diagrama iniciamos los routers.
Encendidos se les debe asignar una direccion IP a cada uno de los puertos de los routers en uso para ello se hace lo siguiente.
clic derecho en el router, clic en console se utilizan los siguientes comandos:
en
conf t
int <puerto>
no shutdown
ip address <direccion_ip> <mascara de red>
exit
exit
Por ejemplo para R1 (ver diagrama ) seria:
en
conf t
int f0/0
no shutdown
ip address <20.0.0.2> <255.255.255.0>
exit
exit
y esto se hace para cada uno de los routers, por ejemplo para el router R2 que tiene 3 interfacez (puertos) configurados se les debe asignar una ip a cada uno por ejemplo:
en
conf t
int f0/0
no shutdown
ip address <20.0.0.1> <255.255.255.0>
exit
int f0/1
no shutdown
ip address <30.0.0.1> <255.255.255.0>
exit
int f1/0
no shutdown
ip address <10.0.0.2> <255.255.255.0>
exit
Terminado de asignar las direcciones se puede verficar haciendo ping entre los routers que estan conectados directamente. Ahora si viene la parte del ruteo estatico donde se le indica a cada router por donde llegar hacia una red que no conoce por ejemplo ir de R1 hacia R5. Si miramos el diagrama R1 esta conectado en la red 20.0.0.0 pero no hay forma de llegar a la 10.0.0.0 o a la 30.0.0.0 entonces su ruteo estatico seria:
#R1
conf t
ip route <red_destino><mascara_red_destino><interfaz_por_donde_llega>
exit
#R1
conf t
ip route 10.0.0.0 255.255.255.0 20.0.0.1
ip route 10.0.0.0 255.255.255.0 30.0.0.1
exit
Para ver como quedo configurado el ruteo podemos ejecutar:
#R1
show ip route
y para ver la direccion ip de los puertos
#R1
sh ip int brief
y para ver la configuracion completa del router
#R1
show run
Terminado de asignar las rutas estaticas en los routers R2 y R5 (R3 conecta con todas las redes por lo que no se configura) ya es posible realizar las pruebas de hacer ping entre todos los routers.
Por ejemplo en R5 hacer un ping hacia 10.0.0.1
y con esto queda configurado el ruteo estatico.
NOTA: las imagenes ISO utilizadas son del router 2691, para guardar el proyecto se marcan ambos checkbox (save nrams..... y save IOS....) y por ultimo para escribir la configuracion de los routers y no perderla al apagarlos (recordemos que se guarda en la ram de los routers) usamos el comando "write" o "wr".
Suscribirse a:
Entradas (Atom)
Search
Categories
android
(2)
Animacion 3D
(3)
aspx
(4)
bases de datos
(7)
Blender
(3)
C
(1)
C#
(4)
cisco
(1)
Compiladores
(11)
conceptos
(1)
cup
(2)
DB2
(2)
gns3
(5)
Irony
(3)
Java
(3)
kvm
(1)
linux
(5)
manual express latex
(1)
MongoDB
(1)
ocio
(3)
oracle
(3)
poo
(1)
Postgresql
(4)
programacion
(9)
Redes
(7)
resumen
(1)
soluciones
(1)
SQL
(16)
sqlserver
(1)
teoría
(5)
Ubuntu
(9)
Uwintu
(1)
VB
(1)
windows
(2)
Statistics
Con la tecnología de Blogger.































