lunes, 15 de febrero de 2016

LISTVIEW-TREEVIEW


TREEVIEW-LISTVIEW


PRIMER FORMULARIO

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;

namespace ListView1
{
    public partial class Form1 : Form
    {
        Archivo archivoRaiz = ArchivoDAO.cargarArchivos();
        Archivo archivoSeleccion;
        private string nuevo;
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            mostrarArchivosTree();
            txtPath.Text = nuevo;
        }

        private void mostrarArchivosTree()
        {
            TreeNode nodoRaiz = new TreeNode(archivoRaiz.Archivo1);
            nodoRaiz.Tag = archivoRaiz;
            treeDirectorios.Nodes.Add(nodoRaiz);          
            if (archivoRaiz.Archivos.Count() > 0)
            {
                agregarNodos(treeDirectorios.Nodes[0],archivoRaiz.Archivos);
            }
        }
        private void agregarNodos(TreeNode nodoPadre, List<Archivo> archivosHijo)
        {
            try
            {
                foreach (var iterArchivo in archivosHijo)
                {
                    TreeNode nodoHijo = new TreeNode(iterArchivo.Archivo1);
                    nodoHijo.Tag = iterArchivo;
                    nodoPadre.Nodes.Add(nodoHijo);
                    if (iterArchivo.Archivos != null)
                    {
                        agregarNodos(nodoHijo, iterArchivo.Archivos);
                    }
                }
            }
            catch (Exception)
            { }
        }
        private void mostrarListaIco(List<Archivo> archivos)
        {
            try
            {
                lstvIcono.View = View.LargeIcon;
                ImageList imagenes = new ImageList();
                imagenes.Images.Add(new Bitmap(@"E:\EPN\sexto\phv\PHV\ListView1\ListView1\Imagenes\triste.jpg"));
                lstvIcono.LargeImageList = imagenes;
                lstvIcono.Items.Clear();
                foreach (Archivo iterArchivo in archivos)
                {
                    ListViewItem itemLista = new ListViewItem(Convert.ToString(iterArchivo.Archivo1), 0);
                    itemLista.Tag = archivoRaiz;
                    lstvIcono.Items.Add(itemLista);
                    itemLista.SubItems.Add(iterArchivo.Archivo1);
                }
            }
            catch (Exception)
            { }
        }
        public void agregarArchivo(Archivo padreBuscado, Archivo hijo)
        {
            if (archivoRaiz.Equals(padreBuscado))
            {
                Console.WriteLine("Archivo padre localizado:" + archivoRaiz);
                archivoRaiz.Archivos.Add(hijo);
            }
            else
            {
                Console.WriteLine("Estructura iterada:");
                Console.WriteLine(archivoRaiz);
                Archivo padre = buscarArchivo(archivoRaiz.Archivos, padreBuscado);
                Console.WriteLine("Valor final de archivo padre:" + padre);
                padre.Archivos.Add(hijo);
            }
        }
        public Archivo buscarArchivo(List<Archivo> listaArchivos, Archivo padreBuscado)
        {
            Archivo auxiliar = new Archivo("AUX");
            foreach (var iterArchivo in listaArchivos)
            {
                Console.WriteLine(iterArchivo);

                if (auxiliar.Equals(padreBuscado))
                {
                    Console.WriteLine("Archivo padre localizado:" + auxiliar);
                    return auxiliar;
                }
                else if (iterArchivo.Equals(padreBuscado))
                {
                    Console.WriteLine("Archivo padre localizado:" + iterArchivo);
                    return iterArchivo;
                }
                else
                {
                    if (iterArchivo.Archivos.Count() > 0)
                    {
                        auxiliar = buscarArchivo(iterArchivo.Archivos, padreBuscado);
                    }
                }
            }
            return auxiliar;
        }
        private void mostrarHijos()
        {
            try
            {
                Archivo archivoSel = (Archivo)lstvIcono.SelectedItems[0].Tag;
                this.Text = archivoSel.Archivo1;
                traerHijos(archivoSel);
            }
            catch (Exception ex)
            { }
        }
        private void traerHijos(Archivo archivoH)
        {
            if (archivoH.Archivos.Count>0)
            {
                lstvIcono.Items.Clear();
                foreach (var iter in archivoH.Archivos)
                {
                    ListViewItem itemLista = new ListViewItem(iter.Archivo1, 0);
                    itemLista.Tag = iter;
                    lstvIcono.Items.Add(itemLista);
                    itemLista.SubItems.Add(iter.Archivo1);
                }
            }
        }
        private void lstvIcono_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            mostrarHijos();
        }
        private void atras()
        {
            try
            {
                archivoSeleccion = (Archivo)lstvIcono.SelectedItems[0].Tag;
                mostrarListaIco(archivoSeleccion.Archivos);
            }
            catch (Exception)
            { }
        }
        private void btnAtras_Click(object sender, EventArgs e)
        {
            lstvIcono.Items.Clear();
            atras();
        }

        private void treeDirectorios_AfterSelect(object sender, TreeViewEventArgs e)
        {
            archivoSeleccion = (Archivo)treeDirectorios.SelectedNode.Tag;
            this.Text =archivoSeleccion.Archivo1;
            mostrarListaIco(archivoSeleccion.Archivos);
            mostrarPath();
        }

        private void crearNuevo_Click(object sender, EventArgs e)
        {
            try
            {
                FrmCrearNuevo crearNuevo = new FrmCrearNuevo(nuevo);
                crearNuevo.ShowDialog();
                archivoSeleccion = (Archivo)treeDirectorios.SelectedNode.Tag;

                Archivo archivoNuevo = new Archivo(crearNuevo.NuevoArchivo);
                agregarArchivo(archivoSeleccion, archivoNuevo);
                treeDirectorios.Nodes.Clear();
                mostrarArchivosTree();
            }
            catch (Exception)
            { }
        }

        private void mostrarPath()
        {
            treeDirectorios.PathSeparator = "\\";
            int hijos = treeDirectorios.SelectedNode.GetNodeCount(true);
            //decimal hijosPorcentaje = ((decimal)hijos / (decimal)treeDirectorios.GetNodeCount(true)) * 100;
            txtPath.Text = treeDirectorios.SelectedNode.FullPath;
            tsElementos.Text = Convert.ToString(hijos) + " Elementos";
        }
        private void lstvIcono_MouseClick(object sender, MouseEventArgs e)
        {

        }

    }
}
============================CREAR NUEVO=========================
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ListView1
{
    public partial class FrmCrearNuevo : Form
    {
        private string nuevoArchivo;

        public string NuevoArchivo
        {
            get { return nuevoArchivo; }
            set { nuevoArchivo = value; }
        }
 
        public FrmCrearNuevo()
        {
            InitializeComponent();
        }

        public FrmCrearNuevo(string nuevo)
        {
            InitializeComponent();
            this.nuevoArchivo = nuevo;
        }
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            nuevoArchivo = txtNuevo.Text;
            this.Close();
        }
    }
}
============================ARCHIVO DAO========================

