martes, 9 de septiembre de 2014

Practica 2 - Taller de Redes Avanzadas


DISPOSITIVOS PARA INTERCONEXIÓN DE REDES

OBJETIVO:
  • Relacionar los componentes de los hubs, de los switches y de los routers conforme la explicacion del maestro.
  • Documentar (tomando notas y fotografias) los diferentes componentes del router, identificando los componentes relacionados con cada funcion de acuerdo al diagrama de bloques del router.
  • Elaborar reporte en Blog personal que describa el funcionamiento del router que incluya datos sobre marca, modelo, versión de firmware, tipo de procesador, cantidad y tipo de interfaces del router.

Se llego a la conclusión que sus diseños son muy similares al de una computadora, a diferencia que estos tienen otro tipo de periféricos orientados a realizar su tarea en especifico.En clase analice 2 equipos (un repetidor Ethernet Dlink y un router de cisco) y además de una tarjeta de expansión para un switch modular.
Como complemento analice un equipo de mi propiedad un switch 3com 2024.

D-link Repetidor Ethernet DE-804

En el modelo de referencia OSI un repetidor trabaja en el nivel 1 (capa física). La función de un repetidor es retransmitir una señal débil o de bajo nivel a una potencia de un nivel mas alto. Esto para evitar la degradación de señal en el recorrido de distancias largas.
Un repetidor analógico amplifica una señal de entrada (analógica o digital). Mientras que un repetidor digital amplifica, reinterpreta, retemporiza un señal digital
 
 4 puertos 10Base2/10Base5
Conectores AUI y BNC
 En la imagen se puede observar, encerrado en color rojo, la fuente conmutada del aparato. En color verde los chips encargados de controlar cada puerto.
 En la siguiente imagen se aprecia, encerrado en color verde, el procesador del repetidor.

Enterasys ESXMIM

A diferencia de un hub el switch es mas "inteligente" ya que tiene la capacidad de reconocer las direcciones MAC de los equipos conectados a sus puertos. Con lo cual tiene la capacidad de mandar la información de un puerto de entrada al puerto de salida de acuerdo su tabla CAM.

Este modulo contiene 5 puertos Ethernet y 2 mas a 50 ohms. Este switch trabaja a nivel de la capa 2 del modelo OSI.
En color verde podemos observar los sockets para los dos CPUs de la marca Intel. El Intel i960 (también llamado 80960) era un diseño de microprocesador basado en RISC que llegó a ser absolutamente popular durante los principios de los años 1990 como microcontrolador embebido.

Switch 3com 2024

El switch contiene 24 puertos Ethernet 10BaseT y 100BaseT, maneja velocidades Half y Full duplex, soporta MDI-X, soporta transferencia de datos de 10/100Mb/s.
En color rojo podemos observar la fuente conmutada. En verde los CPUs del switch, además en amarillo los buffers.
Cada CPU controla 8 puertos Ethernet. El CPU es fabricado por la compañía Altima (AC52A1KQM)

Cisco CiscoPro 1000 Series CPA1005 Router

Un router o enrutador es un dispositivo que trabaja en la capa 3 del modelo OSI. Su función consiste en enviar los paquetes de red por la ruta más adecuada en cada momento. Para ello almacena los paquetes recibidos y procesa la información de origen y destino que poseen. Con arreglo a esta información reenvía los paquetes a otro router o bien al host final, en una actividad que se denomina 'encaminamiento'. Por lo cual es el encargado de interconectar redes.
 1 puerto Ethernet
1 puerto Serial
1 puerto de consola CISCO
 Aquí podemos apreciar en color el slot para la memoria ram del router, en color amarillo el puerto de la memoria PCMCIA (Personal Computer Memory Card International Association). La PCMCIA es la Flash ROM en donde reside el sistema operativo del router.
En verde los procesadores que se encargan de las operaciones del router.
 CL-PD6720 adaptador de ISA-PC
En rojo podemos observar el CPU (mc58en360fe25c) del router, en azul cristal generador de frecuencias. El verde un CPLD de Altera.


