This file details the installation, compilation, and limitations of the Nmap Security Scanner for the Windows platform. If you find bugs, you are strongly encouraged to report them to fyodor@insecure.org or nmap-dev@insecure.org . Patches are very welcome too :). I would like to thank the following people for doing much of the Win32 porting work: Andy Lutomirski ( Luto@mailandnews.com ) Ryan Permeh ( ryan@eEye.com ) from eEye Digital Security ( www.eeye.com ) Nmap only exists for Win32 because of their hard work. *** Known Issues/Bugs *** o You cannot scan yourself (localhost). This is a Windows/WinPcap limitation which we haven't yet found a way to workaround. o RAS connections (eg PPP, SLIP, etc) are not supported except under Windows 2000/XP. This is a WinPcap limitation on NT and it isn't supported (yet) on Win98. Ethernet should work fine on all platforms. o All interfaces (except localhost) should work under Windows 2000 as administrator. If you have trouble under Win2K, try the --win_norawsock switch. o TCP connect() scan can be agonizingly slow. You may be able to improve this by applying the registry changes in the included nmap_performance.reg (in nmap-VERSION/ in the Win binary distribution, and nmap-VERSION/mswin32 in the source distro). Apply it by double-clicking on the file, or run the command "regedt32 nmap_performance.reg". Or you can make the changes by hand - add the following three registry DWORD values: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] "MaxUserPort", with a large value like 65534 (0x0000fffe). See MS KB Q196271. "TcpTimedWaitDelay" with the minimum value (0x0000001e). [See MS KB 149532] "StrictTimeWaitSeqCheck" with a value of 1 (so TcpTimedWaitDelay is checked) o The NmapFE Nmap GUI frontend port is not yet stable enough to include with the binary distribution. *** Using the Binary Distribution *** There are a couple binary distributions of Windows Nmap. One is Winmap, which is packaged in an install-shield installation wizard and includes a graphical GUI as well as command-line Nmap. The other distribution is the command-line zipfile, called nmap-VERSION-win32.zip . The .zip version is usually much more up-to-date. Here are the instructions for installing the zip archive: 1) Make sure you have installed Winpcap Version 3.1-beta4 or later. That version is critical as Nmap will crash if you have anything older. This is available at http://netgroup-serv.polito.it/winpcap/ . Winpcap is optional, but recommended, under Windows 2000. 2) Unzip the archive using Winzip or your favorite decompression utility -- a directory call nmap-VERSION will be extracted . 3) Consider applying the Nmap performance regisry changes discussed above (double click on nmap_performance.reg). 4) Open a command prompt (DOS) window and cd into the new nmap-VERSION directory. Type "nmap -h" for usage information. *** Compiling the Nmap Source Distribution for Windows *** Note that the only compiler I have tested (since converting from MSVC++ 6) is Microsoft Visual Studio .Net 2003. It may or may not work with previous (or later) compilers. I'll accept nonintrusive patches that make it work with your compiler (without breaking mine). 1) Decompress the archive ( nmap-VERSION.tgz ). This is the same tarball that is used for UNIX installations. 2) Open Visual Studio and the Nmap Solution (nmap-VERSION/mswin32/nmap.sln ) 3) Build Menu -> Configuration Manager -> set all to Release 4) Build Menu -> Build Solution 5) The executable can be found in nmap-VERSION/mswin32/Release/nmap.exe . Remember that you must have Winpcap Version2.1-beta or later installed to run it (see the Binary Distribution instructions above). *** Compiling NmapFE Front-end for Windows ** [ Note -- this hasn't been tested lately and may not work. Most people have been using NmapWin instead ] 1) Install the Windows versions of Glib, GDK, and GTK from http://www.gimp.org/win32/ . Copy the DLLs somewhere that they can be found ( if you don't have a better place, try c:\winnt\system32 ). Also copy the include and .lib files to places where your compiler can find them ( add the dir to VC++ via Tools -> Options -> Directories ). 2) Use steps similar to the "compiling Nmap" list above to compile NmapFE. The Workspace is in nmap-VERSION/nmapfe/nmapfe.dsw . *** Final Worlds *** As mentioned earlier, patches, suggestions, and improvements are more than welcome! Send them to nmap-dev@insecure.org or to me personally ( fyodor@insecure.org ). $Id$