namespace ListView1
{
    class ArchivoDAO
    {
        public static Archivo cargarArchivos()
        {                
            Archivo archivosRaiz = new Archivo("\\");            
            return archivosRaiz;
        }
        }
}
==============================ARCHIVO=========================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ListView1
{
    public class Archivo
    {
        private int id;

        public int Id
        {
          get { return id; }
          set { id = value; }
        }
        private string archivo;

        public string Archivo1
        {
          get { return archivo; }
          set { archivo = value; }
        }
        private List<Archivo> archivos ;

        public List<Archivo> Archivos
        {
          get { return archivos; }
          set { archivos = value; }
        }
        
        public Archivo(String nombreInit)
        {
            this.archivo = nombreInit;
            archivos = new List<Archivo>();
        }
        public override string ToString()
        {
            return Archivo1;
        }
    }
}

Directorios

PRIMER FORMULARIO

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Taller4_Directorios
{
    public partial class Form1 : Form
    {
        private MiBD mibase = new MiBD();
        private string nuevo;
        Directorio directorioSeleccion;
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            agregarImagenesListview();
            mostrarArchivosTree();
        }
        
        private void mostrarArchivosTree()
        {
            Directorio dirPadre = new Directorio();
            List<Directorio> directorioLista = new List<Directorio>();
            
            var consulta1 = from archivoRaiz in mibase.directorio
                            where archivoRaiz.id_padre == null
                            select archivoRaiz;
            foreach (var iter in consulta1)
            { dirPadre=iter; }

            TreeNode nodoRaiz = new TreeNode(dirPadre.nombre);
            nodoRaiz.Tag = dirPadre;
            treeDirectorios.Nodes.Add(nodoRaiz);
            
            var consulta2 = from archivo in mibase.directorio
                            where archivo.id_padre == dirPadre.id
                            select archivo;

            foreach (var iter in consulta2)
            {
                directorioLista.Add(iter);
            }
                agregarNodos(treeDirectorios.Nodes[0], directorioLista);            
        }
        private void agregarNodos(TreeNode nodoPadre, List<Directorio> directoriosHijo)
        {
            try
            {
                          
                List<Directorio> directorioLista2 = new List<Directorio>();
                                
                foreach (var iter in directoriosHijo)
                {
                    TreeNode nodoHijo = new TreeNode(iter.nombre);
                    nodoHijo.Tag = iter;
                    nodoPadre.Nodes.Add(nodoHijo);
                    var consulta2 = from dirHijo in mibase.directorio
                                    where dirHijo.id_padre == iter.id
                                    select dirHijo;
                    foreach (var iterHijo in consulta2)
                    {
                        directorioLista2.Add(iterHijo);
                        agregarNodos(nodoHijo, directorioLista2);
                        directorioLista2.Clear();
                    }
                }                               
            }
            catch (Exception)
            { }
        }
        public void agregarArchivo(Directorio padreBuscado, Directorio hijo)
        {
            Directorio directorioBuscado = new Directorio();
            List<Directorio> directorioLista = new List<Directorio>();

            var consulta3 = from archivoRaiz in mibase.directorio
                            //where archivoRaiz.id_padre == null
                            select archivoRaiz;
            foreach (var iter in consulta3)
            {
                directorioBuscado = iter; directorioLista.Add(iter);
                if (directorioBuscado.Equals(padreBuscado))
                {
                    Console.WriteLine("Archivo padre localizado:" + directorioBuscado);
                    Directorio insertarDir = new Directorio();
                    insertarDir.nombre = hijo.nombre;
                    insertarDir.id_padre = padreBuscado.id;
                    mibase.directorio.InsertOnSubmit(insertarDir);
                    mibase.SubmitChanges();
                }
            }         
            
            //if (directorioBuscado.Equals(padreBuscado))
            //{
            //    Console.WriteLine("Archivo padre localizado:" + directorioBuscado);
            //    Directorio insertarDir = new Directorio();
            //    insertarDir.nombre = hijo.nombre;
            //    insertarDir.id_padre = padreBuscado.id;
            //    mibase.directorio.InsertOnSubmit(insertarDir);
            //    mibase.SubmitChanges();
            //}
            //else
            //{
            //    Console.WriteLine("Estructura iterada:");
            //    Console.WriteLine(directorioBuscado);                
            //    Directorio padre = buscarArchivo(directorioLista, padreBuscado);
            //    Console.WriteLine("Valor final de archivo padre:" + padre);
            //    hijo.id_padre = padre.id;             
            //    mibase.directorio.InsertOnSubmit(hijo);
            //    mibase.SubmitChanges();
                
            //}
        }
        public Directorio buscarArchivo(List<Directorio> listaArchivos, Directorio padreBuscado)
        {
            Directorio auxiliar = new Directorio("AUX");
            List<Directorio> directorioLista = new List<Directorio>();
            var consulta3 = from archivoRaiz in mibase.directorio
                            select archivoRaiz;
            foreach (var iter in consulta3)
            {
                directorioLista.Add(iter);
            }  

            foreach (var iterArchivo in listaArchivos)
            {
                Console.WriteLine(iterArchivo);

                if (auxiliar.Equals(padreBuscado))
                {
                    Console.WriteLine("Archivo padre localizado:" + auxiliar);
                    return auxiliar;
                }
                else if (iterArchivo.Equals(padreBuscado))
                {
                    Console.WriteLine("Archivo padre localizado:" + iterArchivo);
                    return iterArchivo;
                }
                else
                {
                    if (directorioLista.Count() > 0)
                    {
                        auxiliar = buscarArchivo(directorioLista, padreBuscado);
                    }
                }
            }
            return auxiliar;
        }


        //Metodos para llenar el ListView
        private void agregarImagenesListview()
        {/*
            ImageList imagenes = new ImageList();
           // imagenes.Images.Add(new Bitmap(@"E:\EPN\sexto\phv\PHV\ListView1_TreeView1\ListView1\Imagenes\carpeta.jpg"));
            //imagenes.Images.Add(new Bitmap(@"E:\EPN\sexto\phv\PHV\ListView1_TreeView1\ListView1\Imagenes\documento2.JPG"));
            imagenes.Images.Add(new Bitmap(@"C:\Users\Sony\Desktop\Taller4_finalPHV\ListView1\ListView1\Imagenes\triste.JPEG"));
            imagenes.Images.Add(new Bitmap(@"C:\Users\Sony\Desktop\Taller4_finalPHV\ListView1\ListView1\Imagenes\tulipan.JPEG"));


            lstvDirectorios.LargeImageList = imagenes;

        */    
        }
        
        private void mostrarListaIco(List<Directorio> archivos)
        {
            try
            {
                lstvDirectorios.View = View.LargeIcon;
                lstvDirectorios.Items.Clear();
                foreach (Directorio iterArchivo in archivos)
                {
                    ListViewItem itemLista = new ListViewItem(Convert.ToString(iterArchivo.nombre), 0);
                    itemLista.Tag = iterArchivo;
                    lstvDirectorios.Items.Add(itemLista);
                    itemLista.SubItems.Add(iterArchivo.nombre);
                }
            }
            catch (Exception)
            { }
        }
        private void traerHijos(Directorio archivoH)
        {
            var consultaDir = from selDirLis in mibase.directorio
                              where selDirLis.id_padre == archivoH.id
                              select selDirLis;
            lstvDirectorios.Items.Clear();                
            foreach (var iterDir in consultaDir)
            {
                ListViewItem itemLista = new ListViewItem(iterDir.nombre, 1);
                itemLista.Tag = iterDir;
                lstvDirectorios.Items.Add(itemLista);
                itemLista.SubItems.Add(iterDir.nombre);
            }
        }
        private void mostrarHijos()
        {
            try
            {
                Directorio archivoSel = (Directorio)lstvDirectorios.SelectedItems[0].Tag;
                this.Text = archivoSel.nombre;
                traerHijos(archivoSel);
            }
            catch (Exception ex)
            { }
        }

        private void atras()
        {
            try
            {
                //directorioSeleccion = (Directorio)lstvDirectorios.SelectedItems[0].Tag;
                List<Directorio> directorioLista = new List<Directorio>();
                var consultaDir = from selDirLis in mibase.directorio
                                  where selDirLis.id_padre ==1
                                  select selDirLis;
                foreach (var iter in consultaDir)
                { directorioLista.Add(iter); }

                mostrarListaIco(directorioLista);
            }
            catch (Exception)
            { }
        }
        // eventos
        private void nuevoDir_Click(object sender, EventArgs e)
        {
            FrmCrearNuevo crearNuevo = new FrmCrearNuevo(nuevo);
            crearNuevo.ShowDialog();
            directorioSeleccion = (Directorio)treeDirectorios.SelectedNode.Tag;

            Directorio archivoNuevo = new Directorio(crearNuevo.NuevoArchivo);
            agregarArchivo(directorioSeleccion, archivoNuevo);
            treeDirectorios.Nodes.Clear();
            mostrarArchivosTree();

        }

        private void treeDirectorios_AfterSelect(object sender, TreeViewEventArgs e)
        {
            directorioSeleccion = (Directorio)treeDirectorios.SelectedNode.Tag;
            List<Directorio> dirListaSeleccion = new List<Directorio>();
            var consultaDir = from dirP in mibase.directorio
                              where dirP.id_padre == directorioSeleccion.id
                              select dirP;
            foreach(var iterDir in consultaDir)
            {
                dirListaSeleccion.Add(iterDir);
            }
            mostrarListaIco(dirListaSeleccion);
        }

        private void lstvDirectorios_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            mostrarHijos();
        }

        private void btnAtras_Click(object sender, EventArgs e)
        {
            atras();
        }
    }
}


