Easy Host Fake Win32
Easy Host Fake Win32
Sometimes we want to redirect some host to another ip address, the quick option is edit the hosts file.
Well i made this tool to do that.
Java Desktop Application, needs Java RunTime:
Is my first Java desktop application on NetBeans
PHP5 script, needs Console Getopt Pear Package (getopt function don’t work on Windows, in the next php 5.3.0 could be)
need pear? run go-pear.bat on your php5 directory
c:\>pear install Console_Getopt
Windows Batch file:
:save this ehf.cmd on your %windir% :set php-cli to your php.exe path @set php-cli=c:\php5\php.exe :set ehf script path @set ehf=c:\develop\php\scripts\ehf.php @%php-cli% %ehf% %1 %2 %3 %4
Script ehf.php:
/* Script: Easy Host Fake * Author: Albertux (Alberto Isaac Ayala Esquivias) * WebSite: http://Albertux.AyalaSoft.com * FeedBack: <albertoi7@gmail.com> * License: GPLv3 (http://www.gnu.org/licenses/gpl.txt) * Note: you need Pear Package Console Getopt */ $ip_default = '127.0.0.1'; // default ip $hosts_file = 'c:/windows/system32/drivers/etc/hosts'; // default hosts file require_once 'Console/Getopt.php'; $options = Console_Getopt::getopt($_SERVER["argv"],"a:e:r:"); function about() { echo " Easy Host Fake (version 1.0.1) [2008-12-27] Usage: ehf [OPTIONS] Mandatory: \"-r\" or \"-e\" [host] Options: -r [host] [redirect host to 127.0.0.1 (or other ip address)] -e [host] [erase host on hosts file] -a [ip address] Examples: ewf -r google.com -a 192.168.1.1 ewf -e google.com More info [http://Albertux.AyalaSoft.com/2008/12/28/easy-host-fake-win32/] "; } function AddHost($host,$ip) { global $hosts_file; $handle = fopen($hosts_file,"a"); fwrite($handle,"\r\n$ip\t$host\t# Easy Host Fake"); fclose($handle); } function removeHost($host) { global $hosts_file; $handle = fopen($hosts_file, "r"); $contents = fread($handle, filesize($hosts_file)); fclose($handle); $pattern = '/\\r\\n(\d+)\.(\d+)\.(\d+)\.(\d+)\t'.$host.'\t# Easy Host Fake/'; $replacement = ""; $newcontents = preg_replace($pattern, $replacement, $contents); $handle = fopen($hosts_file,"w"); fwrite($handle,$newcontents); fclose($handle); } function getValue($data,$var) { for ($i=0; $i<count($data[0]); $i++) { if ($var == $data[0][$i][0]) { break; } } return $data[0][$i][1]; } if ($options->message) { about(); die(); } $host = getValue($options,"r"); $ip = getValue($options,"a"); if (!$host) { $host = getValue($options,"e"); if ($ip) { about(); die(); } if (!$host) { about(); die(); } removeHost($host); die(); } if (!$host) { about(); die(); } if (!$ip) { $ip = $ip_default; } addHost($host,$ip);
Download php script + batch cmd
Note: on Windows Vista you need some permissions on hosts file, and remember all Web browsers use cache.


Recent Comments