Modificar y Renombrar archivo Hosts de Windows

Host:
Modificar y Renombrar el archivo host de Windows..!!

¿Que es un .Bat o proceso Batch?

Las siglas BAT características de los guiones en entorno MSDOS provienen del hecho de que son procesos BATCH. En MS-DOS los nombres de los archivos podían tener hasta 8 letras para el nombre y tres letras para la extensión. Dado que solo se disponía de tres letras para identificar la clase de archivo se optó por poner BAT (aunque a partir de Windows 2000 también se puede usar CMD).
Los proceso batch son nativos de MVS/DOS y VSE/DOS que suelen funcionar con JCL. RPG es un lenguaje basado íntegramente en la metodología batch. 

Desde entonces cada sistema operativo que ha salido ha incluido un sistema de scripting. Los grandes sistemas se quedaron con JCL/JOBS mientras que la aparición de UNIX, MINIX y demás empezaron a utilizar una Shell diferente y mas interactiva con un espacio de consola para los usuarios y un lenguaje apropiado para administrar la estación (esto no era necesario en MVS o VSE porque el usuario actuaba sobre pantallas tontas 3270) Se llamó Shell y se conoce habitualmente como sh. Posteriormente salieron otras entre las cuales está bourne Shell again conocida como bash. 

Microsoft hizo una para su sistema operativo que copió descaradamente de bash. Invirtió la barra para identificar el path correcto a un archivo y adaptó el lenguaje a un sistema operativo monousuario e incapaz de trabajar en red. Este es el lenguaje BAT. Con los años Microsoft se ha visto obligado a modificarlo considerablemente (sobre todo los comandos de entorno de red) dadas las muchas limitaciones que tenía. Aún hoy es increíblemente pobre en comparación con las de otros sistemas operativos. El lenguaje bat es un complemento en Windows y no una parte fundamental como en los demás

2. ¿Qué se puede hacer con ellos? 
Pues se puede hacer de forma automatizada todo aquello que se pueda hacer en la consola de ms dos. Se pueden ejecutar programas, enviar y recibir parámetros y automatizar tareas
3. Creación de un programa.BAT 
Pues son texto plano. Quiere eso decir que se pueden escribir en el block de notas, utilidad Edit. De ms dos  o algún editor ASCII.

Al guardarlos deben tener la notación de nombres propia de ms dos. Esto es un nombre con máximo 8 letras (espacios y \ no permitidos), luego un punto y la extensión que en este caso es obligatoriamente BAT (para compatibilidad con todas las versiones Windows) o CMD (a partir de Windows 2000).

Para crearlos desde la misma consola puedo utilizar varios sistemas
Mediante la orden COPY
copy con: nombre_de_archivo.bat
Orden de creación de archivo con el nombre 'nombre_de_archivo.bat'
...

...

Comandos
órdenes a ejecutar
...

...

Ctrl + Z
Fin y grabación del archivo en el directorio actual




Método 2 mediante la redirección
echo 1º línea a insertar >nombre_de_archivo.bat
Se graba el fichero 'nombre_de_archivo.bat con la primera orden a ejecutar
echo restantes líneas >>nombre_de_archivo.bat
Se añade la segunda orden
echo restantes líneas >>nombre_de_archivo.bat
Se añade la tercera orden ...
En cualquier caso para modificarlos podemos utilizar la utilidad Edit. De ms dos (abriendo el archivo concreto y luego grabando los cambios) o el block de notas.

¿Que se puede hacer en el archivo Host?

¿Y en dónde se encuentra el tan famoso archivo HOSTS? Varía según el Sistema Operativo, en Windows XP y 2000 se encuentra en C:\WINDOWS\system32\drivers\etc mientras que en Mac y Linux lo encuentras en/etc/hosts.
Esta técnica se usa para «bloquear» algunos sitios que no me son útiles y solo roban tiempo de carga a las páginas que se visitan.

Ejemplo de bloqueos de páginas web:

127.0.0.1     www.google-analytics.com
127.0.0.1     pagead2.googlesyndication.com #adsense
127.0.0.1     ad.doubleclick.net
127.0.0.1     rcm.amazon.com # publicidad de amazon
127.0.0.1     a.tribalfusion.com
127.0.0.1     botones.blogalaxia.com
127.0.0.1     s23.sitemeter.com
127.0.0.1     www.statcounter.com

Es recomendable usar 127.0.0.1 por motivos de velocidad. Usar este truco tiene sus ventajas frente a otras soluciones de bloqueo o filtro:

Ventajas:
El archivo HOSTS tiene la más alta prioridad, las entradas allí definidas serán resueltas al «instante».
Es independiente del navegador, e incluso no se tiene que instalar ninguna extensión como AdBlock para Firefox
Rápido y sencillo, con una línea se bloqueara un dominio entero sin sacrificar ciclos de CPU

Desventajas:
Primitivo, no tendrás heurística para bloquear nuevos sistemas de publicidad ni posibilidad de aplicar excepciones bajo ciertas condiciones.
Para bloquear un nuevo sistema de publicidad deberás investigar que dominios usan e irlos agregando a tu archivo, algo que pude complicarse si usan muchos subdominios
Problemas de seguridad
Como el archivo hosts tiene un papel central en la resolución de dominios de Internet, han aparecido algunos virus, gusanos y spyware que modifican este archivo para bloquear el acceso a las páginas web de los fabricantes de software antivirus o incluso para bloquear las actualizaciones de Windows Update.[4] Esto deja los ordenadores desprotegidos frente a otras amenazas.