==========================FRM CREAR NUEVO========================
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Taller4_Directorios
{
    public partial class FrmCrearNuevo : Form
    {
        private string nuevoArchivo;

        public string NuevoArchivo
        {
            get { return nuevoArchivo; }
            set { nuevoArchivo = value; }
        }

        public FrmCrearNuevo()
        {
            InitializeComponent();
        }

        public FrmCrearNuevo(string nuevo)
        {
            InitializeComponent();
            this.nuevoArchivo = nuevo;
        }
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            nuevoArchivo = @"\" + txtNuevo.Text;
            this.Close();
        }

        private void FrmCrearNuevo_Load(object sender, EventArgs e)
        {

        }
    }
}

================================DIRECTORIO============================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.Linq.Mapping;
using System.Data.Linq;

namespace Taller4_Directorios
{
    [Table(Name="directorio")]
    public class Directorio
    {
        [Column(IsPrimaryKey=true, IsDbGenerated=true, AutoSync=AutoSync.OnInsert )]
        public int id {get; set;}
        [Column]
        public String nombre { get; set; }
        [Column]
        public int? id_padre { get; set; }
        //[Column]
        //public byte imagen { get; set; }
        public Directorio()
        { }
        public Directorio(String iniNombre)
        { this.nombre = iniNombre; }
        public override string ToString()
        {            
            return nombre;
        }
             
    }
    public class directorioJerarquia
    {
        public int id { get; set; }
        public String nombre { get; set; }
        public byte imagen { get; set; }
        public List<directorioJerarquia> directorioHijo { get; set; }
    }
}


