Základnou funkciou programu Nmap je skenovanie portov. Na rozdiel od väčšiny skenerov, Nmap poskytuje väčšiu granularitu a rozoznáva nie dva, ale až šesť stavov, v ktorých sa port môže nachádzať. Je treba podotknúť, že stavy nie sú vlastnosťou portov samotných, ale popis toho, ako ich vidí Nmap.
open znamená, že nejaká aplikácia aktívne prijíma TCP spojenia alebo UDP pakety na tomto porte. Identifikácia takýchto portov je obyčajne primárnym cieľom každého útoku: útočník spozná, na ktoré porty má útočiť, naopak administrátor vie, ktoré porty má zabezpečiť proti útoku, ak tým neobmedzí oprávnených používateľov.
closed znamená, že na danom porte žiadna aplikácia aktívne neprijíma TCP spojenia alebo UDP pakety. Pomáhajú pri detekcii typu operačného systému a môžu byť zaujímavé pre útočníka, či sa daný port časom nezačne používať.
filtered znamená, že nebolo možné zistiť, v ktorom z predchádzajúcich dvoch stavov port je kvôli filtrovaniu paketov, ktoré zabránilo Nmapu zistiť dostatok informácií. Pakety môžu byť filtrované špecializovaným firewallom, smerovačom alebo softvérom na danom uzle. Niekedy paketový filter iba zahadzuje pakety, iné môžu vrátiť ICMP správu prezrádzajúcu ich prítomnosť.
unfiltered znamená, že port je v stave open alebo closed, no nie je to možné zistiť. Nastáva iba pri ACK skene.
open|filtered znamená, že port je v stave open alebo filtered, no nie je to možné zistiť. Nastáva iba pri UDP, IP protokol, FIN, Null a Xmas skenoch.
closed|filtered znamená, že port je v stave closed alebo filtered, no nie je to možné zistiť. Nastáva iba pri IP ID Idle skene.
|