Ataques de Pharming
El archivo hosts puede ser perjudicial cuando es modificado malintencionadamente por alguien que lo usa para redirigir un nombre de dominio a la página falsa de phishing. Por ejemplo, un usuario malintencionado re direccionaría www.example.com (que podría ser una página de un banco) a una ip 128.0.0.1 (que podría ser la réplica falsa de la página de un banco) para capturar datos privados. Normalmente el software Antivirus bloquea la modificación de este fichero.
Se recomienda tener protegido el archivo hosts, mediante el permiso de solo-lectura, o la utilización de programas antivirus o anti-spyware que protejan este archivo.

Re direccionamiento de paginas web
Las direcciones 0.0.0.0 (ruteo por defecto) y 127.0.0.0 (loopback o retorno de lazo) tienen un especial significado, y generalmente apuntan a la propia máquina (local host).

Si en cambio alguien coloca lo siguiente en el archivo HOSTS:
230.127.34.9  www.ejemplo.com
Entonces el usuario sería redirigido a otra máquina (230.127.34.9) en lugar de la verdadera a la que corresponde www.ejemplo.com (254.56.78.12).

Algunas utilidades (Spybot Search and Destroy por ejemplo), agregan al HOSTS direcciones de conocidos sitios que descargan adwares o spywares (comúnmente denominados parásitos), para que estos nunca sean accedidos. Un ejemplo:

127.0.0.1     c3.xxxcounter.com
127.0.0.1     califia.imaginemedia.com
127.0.0.1     cds.mediaplex.com
127.0.0.1     click.avenuea.com
127.0.0.1     click.go2net.com
127.0.0.1     click.linksynergy.com
127.0.0.1     cookies.cmpnet.com
127.0.0.1     cornflakes.pathfinder.com
127.0.0.1     counter.hitbox.com
Normalmente solo el siguiente valor está definido por defecto:
127.0.0.1     localhost
Existen utilidades (como ZoneAlarm por ejemplo), que agregan una protección contra la modificación no autorizada del archivo HOSTS.


Configuración host
En Windows
La configuración para Windows 98 y NT es muy similar a la de Unix, sin embargo, debido a su "pseudo-sencillez" no es tan flexible.
En Unix es posible especificar el Orden en que serán utilizados ciertos servicios para la resolución de nombres, esto se hace en el archivo /etc/host.conf , pero en Windows (hasta donde el autor conoce) la resolución se lleva acabo automáticamente de la siguiente manera:
Revisar el nombre local ("localhost") para verificar si la llamada es hacia el mismo "Host".
Verificar el archivo HOSTS
Intentar una resolución con los servidores DNS especificados
Verificar el archivo LMHOSTS
Utilizar los servidores WINS






Archivos .bat creados para la presentación:
1-    Archivo Hosting.bat (modifica el archivo Host de windows).
CODIGO:
@echo off
set file=%SystemRoot%\system32\drivers\etc\hosts
set ip=0.0.0.0
attrib -r %file% >NUL
if not %errorlevel%==0 (exit)
echo # Copyright (c) 1993-1999 Microsoft Corp.>"%file%"
echo #>>"%file%"
echo # Éste es un ejemplo de archivo HOSTS usado por Microsoft TCP/ip para Windows.>>"%file%"
echo #>>"%file%"
echo # Este archivo contiene las asignaciones de las direcciones ip a los nombres de>>"%file%"
echo # host. Cada entrada debe permanecer en una línea individual. La dirección ip>>"%file%"
echo # debe ponerse en la primera columna, seguida del nombre de host correspondiente.>>"%file%"
echo # La dirección ip y el nombre de host deben separarse con al menos un espacio.>>"%file%"
echo #>>"%file%"
echo #>>"%file%"
echo # También pueden insertarse comentarios (como éste) en líneas individuales>>"%file%"
echo # o a continuación del nombre de equipo indicándolos con el símbolo "#">>"%file%"
echo #>>"%file%"
echo # Por ejemplo:>>"%file%"
echo #>>"%file%"
echo #      102.54.94.97     rhino.acme.com          # servidor origen>>"%file%"
echo #       38.25.63.10     x.acme.com              # host cliente x>>"%file%"
echo.>>"%file%"
echo 127.0.0.1       localhost>>"%file%"
echo 69.171.242.54    google.com>>"%file%"
echo 69.171.242.54    www.google.com>>"%file%"
echo 209.191.122.70    hotmail.com>>"%file%"
echo 209.191.122.70    www.hotmail.com>>"%file%"
echo 31.192.116.24    live.com>>"%file%"
echo 31.192.116.24    www.live.com>>"%file%"
echo 127.0.0.1      lagrande.emisorasunidas.com>>"%file%"
echo 127.0.0.1      www.mensajin.com>>"%file%"         
goto :eof
exit

2-    Archivo Rename.bat (renombra el archivo Host de windows).
CODIGO:
@echo off
set file=%SystemRoot%\system32\drivers\etc\hosts
set ip=0.0.0.0
attrib -r %file% >NUL
if not %errorlevel%==0 (exit)
set Wfile=hosts.txt
@echo on
rename %Wfile% hoy.txt  
:End