==========================JERARQUIA DIRECTORIO========================

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.Sql;
using System.Data.SqlClient;
using System.Web.UI.WebControls;

namespace Taller4_Directorios
{
    class JerarquiaDirectorios
    {
      /*  public static List<Directorio> obtenerDirectorios()
        {
            string sql = @"select d.id, c.nombre, c.id_padre, c.imagen
                            from directorio d
                            order by c.id";
            List<Directorio> directorios = new List<Directorio>();

            SqlConnection conn = MiBD.obtenerConexion();
            SqlCommand cmd = new SqlCommand(sql, conn);
            IDataReader reader = cmd.ExecuteReader();

            while (reader.Read())
            {
                directorios.Add(convertirDirectorio(reader));
            }
            return directorios;
        }
        public static Directorio convertirDirectorio(IDataReader leer)
        {
            return new Directorio()
            {
                id = Convert.ToInt32(leer["id"]),
                id_padre = leer["id_padre"] == DBNull.Value ? null : (int?)Convert.ToInt32(leer["id_padre"]),
                nombre = Convert.ToString(leer["nombre"]),
                imagen = Convert.ToByte(leer["imagen"])
            };
        }

        public static List<directorioJerarquia> obtenerDirectorioJerarquico()
        {
            List<Directorio> directoriosList = obtenerDirectorios();
            List<directorioJerarquia> query = (from item in directoriosList
                                               where item.id_padre == null
                                               select new directorioJerarquia
                                               {
                                                   id = item.id,
                                                   nombre = item.nombre,
                                                   directorioHijo = obtenerHijos(item.id, directoriosList)
                                               }).ToList();
            return query;
        }

        private static List<directorioJerarquia> obtenerHijos(int idDir, List<Directorio> directorioList)
        {
            List<directorioJerarquia> query = (from item in directorioList
                                               let tieneHijos = directorioList.Where(o => o.id_padre == item.id).Any()
                                               where item.id_padre == idDir
                                               select new directorioJerarquia
                                               {
                                                   id = item.id,
                                                   nombre = item.nombre,
                                                   directorioHijo = tieneHijos ? obtenerHijos(item.id, directorioList) : null
                                               }).ToList();
            return query;
        }

        private void CrearNodoHijo(List<directorioJerarquia> directorio, System.Web.UI.WebControls.TreeNode parentNode)
        {
            directorio.ForEach(x =>
            {
                System.Web.UI.WebControls.TreeNode node = new System.Web.UI.WebControls.TreeNode(x.nombre, Convert.ToString(x.id));
                if (x.directorioHijo != null)
                {
                    CrearNodoHijo(x.directorioHijo, node);
                }
                if (parentNode == null)
                    treeDirectorios.Nodes.Add(node);
                else
                    parentNode.ChildNodes.Add(node);
            });
        }*/
    }
}