Arnulfo Cornejo Bañuelos

viernes, 18 de mayo de 2012

/Programación - JavaFX 2.0 parte 1/


En este tutorial voy a comentarles sobre JavaFX 2.0 y haremos una aplicación un reproductor de audio simple. 


Prácticamente es una nueva librería que se agregó a java a finales del 2011 su ejecución es del lado del cliente, es una plataforma que nos sirve para crear RIAs (Rich Internet Applications) o Aplicaciones para internet enriquecidas; podemos afirmar que JavaFX nos proporcionara un conjunto muy completo de gráficos, multimedia y medios de comunicación. Podría decirse, como comparación, que es la evolución de SWING y AWT y pudiendo ser la competencia de Flash de Adobe.
Su antecesor JavaFX 1.X era considerado un Script y por lo tanto no se podía relacionar mucho con java y aparte se tenia que aprender su sintaxis desde 0.

En la Conferencia JavaOne del 2010 se hizo demostración de lo que podía hacer JavaFX 2.0, desde gráficos 2D, 3D, Audio y Video y todo lo podemos obtener y manipular de una manera mas accesible de lo que era con SWING y AWT. A continuación el video de JavaOne 2010




Más ejemplos de JavaFX 2.0 en JavaOne 2011




Por lo visto anteriormente JavaFX 2.0 es sorprendente, pero que nos ofrece:

  • API de Java para JavaFX que proporcionan todas las características del lenguaje familiares (como los medicamentos genéricos, anotaciones y multithreading) que los desarrolladores de Java están acostumbrados a usar. Las API están diseñadas para ser amigable con otras lenguas de JVM, como JRuby y Scala. Debido a que las capacidades JavaFX están disponibles a través de las API de Java, se puede seguir utilizando sus herramientas favoritas para desarrolladores de Java (por ejemplo, entornos de desarrollo, la refactorización de código, depuradores, perfiladores y) para desarrollar aplicaciones JavaFX.
  • Un nuevo motor de gráficos para manejar las modernas unidades de procesamiento gráfico (GPU). La base de este nuevo motor es un hardware de aceleración pipeline de gráficos, llamado Prism, que se combina con un conjunto de herramientas de ventanas, llamado cristal. Este motor gráfico proporciona la base para los avances actuales y futuros para hacer una atractiva presentación gráfica sencilla, suave y rápida.
  • FXML, un nuevo lenguaje de marcado declarativo que está basado en XML y se utiliza para definir la interfaz de usuario en una aplicación de JavaFX. No es un lenguaje compilado y, por tanto, no requiere volver a compilar el código cada vez que haga algún cambio en el diseño.
  • Un nuevo motor de los medios de comunicación que soporta la reproducción del contenido multimedia en la Web. Proporciona una estable, de baja latencia marco de los medios de comunicación que se basa en el marco de GStreamer multimedia.
  • Un componente de la banda que le da la capacidad de incorporación de las páginas web en una aplicación JavaFX utilizando la tecnología de renderizado WebKit HTML.Renderizado acelerado por hardware está disponible usando Prism.
  • Un navegador renovado plug-in para JavaFX 2 que permite la carga de los applets JavaFX basadas en Prism.
  • Una amplia variedad de controles integrados de interfaz de usuario , que incluyen gráficos, tablas, menús y paneles. Además, una API se proporciona para permitir a terceros para contribuir controles de interfaz de usuario que la comunidad de usuarios puede utilizar.
  • Las aplicaciones de ejemplo que muestran las diferentes características de la tecnología JavaFX 2, junto con un gran número de ejemplos de código y los fragmentos.
  • Un doclet actualizada utiliza con la herramienta Javadoc para generar documentación de la API de JavaFX en formato HTML.

Ventajas


  • Si sabes Java, no será complicado programar JavaFX porque esta escrito en Java.
  • La comunidad Java es enorme por lo cual encontrar material para aprender JavaFX será fácil.
  • Java se puede relacionar con total normalidad con JavaFX.
  • Todo lo anterior hace que desarrollar aplicaciones JavaFX sea fácil y rápido, reduciendo costos.
  • Es multiplataforma


