miércoles, 26 de octubre de 2016

SERVICIOS WEB

¿QUE SON?


Un servicio web es una interfaz de software que describe un conjunto de operaciones a las cuales se puede acceder por la red a través de mensajería XML estandarizada. Usa protocolos basados en el lenguaje XML con el objetivo de describir una operación para ejecutar o datos para intercambiar con otro servicio web.

CARACTERÍSTICAS


Las características principales de los servicios Web, son las siguientes:
  • Utilización de estándares de internet. La única forma para que los servicios Web sean utilizados por la cantidad de sistemas heterogéneos existentes en Internet es el empleo del protocolo de transferencia de datos HTTP utilizado por todos los navegadores Web y XML.
  • Basados en tecnologías de paso de mensajes. La interacción entre el cliente y el proveedor del servicio es empaquetada en unidades autodesciptivas denominadas mensajes. Dicha interacción se describe en función de los mensajes intercambiados.
  • Combinan lo mejor de la tecnología de componentes y de la tecnología Web. Los servicios Web presentan una funcionalidad de caja negra que puede ser reutilizada sin preocuparse de cómo es implementada y ello proporciona interfaces bien definidas.

TIPOS


Servicios Web SOAP
Los servicios Web SOAP, o servicios Web "big", utilizan mensajes XML para intercomunicarse que siguen el estándar SOAP (Simple Object Access Protocol), un lenguaje XML que define la arquitectura y formato de los mensajes. Dichos sistemas normalmente contienen una descripción legible por la máquina de la descripción de las operaciones ofrecidas por el servicio, escrita en WSDL (Web Services Description Language), que es un lenguaje basado en XML para definir las interfaces sintácticamente.
Servicios Web RESTful
Los servicios Web RESTful (Representational State Transfer Web Services) son adecuados para escenarios de integración básicos ad-hoc. Dichos servicios Web se suelen integrar mejor con HTTP que los servicios basado en SOAP, ya que no requieren mensajes XML o definciones del servicio en forma de fichero WSDL

ARQUITECTURA


Los servicios Web presentan una arquitectura orientada a servicios que permite crear una definición abstracta de un servicio, proporcionar una implementación concreta de dicho servicio, publicar y localizar un servicio, seleccionar un instancia de un servicio, y utilizar dicho servicio con una elevada interoperabilidad. Es posible desacoplar la implementación del servicio Web y su uso por parte de un cliente. También es posible desacoplar la implementación del servicio y de cliente. Las implementaciones concretas del servicio pueden desacoplarse a nivel de lógica y transporte. La siguiente figura muestra el diagrama de una arquitectura orientada a servicios.
El proveedor del servicio define la descripción abstracta de dicho servicio utilizando un lenguaje de descripción de Servicios Web (WSDL: Web Services Description Language: ). A continuación se crea un Servicio concreto a partir de la descripción abstracta del servicio, produciendo así una descripción concreta del servicio en WSDL. Dicha descripción concreta puede entonces publicarse en un servicio de registro como por ejemplo UDDI (Universal Description, Descovery and Integration). Un cliente de un servicio puede utilizar un servicio de registro para localizar una descripción de un servicio, a partir de la cual podrá seleccionar y utilizar una implementación concreta de dicho servicio.

EJEMPLO


Para poder llamar a un Web Service desde su servidor, si trabaja con ASP 3.0, necesita tener instalado el Parser MSXML de Microsoft, el cual viene integrado con Internet Explorer 5 y superiores.

En este ASP puede ver cómo se invoca la función pudiendo elegir qué es lo que queremos que muestre: el resultado formateado en HTML, en XML puro o mostrar el mensaje de llamada en XML.