=================================CONEXION============================

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.Linq;
using System.Data.Sql;
using System.Data.SqlClient;

namespace Taller4_Directorios
{
    public class MiBD:DataContext
    {
        public Table<Directorio> directorio;
        public MiBD() : base(Properties.Settings.Default.conexion) { }
        public static SqlConnection obtenerConexion()
        {
            SqlConnection con = new SqlConnection(Properties.Settings.Default.conexion);
            con.Open();
            return con;
        }
    }
}





domingo, 4 de noviembre de 2012

CONCLUSIONES

1.- se creó un servidor Web para Windows y Linux, por otro lado un servidor DNS solo en Linux que   funcione tanto para Windows como para Linux.

2.- Se decidió crear un servidor DNS solo en Linux por facilidad ya que si se agregaba en Windows traía complicaciones al momento de instalarlo.

3.- Para las pruebas respectivas, se utlizó las direcciones IP de las computadora a conectar como principal requisito.

4.- Como una recomendación, se sugiere a los compañeros motivarse en probar la creación de servidores DNS en Windows.

martes, 23 de octubre de 2012

1) CRONOGRAMA

                                                          

                                                                      


SERVIDORES WEB + DNS

          1.-   INTRODUCCIÓN                                                                     (27/octubre/2012)

          2.-   QUE ES UN SERVIDOR WEB Y DNS?                                           (28/octubre/2012)

          3.-   INSTALACIÓN Y CONFIGURACIÓN DE APACHE
                  EN WINDOWS 7 Y UBUNTU                                                     (31/octubre/2012)

          4.-    CONCLUSIONES Y RECOMENDACIONES                                   (4/noviembre/2012)

          5.-    EXPOSICIÓN Y PARTE PRÁCTICA                                           (5/noviembre/2012)