¿Cuáles son los planes a futuro de JavaFX? 
Bueno Oracle y el Equipo de JavaFX nos muestran la siguiente línea de tiempo:

roadmap diagram

Actualmente, JavaFX esta limitado su uso solo a Windows y a Mac OS X, pero antes del 2014 será multiplataforma como Java.



¿Cómo lo puedo conseguir? 
Esta incluido en el JDK de java

http://www.oracle.com/technetwork/java/javase/overview/index.html
En la sección de Downloads se encuentra la descarga del JDK




¿Cómo puedo empezar a programar?
NetBeans en su versión 7.1 en delante soporta JavaFX

Solo tienes que descargarlo de su página oficial, nos ofrece la posibilidad de programar en diferentes sistemas operativos, aunque pues como se menciono anteriormente solo en Windows y Mac OSX podemos programar JavaFX.

NetBeans además de poder programar en Java, nos ofrece otros lenguajes como C++ y PHP, aquí la elección es libre dependiendo de nuestras necesidades, para este tutorial nos sirve la versión JavaSE y JavaEE
Nota: Antes de Instalar NetBeans es muy importante tener instalado el JDK de Java

Al abrir NetBeans lo primero que haremos será crear un nuevo proyecto (paso 1 en la imagen), seleccionar JavaFX (paso 2 de la imagen), y seleccionar JavaFX Application (paso 3 de la imagen) y damos siguiente.

Le damos un nombre a nuestra aplicación y damos Terminar

A continuación  podemos observar en la barra lateral izquierda se nos muestra nuestro proyecto y de lado derecho nuestro código. Por default se nos genera el código de toda primer aplicación el “Hello World” o “Hola Mundo”.

Ejecutamos el programa con la tecla F6


Nos Mostrara un ventana como esta con un botón que dice “Say “Hello World””, felicidades ya diste el primer paso a JavaFX 2.0, en la parte 2 del tutorial analizaremos el código y haremos algunas modificaciones.

Para más información acerca de JavaFX 2.0

jueves, 17 de mayo de 2012

/Computación - Servidor FTP Básico Windows/


Hola que tal

En este tutorial vamos a crear un servidor ftp básico en windows, nos servirá para compartir archivos o para recibir archivos de nuestras redes locales o internet, etc. Es muy práctico ya que por aquí puedes intercambiar archivos muy grandes.

Muy bien entonces

Vamos a definir FTP:

FTP (File Transfer Protocol, 'Protocolo de Transferencia de Archivos') en informática, es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP (Transmission Control Protocol), basado en la arquitectura cliente-servidor. Desde un equipo cliente se puede conectar a un servidor para descargar archivos desde él o para enviarle archivos, independientemente del sistema operativo utilizado en cada equipo.
El servicio FTP es ofrecido por la capa de aplicación del modelo de capas de red TCP/IP al usuario, utilizando normalmente el puerto de red 20 y el 21. 
Modelo FTP:

Un problema básico de FTP es que está pensado para ofrecer la máxima velocidad en la conexión, pero no la máxima seguridad, ya que todo el intercambio de información, desde el login y password del usuario en el servidor hasta la transferencia de cualquier archivo, se realiza en texto plano sin ningún tipo de cifrado, con lo que un posible atacante puede capturar este tráfico, acceder al servidor y/o apropiarse de los archivos transferidos.
Para solucionar este problema son de gran utilidad aplicaciones como scp y sftp, incluidas en el paquete SSH, que permiten transferir archivos pero cifrando todo el tráfico. Este problema lo resolveremos en la parte 2 del tutorial.

Las Herramientas que necesitaremos serán las siguientes

No-Ip

Vitalwerks LLC es la compañía matriz de No-IP, que es un DNS dinámico proveedor de servicios de pago y gratuitos. No-IP ofrece servicios de DNS, correo electrónico, monitorización de red y certificados SSL. Servicios de correo electrónico incluyen POP3 de correo electrónico, de salida SMTP de correo electrónico, servicios de copia de seguridad de correo electrónico y la reflexión y el filtrado.
Utilizaremos No-Ip Free