<%
'Parametros de la funcion
  'La direccion deberá tener al final los parametros. Ej: ?lengua=C&curso=2009-10&codasi=9240&orden=T
    wlengua = "C" 'Request.QueryString("lengua")
    wcurso = "2010-11" 'Request.QueryString("curso")
    wcodasi = "9244" 'Request.QueryString("codasi")
    worden = "T" 'Request.QueryString("orden")
  
    if worden = "" then worden = "T"
    if wlengua = "" then wlengua = "C"

  funcion = "wshorarios"
  clase = "ClaseHorarios"
    namespace = "http://UASI/WS_GESTDOCENTE.wsdl"
    endpoint = "https://cvnet.cpd.ua.es/servicioweb/publicos/pub_gestdocente.asmx"
    action = "http://UASI/WS_GESTDOCENTE.wsdl/" & funcion
  
  
                cadenaXML = "<?xml version=""1.0"" encoding=""utf-8""?>" & vbCrLf
    cadenaXML = cadenaXML & " <SOAP-ENV:Envelope xmlns:SOAP-ENV=""http://schemas.xmlsoap.org/soap/envelope/"""
    cadenaXML = cadenaXML & "   SOAP-ENV:encodingStyle=""http://schemas.xmlsoap.org/soap/encoding/"""
    cadenaXML = cadenaXML & "   xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
    cadenaXML = cadenaXML & "   xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">"
    cadenaXML = cadenaXML & "  <SOAP-ENV:Body>" & vbCrLf
    cadenaXML = cadenaXML & "   <" & funcion & " xmlns=""" & namespace & """>" & vbCrLf
  
    cadenaXML = cadenaXML & "     <plengua xsi:type=""xsd:string"">" & wlengua & "</plengua>" & vbCrLf
    cadenaXML = cadenaXML & "     <pcurso xsi:type=""xsd:string"">" & wcurso & "</pcurso>" & vbCrLf
    cadenaXML = cadenaXML & "     <pcodasi xsi:type=""xsd:string"">" & wcodasi & "</pcodasi>" & vbCrLf
    cadenaXML = cadenaXML & "     <porden xsi:type=""xsd:string"">" & worden & "</porden>" & vbCrLf
  
    cadenaXML = cadenaXML & "   </" & funcion & ">" & vbCrLf
    cadenaXML = cadenaXML & "  </SOAP-ENV:Body>" & vbCrLf
    cadenaXML = cadenaXML & " </SOAP-ENV:Envelope>" & vbCrLf


    Set objInputXMLDoc = Server.CreateObject("Microsoft.XMLDOM")
    objInputXMLDoc.loadXML cadenaXML

    Set objXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
    objXMLHTTP.open "POST", endpoint, false
    objXMLHTTP.setRequestHeader "Content-Type", "text/xml"
    objXMLHTTP.setRequestHeader "soapAction", action
    objXMLHTTP.send objInputXMLDoc

        'Cabeceras
    if sLengua = "C" then
        sTxtTeoPra = "T/P"
        sTxtGrp = "Grupo"
        sTxtFinicio = "Dia Inicio"
        sTxtFfin = "Dia Finalización"
        sTxtDia = "Dia Semana"
        sTxtHinicio = "Hora inicio"
        sTxtHfin = "Hora fin"
        sTxtAula = "Aulas"
        sTxtDescaul = "Nombre aula"
        sTxtTipoAct = "Tipo actividad"
        sTxtAct = "Actividad"
    else
        sTxtTeoPra = "T/P"
        sTxtGrp = "Grup"
        sTxtFinicio = "Dia d'Inicio"
        sTxtFfin = "Dia Finalització"
        sTxtDia = "Dia Setmana"
        sTxtHinicio = "Hora d'inici"
        sTxtHfin = "Hora finalització"
        sTxtAula = "Aules"
        sTxtDescaul = "Nom d'aula"
        sTxtTipoAct = "Tipus activitat"
        sTxtAct = "Activitat"
    end if

     response.write "<HTML><HEAD>" & vbCrLf
    response.write "</HEAD><BODY>" & vbCrLf

    Set objOutputXMLDoc = Server.CreateObject("Microsoft.XMLDOM")
    objOutputXMLDoc.loadXML objXMLHTTP.responseText

    Set Nodes = objOutputXMLDoc.getElementsByTagName("faultstring")
    if Nodes.length>0 then
  
        For Each Node In Nodes
      
            p = Instr(Node.Text, "@@")
            if p>0 then
          
                E = Mid(Node.Text,p+2)
                p = Instr(E, "@@")
                E = Mid(E,1,p-1)
            else
                E = Node.Text
            end if
        next
        response.write(E)
    else
        response.write "<TABLE>" & vbCrLf
        response.write "<tbody>" & vbCrLf
        response.write "<TR>" & vbCrLf

        'Escribimos las cabeceras
        if sOrden="T" then
            response.write " <TH>" & sTxtTeoPra & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtGrp & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtFinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtFfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtDia & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAula & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtTipoAct & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAct & "</TH>" & vbCrLf
        elseif sOrden = "G" then
            response.write " <TH>" & sTxtGrp & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtFinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtFfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtDia & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtTeoPra & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAula & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtTipoAct & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAct & "</TH>" & vbCrLf
        else
            response.write " <TH>" & sTxtFinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtFfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtDia & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtGrp & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtTeoPra & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAula & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtTipoAct & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAct & "</TH>" & vbCrLf
        end if
      
        response.write "</TR>" & vbCrLf
             
         Set Nodes = objOutputXMLDoc.getElementsByTagName(clase)
         
              
    For Each Node In Nodes
              
            pTeopra        = Node.selectSingleNode("teopra").Text
            pCodgrp        = Node.selectSingleNode("codgrp").Text
            pFechainicio    = Node.selectSingleNode("fechainicio").Text
            pFechafin       = Node.selectSingleNode("fechafin").Text
            pDia            = Node.selectSingleNode("dia").Text
            pDiasemana      = Node.selectSingleNode("diasemana").Text
            pHoraini        = Node.selectSingleNode("horaini").Text
            pHorafin        = Node.selectSingleNode("horafin").Text
            pAula           = Node.selectSingleNode("aula").Text
            pDescaula       = Node.selectSingleNode("descaula").Text
            pAulasig        = Node.selectSingleNode("aulasig").Text
            pclase_activ    = Node.selectSingleNode("clase_activ").Text
            pdesc_activ    = Node.selectSingleNode("descactiv").Text
          
            response.write "<TR>" & vbCrLf
                  
                   response.Write "<td>" & pTeopra & "</td>"
                   response.Write "<td>" & pTeopra & "</td>"
            response.Write "<td>" & pCodgrp & "</td>"
            response.Write "<td>" & pFechainicio & "</td>"
            response.Write "<td>" & pFechafin & "</td>"
            response.Write "<td>" & pDia & "</td>"
            response.Write "<td>" & pDiasemana & "</td>"
            response.Write "<td>" & pHoraini & "</td>"
            response.Write "<td>" & pHorafin & "</td>"
            response.Write "<td>" & pAula & "</td>"
            response.Write "<td>" & pDescaula & "</td>"
            response.Write "<td>" & pAulasig & "</td>"
            response.Write "<td>" & pclase_activ & "</td>"
            response.Write "<td>" & pdesc_activ & "</td>"
          
            response.write "</TR>" & vbCrLf
        next

         response.write "</tbody>" & vbCrLf
        response.write "</TABLE>" & vbCrLf
    end if

     response.write "</BODY>" & vbCrLf
    response.write "</HTML>" & vbCrLf

%>

PASOS PARA INSTALAR UN SERVIDOR WEB APACHE




  1. Descarga de Apache.org. la última versión para Windows
  1. Crea dos carpetas en la unidad C, la primera de nombre Apache y la segunda servidor_web
  1. Descomprime el archivo descargado y ejecútalo, sigue los pasos de la instalación y de los datos que te piden solo escoge el destino de la instalación, que será la carpeta que creaste en C:\Apache, los otros datos déjalos de la forma predeterminada para configurarlos más tarde.
  1. El programa al instalarse crea un icono en el área de notificación que te permitirá: iniciar, detener y reiniciar Apache; tienes que tener en cuenta que cualquier cambio que hagas en el archivo de configuración no tendrá efecto hasta que reinicies el servidor.

SERVIDOR WEB

Es un programa que gestiona cualquier aplicación en el lado del servidor realizando conexiones bidireccionales y/o unidireccionales y síncronas o asíncronas con el cliente generando una respuesta en cualquier lenguaje o aplicación en el lado del cliente. El código recibido por el cliente suele ser compilado y ejecutado por un Navegador Web. Para la transmisión de todos estos datos se utiliza algún protocolo. Generalmente se utiliza el protocolo HTTP para estas comunicaciones, perteneciente a la capa de aplicación del Modelo OSI. El término también se emplea para referirse al ordenador que ejecuta el programa.

Servicios

  • InternetInternet es una Red de Ordenadores conectados en toda la extensión del Globo Terráqueo, que ofrece diversos servicios a sus usuarios como pueden ser el Correo electrónico, el Chat o la Web. Todos los servicios que ofrece Internet son llevados a cabo por miles de ordenadores que están permanentemente encendidos y conectados a Internet, esperando que los usuarios les soliciten los servicios y sirviéndolos una vez son solicitados.
  • Página Web: Documento o fuente de información, generalmente en formato HTML y que puede contener hiperenlaces a otras Páginas Web. Dicha página , podrá ser accesible desde un dispositivo físico, una intranet, o Internet.
  • Navegador Web: Para establecer conexiones con los servidores Web, y obtener la información y los servicios que estos prestan, el usuario necesita tener instalado en su equipo un programa cliente capaz de comunicarse con ellos. Estos programas son los llamados Navegadores Web. Los Navegadores Web, también llamados Visores de Web o Browsers, son aplicaciones que permiten ver en pantalla texto con formato (con palabras en negrita, y con distintas fuentes tipográficas, tamaños y colores) y presentar imágenes en línea. También permiten visualizar secuencias de vídeo y escuchar ficheros de sonido.
  • Servidor: Un Servidor es un tipo de Software que suministra servicios a los usuarios o terminales que lo solicitan. Por ejemplo, en una típica Arquitectura Cliente-servidor, el cliente podría ser un ordenador que realiza peticiones de información a través de un programa de correo (Outlook Express por ejemplo) y, el servidor le entrega los datos en forma de correos electrónicos en respuesta a su solicitud. Un servidor no es necesariamente una máquina de última generación de grandes proporciones, no es necesariamente un superordenador; un servidor puede ser desde una computadora vieja, hasta una máquina sumamente potente (ej. Servidores web, bases de datos grandes, etc., procesadores especiales y hasta varios gigabytes de memoria).

Protocolos del Servidor Web

Un servidor web es un programa que sirve datos en forma de Páginas Web, hipertextos o páginas HTML (HyperText Markup Language): textos complejos con enlaces, figuras, formularios, botones y objetos incrustados como animaciones o reproductores de sonidos. La comunicación de estos datos entre cliente y servidor se hace por medio un protocolo, concretamente del protocolo Http. Con esto, un servidor Web se mantiene a la espera de peticiones HTTP, que son ejecutadas por un cliente HTTP; lo que solemos conocer como un Navegador Web. A modo de ejemplo: al teclear (http://www.cnice.mec.es) en un navegador, éste realizará una petición HTTP al servidor que tiene asociada dicha URL.
Protocolo: Conjunto de reglas que gobiernan el intercambio de datos entre entidades dentro de una red. Es el lenguaje común “que utilizan” los ordenadores para “hablar” y entenderse entre sí. Existen muchos tipos de protocolos cada uno con sus reglas bien definidas, como por ejemplo: FTPPOP3SMTPICMP, etc.
Protocolo HTTP: Una de las características del Protocolo Http es que no es permanente, es decir, cada operación HTTP implica una conexión con el servidor, que es liberada al término de la misma. Por ejemplo, un documento HTML con 10 imágenes son necesarias 11 conexiones distintas (10 imágenes más la página HTML en sí).

Pasos para la petición de una página Web

Primero, el navegador solicita como Cliente DNS la traducción de una URL (por ejemplo http://www.mec.es) a una IP y segundo, una vez que ha recibido la traducción del Servidor DNS, se realiza la petición HTTP al servidor que tenga la IP concreta. Fijémonos que si ponemos la IP en vez de la dirección en el Navegador, también funciona. Además, carece de estado. Cada petición de un cliente a un servidor no es influida por las transacciones anteriores.
El Servidor trata cada petición como una operación totalmente independiente del resto. A partir de la versión 1.1 del Protocolo http, se pueden habilitar conexiones persistentes (permiten enviar más objetos con un menor número de conexiones.

Funcionamiento de un Servidor Web

La Web funciona siguiendo el Modelo cliente-servidor. Un Servidor se encarga de prestar el servicio, y un cliente que es quien recibe dicho servicio.
Cliente Web: Es un programa mediante el cual el usuario solicita a un Servidores Web el envío de información. Esta información se transfiere mediante el Protocolo HTTP. Información que recibe: La información que se recibe es un conjunto de documentos de texto codificados en lenguaje HTML.
Servidor: Es el ordenador que ofrece la información mediante la aplicación de un programa llamado servidor que: Recibe la información y la procesa y responde enviando la petición al cliente.

Aplicaciones en el lado del servidor

Una aplicación en el lado del servidor es cualquier programa o conjunto de instrucciones diseñadas con la finalidad de que un servidor Web las procese para realizar alguna acción. Las aplicaciones del lado del servidor están escritas mediante un lenguaje de programación, entre los que más se utilizan están los siguientes:
  • PHP
  • ASP
  • Perl
  • Python
  • Ruby

Servidores más usados

  • Apache
  • IIS
  • Tomcat
  • Cherokee
  • webfsd

miércoles, 12 de octubre de 2016

RESUMEN FTP

Servicio FTP: es uno de los más antiguos dentro del internet. Es un servicio que los usuarios lo utilizan frecuentemente
Un servidor FTP para otros usuarios se puede conectar a nuestra computadora y recoger y dejar información es una zona concreta existen dos tipos de transferencias.
*Descargas (download)
*Carga (upload)

Servicio FTP: es por tanto un servicio que se utiliza para transferir información, almacenar en ficheros.
Para poder realizar, esta operación es necesario conocer la dirección IP.
*Maquina local: es aquella que contamos para hacer la transferencia.
*Maquina remota: es aquella ala que nos conectamos para hacer la transferencia de información.

“TIPOS DE FTP”
*FTP Anónimo: cualquier pude descargar un archivo si tener que registrarse
*FTP Autentico: hay que conectarse al servido usando un nombre y una contraseña.
*FTP Embebido: es lo que se realiza desde las páginas web, atravez de navegadores

FILEZILLA








miércoles, 5 de octubre de 2016

CONCEPTOS DE REDES

RED DE EQUIPOS

Conjunto de equipos que se unen a traves de mediosn fisicos y logicos, para compartir informaciony recursos.

VENTAJAS DEL USO DE RED DE EQUIPOS

  • Compartir archivos y programas
  • Compartir impresoras
  • Acceso a internet
  • Enviar y recibir correo electronico
  • Usar B.D. compartidas
  • Gestionar eficazmente la seguridad de los equipos
  • Realizar copias de seguridad centralizadas
  • Etc.

REDES LAN
Son redes de cobertura local. Brindan comunicacion en un area nio mayor de 300 mtros.

REDES DE AREA AMPLIA
Son redes de mayor cobertura que la abnterior. Cubren grandes geografricas como un pais, un continente.

RED DE INTERNET
Internet es la mayor de las redes de computadoras existentes en el mundo, compuestas por millones de Pc que se conectan a traves del modem.

¿QUE ES UNA RED INHALAMBRICA?
Es una red que posibilita nla union de dos o mas dispositivos sin necesidad de cables.

¿CUALES SON LOS COMPONENTES DE UNA RED?
  • Servidor
  • Estacion de trabajo
  • Impresion de red
  • Hardware de red
  • Concentrador
  • Ruteador y puentes

Máscara de subred

La máscara de subred es una máscara de bits que determina la parte de sistema principal y la parte de red de una dirección IP (Protocolo Internet).
La máscara de subred es un entero de 32 bits exclusivo que define la parte de la red donde se conecta una interfaz. La máscara debe especificarse siempre conjuntamente con una dirección de red (IP).
La máscara tiene el formato xxx.xxx.xxx.xxx, en el que cada campo es la representación decimal de 1 byte (8 bits) de la máscara. Por ejemplo, la máscara de subred cuya representación hexadecimal es X'FFFFFF00', en notación decimal es 255.255.255.0. Los bits de la máscara que se establecen en 1 determinan las partes de red y subred de la dirección. Los bits que se establecen en 0 determinan la parte de sistema principal de la dirección.
La máscara de subred y la dirección IP permiten a IP determinar dónde debe enviar los datos que recibe. IP correlaciona lógicamente la máscara de subred con una dirección IP. Esta acción permite determinar qué bits de la dirección pertenecen a la parte de red y qué bits de la dirección pertenecen a la parte de sistema principal.
La máscara de subred permite dividir una red entre varias redes más pequeñas denominadas subredes. Las subredes representan una red dentro de otra red. Todas las direcciones IP que están en la misma subred, o red, tienen la misma máscara de subred. Estas direcciones incluyen el sistema principal y las direcciones de red o subred.
El Asesor calculador de subred le ayuda a determinar las direcciones IP de las nuevas subredes. Todo lo que debe hacer es teclear la dirección de la red y especificar cuántas subredes desea crear. El Asesor calculador de subred visualiza la dirección IP de la red y del primer y último sistema principal de cada subred.

PUERTA DE ENLACE

Una puerta de enlace es un sistema de la red que nos permite, a través de si mismo, acceder a otra red, o dicho de otra manera, sirve de enlace entre dos redes…
El caso más claro es un router, un router no es un ordenador, no es un servidor, no es una cafetera es un router y una de sus principales funciones es enrutar por lo que se convierte en la puerta de enlace de todo dispositivo que quede conectado a él.

MODELO OSI

Es un modelo de los protocolos propuestos por OSI como protocolos abiertos interconectables en cualquier sistema, básicamente se pretendía que los protocolos OSI fueran el estandar de la industria. Pero adivinen, no pasó, de hecho sólo unos pocos protocolos de los originales de OSI siguen siendo usados, por ejemplo IS-IS, un protocolo de enrutamiento. De los protocolos OSI sólo queda el modelo y como no hay protocolos en uso se le llama modelo de referencia, porque está tan bien definido que casi todas las tecnologías lo usan para que los usuarios sepan qué es lo que hace exactamente.
Entonces este modelo lo que hace es definir el proceso de comunicaciones completamente, dividirlo en funciones claramente demarcadas y ponerles nombre a esas funciones. Cuando un fabricante de tecnología de comunicaciones quiere poner en claro brevemente qué hace ésta sin definir su propia terminología ni las operaciones particulares de la misma, sólo dice con qué capas del modelo de referencia OSI se corresponde y ya, quien conozca éste último comprenderá inmediatamente qué hace la tecnología que está aprendiendo.

PROTOCOLO TCP/IP
Protocolo de Control de Transmisión (TCP) permite a dos anfitriones establecer una conexión e intercambiar datos. El TCP garantiza la entrega de datos, es decir, que los datos no se pierdan durante la transmisión y también garantiza que los paquetes sean entregados en el mismo orden en el cual fueron enviados.
El Protocolo de Internet (IP) utiliza direcciones que son series de cuatro números ocetetos (byte) con un formato de punto decimal, por ejemplo: 69.5.163.59
Los Protocolos de Aplicación como HTTP y FTP se basan y utilizan TCP/IP.

miércoles, 28 de septiembre de 2016

PASOS DE INSTALACIÓN DE UN SERVIDOR DHCP EN LINUX

En el caso que tengan dos interfaces de red (NIC) en su servidor Linux tienen que seleccionar cual van a utilizar para escuchar las peticiones DHCP.  Para configurar el servicio, editamos el archivo /etc/default/dhcp3-server, y cambiamos INTERFACES=”eth0″  por la tarjeta de red interna.
Es necesario hacer una copia de seguridad del archivo de configuracion:
cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.back

Configurar utilizando el metodo de rango de direcciones (IP pool)

Editamos la configuracion tecleando:
sudo vi /etc/dhcp3/dhcpd.conf
Y en este archivo cambiamos las siguientes secciones
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.9, 192.168.1.10;
option domain-name “guatewireless.org”;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.200;
}
Guardamos y salimos del archivo. El texto anterior configura el servidor DHCP con los siguientes parametros:
  • Asignacion a los clientes direcciones IPs del rango de 192.168.1.10 hasta 192.168.1.200
  • Prestara la direccion IP por un minimo de 600 segundos, y como maximo permitido de 7200 segundos.
  • Determina la mascara de subred a 255.255.255.0
  • Direccion de broadcast de 192.168.1.255
  • Como gateway/pasarela de red/router la direccion 192.168.1.1
  • Y los servidores 192.168.1.9 y 10 como sus servidores DNS

Reservas de Ip para ciertas maquinas

Para esto al final de archivo agregamos el siguiente bloque
# SERVER
host SERVER {
hardware ethernet xx:xx:xx:xx:xx:xx;
fixed-address 192.168.1.210;
option broadcast-address 192.168.0.255;
}
En donde SERVER es el nombre de la maquina, xx:xx:xx:xx:xx:xx es la mac address de la maquina, 192.168.1.210 es la IP que queremos reservar y 192.168.0.255 es la direccion de broadcast
Guardamos el archivo reiniciamos el servidor dhcp usando.
/etc/init.d/dhcp3-server restart

Configurar utilizando el metodo de direcciones MAC

Con este metodo se puede reservar algunas o todas las direcciones IP de nuestra red para determinadas maquinas. Como podran ver la configuracion es muy parecida a la anterior, con la salvedad que para reservar la asignacion de una IP a una determinada NIC (network card interface) debemos de utilizar la etiqueta host
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.9, 192.168.1.10;
option domain-name “guatewireless.org”;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.200;
}
host oracle{
hardware ethernet 00:03:47:31:e1:7f;
fixed-address 192.168.1.20;
}
host printer {
hardware ethernet 00:03:47:31:e1:b0;
fixed-address 192.168.1.21;
}
Ahora reiniciamos el servidor dhcp ejecutando el siguiente comando:
sudo /etc/init.d/dhcp3-server restart

Configurar el cliente DHCP en Linux Ubuntu

Si dean configurar un escritorio o maquina con linux como cliente DHCP seguimos los siguientes pasos:
  • Editamos el archivo de interfaces de red
sudo vi /etc/network/interfaces
  • Debemos de tener las siguientes lineas, tomando en cuenta que eth0 es un ejemplo
auto lo eth0
iface eth0 inet dhcp
iface lo inet loopback
  • Salvamos y salimos del archivo
  • Reiniciamos los servicios de red de Linux Ubuntu
sudo /etc/init.d/networking restart
Para poder conocer las direcciones asignadas a las maquinas clientes
tail -n 15 /var/lib/dhcp3/dhclient.*.leases

INSTALAR UN SERVIDOR DHCP EN LINUX

1. Asignar una dirección IP fija a nuestro servidor DHCP

Para esto abrimos el archivo de configuración de red que se encuentra en /etc/network/interfaces y colocamos lo siguiente dentro del archivo:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.5
gateway 192.168.1.1
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
Esto suponiendo que su interfaz de red es la eth0, si no sabe o quiere saber más acerca de como configurar una dirección IP fija visite este artículo que escribí en Tribulinux.
2. Instalación del servidor DHCP
Abrimos el terminal en Ubuntu y ejecutamos:
sudo apt-get install dhcp3-server
Al finalizar la instalación aparecerán unos mensajes parecidos a estos:
Setting up dhcp3-server (3.1.3-2ubuntu3) ...
Generating /etc/default/dhcp3-server...
 * Starting DHCP server dhcpd3  
 * check syslog for diagnostics.      [fail]
 Setting up dhcp3-server (3.1.3-2ubuntu3) ...Generating /etc/default/dhcp3-server... * Starting DHCP server dhcpd3                                                   * check syslog for diagnostics.                                                                         [fail]
No se preocupen por los mensajes de fallos estos simplemente ocurren porque aún no hemos configurado el servidor.

3. Seleccionar la interfaz de red en la cual va a funcionar el servidor DHCP

Si configuramos la interfaz eth0 en el paso 1 usaremos esta, si configuramos otra tienen que cambiar donde está eth0 por la interfaz de red a utilizar
Abrimos el archivo que se encuentra en sudo /etc/default/dhcp3-server ejecutando:
sudo vim /etc/default/dhcp3-server
Nota: Pueden utilizar el editor de su preferencia (nano, gedit, vi, emacs, etc).
Donde aparece:
INTERFACES=""
La cambiamos por:
INTERFACES="eth0"
En eth0 el 0 es un CERO
Luego guardamos y cerramos el archivo, aquí estamos diciendo que el servidor DHCP debe “escuchar” en esta interfaz por las peticiones de DHCP.

4. Modificar el archivo de configuración de DHCP

Antes de modificar el archivo de configuración de DHCP hacemos un respaldo del archivo, para tener siempre el original por cualquier fallo que se nos pueda presentar, ejecutamos en el terminal:
sudo cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf-respaldo
Luego abrimos el archivo de configuración de DHCP ejecutando:
sudo vim /etc/dhcp3/dhcpd.conf
Dentro del archivo encontrarán gran cantidad de comentarios y ejemplos que sirven como guía para configurar el servidor DHCP en este caso vamos a borrar todo lo que existe dentro del archivo (lo respaldaron como les dije en el paso anterior cierto?) y colocamos:
default-lease-time 600; #tiempo de espera antes de renovar la direccion IP
max-lease-time 7200;  #tiempo máximo de espera antes de renovar la direccion IP
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name-servers 208.67.222.222,208.67.220.220; #servidores DNS
option domain-name "ejemplo.local";
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
}
#Configuracion IP fija para impresora en red
host impresora1 {
hardware ethernet 00:00:55:ef:db:55;
fixed-address 192.168.1.10;
}
Recuerden cambiar los valores por los que hayan decidido en su red y cambiar la dirección MAC de la impresora por la de su impresora.
Solo esto debe tener el archivo de configuración ni más ni menos guarden el archivo. Vamos a verlo línea por línea:
  • default-lease-time 600: es el tiempo de préstamo o alquiler por defecto de la dirección IP y está medido en segundos.
  • max-lease-time 7200: es el tiempo máximo que debe durar una dirección IP antes que caduque y el cliente deba pedir otra vez una dirección.
  • option subnet-mask 255.255.255.0: Es la máscara de red que definimos arriba.
  • option broadcast-address 192.168.1.255: Es la dirección de broadcast de nuestra red.
  • option routers 192.168.1.1: Es la dirección IP de nuestro gateway (tambien llamado pasarela de datos o puerta de enlace).
  • option domain-name-servers 208.67.222.222,208.67.220.220: Es la dirección IP de nuestros servidores DNS como se explicó arriba.
  • option domain-name “ejemplo.local”: Es el nombre de dominio de nuestra red, este parámetro es opcional.
  • subnet 192.168.1.0 netmask 255.255.255.0 : Aquí definimos nuestra red que queremos asignarle el rango de direcciones IP.
  • range 192.168.1.100 192.168.1.200: Es el rango de direcciones de la .100 a la .200.
  • host impresora1 : Así es como llamamos nuestra impresora de red para asignarle una IP fija.
  • hardware ethernet 00:00:55:ef:db:55: Aquí especificamos la dirección MAC o dirección de hardware de la tarjeta de red de nuestra impresora (ver explicación arriba, utilicen su propia dirección MAC)
  • fixed-address 192.168.1.10: Es la dirección IP fija que le queremos asignar a nuestra impresora.
Si tienen algún otro servidor que necesite una IP fija y no la quieran configurar en el servidor simplemente agregan las siguientes líneas igual que la impresora al final del archivo anterior:
host server1 {
hardware ethernet xx:xx:xx:xx:xx:xx;
fixed-address 192.168.1.11;
}
Cambiando por supuesto la dirección MAC de su servidor (pueden obtenerla ejecutando ifconfig donde dice MAC o direcciónHW) y la dirección IP que uds quieran dentro de su red.

5. Reiniciar el servidor DHCP

Por último para que la configuración haga efecto y nuestro servidor DHCP funcione ejecutamos:
sudo /etc/init.d/dhcp3-server restart
Con esto reiniciamos el servicio de DHCP y si no sale ningún error debería funcionar (puede salir un error cuando intenta detener (STOP) el servicio porque simplemente no está corriendo aún).

6. Probar en el cliente

NOTA IMPORTANTE: Debe existir sólo un servidor DHCP en nuestra red, si tienen algún otro servidor DHCP (como por ejemplo el de un router o router inalámbrico) deben estar deshabilitado de lo contrario podrían tener conflictos dentro de su red.
Una vez que tengamos configurado nuestro servidor DHCP es hora de obtener las direcciones IP en nuestros clientes. Tenemos dos casos:
a. Si el PC cliente ya está encendido y tiene una dirección IP asignada deberán, tanto para un PC con MS Windows como Linux, solicitar que renueve la dirección IP de su PC.
b. Si el PC está apagado, no hay problemas la próxima vez que la enciendan obtendrá la dirección IP automáticamente.
Una vez hecho esto los clientes deberán obtener direcciones IP automáticamente y estar dentro del rango de .100 y .200. Por ejemplo 192.168.1.101.-
En un cliente Linux además pueden verificar ejecutando el comando:
sudo dhclient 
sudo solo es necesario para Ubuntu y derivados (deben tener permisos de administrador en el cliente) ó
tail -n 15 /var/lib/dhcp3/dhclient.*.leases
Eso es todo ya tienen un servidor DHCP funcionando.