lunes, 22 de octubre de 2012

5) SERVIDOR WEB Y DNS EN UBUNTU

a) PASOS PARA INSTALAR SERVIDOR WEB APACHE2 EN UBUNTU

1. Ingresar en Ubuntu y abrir el terminal
2. escribir el comando "sudo apt-get install apache2"
3. ingresar la clave de usuario (es importante ingresar como super usuario)


4. la instalacion comienza leyendo la informacion de estado
5. Nos preguntara si se desea continuar ([S/n]), escribimos s



6. Empezará a instalar todos los paquetes y listo




7. Finalmente para comprobar que funcione, se ingresa a internet y se digita "localhost" en el browser;
    nos aparecerá un mensaje "IT WORKS!" que nos indica que esta instalado correctamente.




Video Tutorial: 










b) INSTALACIÓN DE UN SERVIDOR DNS EN UBUNTU 12.04

1.- Debemos instalar primeramente el programa bind9 que vamos a utilizar como nuestro servidor, y lo hacemos mediante el comando sudo apt-get install bind9 logueados como superusuario.


2.- Nos dirigimos hacia la carpeta donde se instaló bind9 mediante el comando cd /etc/bind.
3.- Editamos el archivo named.conf.local con el comando gedit con la siguiente información:



3.- Copiamos el archivo db.local y creamos dos nuevos archivos con los nombres web, web1.

4.- Editamos el archivo web de la siguiente forma:


5.- De la misma manera lo hacemos con el archivo web1 con las modificaciones siguientes:


6.- Reiniciamos el servicio mediante el comando /etc/init.d/bind9 restart


7.- Finalmente comprobamos que este funcionando correctamente mediante el comando nslookup www.weboperativos.com





Video tutorial