El servicio que utilizaremos será el Dynamic DNS Updating  para asociar un dominio o subdominio a la IP de nuestro servidor FTP y que se puede acceder a el desde otra red que no sea LAN.
Aquí realizaremos varios pasos

Darnos de alta como usuarios, como comente anteriormente utilizaremos No-Ip Free.

Seleccionaremos el recuadro encerrado en rojo

Aquí oprimiremos la opción de “Sing Up Now!”, para mas información la página nos muestra brevemente todo lo que nos ofrece la versión gratuita por ejemplo acceso remoto a nuestra pc, re direccionamiento al puerto 80 y subdominios gratuitos.

Tenemos que rellenar un simple formulario, y posteriormente No-Ip nos mandara un enlace a nuestro correo para activar la cuenta.

Descargaremos el Cliente de Actualización Dinámica DNS, el cual es el encargado de asociar nuestra IP, ya sea dinámica o estática, al subdominio o a los subdominios, que registremos.


Iremos a la pestaña “Host/Redirects” y en la opción “Download Client”, después nos pedirá el tipo de sistema operativo, escogeremos Windows ya que nuestro servidor FTP  será Windows.

Una vez descargado e instalado procederemos a crear un subdominio, No-Ip te deja solamente crear 3 host por cuenta y se pueden asociar a la misma IP o a diferentes IP esto lo configuramos con el Cliente DNS, volviendo a la imagen anterior, seleccionamos la opción “Add Host”
Para este ejemplo solo necesitamos, los siguientes campos:

  • Hostname – Le damos un nombre a nuestro subdominio y seleccionamos un dominio que nos proporciona No-Ip,
Por ejemplo de acuerdo a lo que llene, el hostname de mi servidor FTP es vcoregames.myftp.org
  • Host Type – Seleccionaremos DNS Host(A), el cual nos asocia la dirección IP de nuestro servidor a nuestro host.
Los Tipos son los siguientes:
DNS Host (A): Esta es la opción más común. Se asigna el nombre de host a una dirección IP.
DNS Host (Round Robin): Esta vinculación asigna el nombre de host a IPs múltiples. Sólo se utiliza para el balanceo de carga basado en DNS (no es común).
DNS Alias (CNAME): Este asigna el nombre de un host a otro host. Es útil para señalar muchas máquinas al mismo lugar y actualizarlas fácilmente.
Port 80 Redirect: El re direccionamiento del puerto 80  se utiliza para moverse por los ISPs que bloquean el puerto 80 de entrada. Al utilizar el presente y tener en funcionamiento el servidor web nos ayuda a que los usuarios pueden acceder al sitio web sin tener que introducir el número de puerto en la URL.
Web Redirect: Esta vinculación asigna el nombre de host a una dirección URL. Sólo funcionan para HTTP y no se puede utilizar para acceder remotamente a su ordenador.
El uso de cada uno depende de la aplicación.
  • IP Address – Aquí en automático ponen tu IP actual, si llegara a cambiar el cliente DNS se encarga de actualizar esta información.
Con esto es suficiente, seleccionamos “Create Host” y listo.

Ahora vamos con el cliente DNS su interface es la siguiente:

Configuración
  • Edit – Pondremos nuestro correo con el que nos registramos y la contraseña
  • Select Hosts – Aparecerán los hosts que hayamos creado en los pasos anteriores. En mi caso solo aparece lo siguiente:

  
  • Refresh Now – Actualiza el registro que tiene de la anterior IP con la IP actual.
En el menú File -> Preferences

Podemos configurar el cliente para que se ejecute como un servicio de Windows o como un programa de inicio, entre otras cosas, ideal en el caso de que queramos tener activada esta aplicación todo el tiempo.

FileZilla FTP - Client y Server

FileZilla es libre, de código abierto, multiplataforma FTP software, que consiste en FileZilla Cliente y FileZilla Server. Los binarios están disponibles para los de Windows, Linux y Mac OS X. Soporta FTP, SFTP y FTPS (FTP sobre SSL / TLS).
FileZilla Client tiene soporte para SFTP (SSH File Transfer Protocol) no está implementado en el servidor Filezilla.
FileZilla Server es un producto de la hermana del FileZilla client. Se trata de un servidor FTP con el apoyo del mismo proyecto. Soporta FTP y FTPS (FTP sobre SSL / TLS).

Descargaremos las 2 versiones Client y Server
Nota: FileZilla Server solo funciona en Windows

Este programa nos servirá para administrar de manera grafica nuestro servidor, como los usuarios y contraseñas, carpetas que se puedan acceder vía FTP, seguridad, control en las velocidades de transferencia, ofrece monitoreo en tiempo real sobre las transferencias realizadas.

En la instalación te pregunta sobre como el servidor debe de iniciar

Aquí dependerá de lo que se requiera, si la finalidad de la maquina es que funcione como servidor de tiempo completo, la primer opción es la adecuada, si no es así la ultima opción sirve ya que controlas cuando iniciar el servicio.


De igual manera podemos encender o para el servicio en el administrador de servicios de Windows.
Después de su instalación al correr por primera vez el programa, nos aparecerá lo siguiente:

(A)
Damos Ok


Bien nuestro servidor funciona, ahora solo queda, dar una contraseña al administrador, crear un usuario y crear la carpeta a la cual accederá mediante FTP.
  • La Contraseña del Administrador – En edit->Settings

Nos vamos a la opción de “Admin Interface settings” y le asignamos una nueva contraseña. Damos Ok y cerramos la aplicación para verificar que funciona al iniciar el programa no llenamos el campo de “Administration password”, al igual que la imagen (A), nos debe de aparecer lo siguiente:

 Bien volvemos a iniciar el programa pero ahora con la contraseña.
  • Usuario – En edit->users, agregamos un usuario y le asignamos una contraseña.

Aquí también podemos editar el límite de conexiones que puede tener un usuario y también forzarlo a utilizar SSL. Es recomendable utilizar contraseñas fuertes.
  • Carpeta FTP – Después en “Shared Folders”

Agregamos la ruta de la carpeta que queremos utilizar para el FTP, de preferencia una que no contenga nada importante (Archivos de Programa, Mis Documentos, etc). Después asignamos los privilegios que el usuario seleccionado puede realizar, como leer (acceder) archivos, modificar archivos, borrar archivos, agregar archivos (opción write debe estar activada), crear directorios, borrar directorios. El usuario no puede salir de la carpeta que asignamos. Por ejemplo si asigno la carpeta FTP “C:/Otro/FTP”, el usuario no puede acceder a la carpeta Otro o a al disco duro C, solo puede navegar en la carpeta FTP y sus internas.

Para verificar que funciona en nuestro navegador pondremos ftp://localhost/, nos pediría usuario y contraseña y veremos lo que tiene dentro la carpeta que asignamos.


Bien nuestro servidor funciona. Si quisiéramos acceder a el desde otra pc, por ejemplo en el navegador pondríamos (en mi caso)
Si fuera el acceso mediante la consola de comandos seria
>ftp vcoregames.myftp.org

Filezilla Client
Este programa nos sirve para acceder a nuestro servidor ftp de manera gráfica


Aquí los campos que nos interesan son:
  • Servidor – localhost o el registrado en No-Ip
  • Usuario
  • Contraseña
  • Puerto – Por default es el 21
Como podemos ver el programa se divide en dos, el sitio local (nuestra maquina) y el sitio remoto (el servidor).
Aquí las cosas son sencillas de manejar, ya que puedes hacer lo mismo que en Windows al manipular tus archivos (arrastrar y soltar, copiar, pegar, editar, etc) de un lado como en el otro, pero en el sitio remoto dependerá de los permisos del usuario FTP.

Eso es todo en el siguiente post aprenderemos a implementar una conexión segura mediante SSH, ya que de la forma actual nuestros datos están expuestos en la red.