-
--min-hostgroup <numhosts>;
--max-hostgroup
<numhosts> (Adjust parallel scan group sizes)
Nmap memiliki kemampuan untuk melakukan scan port atau versi ke banyak host secara paralel.
Nmap melakukan hal ini dengan membagi ruang IP target ke dalam kelompok dan kemudian memeriksa
satu kelompok pada satu waktu. Secara umum, kelompok yang lebih besar lebih efisien.
Kelemahannya adalah hasilnya tidak dapat disediakan hingga seluruh kelompok selesai.
Jadi bila Nmap dimulai dengan kelompok berukuran 50, user tidak akan menerima laporan
(kecuali update yang diberikan dalam mode verbose) hingga seluruh 50 host pertama selesai.
Secara baku, Nmap menggunakan pendekatan kompromi untuk konflik in.
Ia mulai dengan ukuran kelompok paling kecil lima sehingga dapat segera diperoleh hasil
dan kemudian menaikkan ukuran kelompok hingga maksimum 1024. Angka baku tergantung
pada opsi yang diberikan. Demi alasan efisiensi,
Nmap menggunakan ukuran kelompok yang lebih besar untuk scan UDP atau sedikit-port TCP.
Ketika ukuran kelompok maksimum diberikan dengan
--max-hostgroup, Nmap tidak akan melampaui ukuran tersebut.
Berikan ukuran minimum dengan --min-hostgroup dan Nmap
akan berusaha ukuran kelompok di atas angka tersebut. Nmap mungkin akan menggunakan
kelompok lebih kecil daripada yang anda spesifikasikan jika tidak terdapat cukup target
pada interface yang diberikan untuk memenuhi ukuran minimum. Kedua opsi dapat digunakan
untuk menset ukuran kelompok dalam rentang tertentu, namun hal ini jarang diperlukan.
Opsi-opsi ini tidak memiliki efek ketika melalukan fase penemuan host dalam sebuah
pemeriksaan. Ini mencakup scan ping biasa (-sP).
Penemuan host selalu bekerja dalam kelompok host besar untuk meningkatkan kecepatan
dan akurasi.
Penggunaan utama opsi ini adalah untuk menspesifikasikan ukuran kelompok minimum yang besar
sehingga scan penuh dapat dilakukan lebih cepat. Pilihan umum adalah 256
untuk memeriksa jaringan dalam Kelas C. Untuk scan dengan banyak port,
melampaui angka tersebut tidak berarti banyak. Untuk scan terhadap beberapa port saja,
ukuran kelompok host 2048 atau lebih mungkin bermanfaat.
-
--min-parallelism <numprobes>;
--max-parallelism
<numprobes> (Adjust probe parallelization)
Opsi-opsi ini mengendalikan jumlah total probe yang dapat dilakukan
untuk sekelompok host. Mereka digunakan untuk pemeriksaan port dan penemuan
host. Secara baku, Nmap menghitung nilai paralel yang ideal berdasarkan
kinerja jaringan. Jika paket di-drop, Nmap mengurangi dan membolehkan
lebih sedikit probe yang tersisa. Angka probe ideal akan meningkat seiring
dengan membaiknya jaringan. Opsi ini menempatkan batas minimum atau maksimum
pada variabel tersebut. Secara baku, nilai idealnya dapat menurun ke angka satu
bila jaringan ternyata tidak handal dan meningkat ke beberapa ratus dalam kondisi sempurna.
Penggunaan paling umum adalah menset
--min-parallelism ke angka lebih tinggi daripada satu untuk
mempercepat scan host atau jaringan yang lambat. Ini adalah opsi berisiko
untuk dimainkan, karena bila mensetnya terlalu tinggi akan mempengaruhi akurasi.
Dengan menset opsi ini juga akan mengurangi kemampuan Nmap untuk mengendalikan
paralelisme secara dinamis berdasarkan kondisi jaringan. Nilai sepuluh
adalah cukup, meskipun saya hanya menyesuaikan nilai ini sebagai usaha terakhir.
Opsi --max-parallelism seringkali diset ke satu
untuk mencegah Nmap mengirimkan lebih dari satu probe di satu waktu ke host.
Opsi ini dapat bermanfaat saat berkombinasi dengan --scan-delay
(akan didiskusikan kemudian), meskipun yang terakhir biasanya dapat digunakan sendiri.
-
--min-rtt-timeout <time>,
--max-rtt-timeout <time>,
--initial-rtt-timeout
<time> (Adjust probe timeouts)
Nmap memelihara sebuah nilai timeout untuk menentukan berapa lama ia harus menunggu
atas respon probe sebelum ia menyerah atau mentransmisi ulang probe. Nilai ini
dihitung berdasarkan waktu respon probe sebelumnya.
Jika latensi jaringan menunjukkan signifikan dan bervariasi, nilai timeout ini
dapat meningkat ke beberapa detik. Ia juga dimulai dari nilai konservatif (tinggi)
dan tetap untuk sementara waktu ketika Nmap memeriksa host yang tidak responsif.
Menspesifikasikan nilai --max-rtt-timeout dan
--initial-rtt-timeout lebih kecil daripada nilai baku dapat
mempercepat waktu pemeriksaan secara signifikan. Hal ini terutama benar untuk scan
tanpa ping (-PN), dan terhadap jaringan yang disaring secara ketat.
Meskipun jangan terlalu agresif. Pemeriksaan dapat lebih lama jika anda
menspesifikasikan nilai rendah sehingga banyak probe timeout dan dilakukan
transmisi ulang ketika respons sedang dalam transit.
Bila seluruh host berada pada jaringan lokal, 100 milidetik adalah nilai
--max-rtt-timeout agresif yang wajar. Jika melibatkan routing,
ping host pada jaringan terlebih dulu dengan utilitas ping ICMP, atau dengan
pembuat paket kustom seperti
hping2
yang lebih mungkin melewati firewall. Lihat maximum round trip
time out dari sepuluh paket atau lebih. Anda mungkin ingin menggandakannya untuk
--initial-rtt-timeout dan mengalikan tiga atau empat untuk
--max-rtt-timeout. Umumnya saya tidak menset nilai maksimum
RTT di bawah 100 ms, berapapun waktu ping. Ataupun melebihi 1000 ms.
--min-rtt-timeout merupakan opsi yang jarang digunakan yang
berguna ketika jaringan tidak handal, yang bahkan nilai baku Nmap terlalu agresif.
Karena Nmap hanya mengurangi timeout ke minimum ketika jaringan tampaknya handal,
kebutuhan ini tidak umum dan seharusnya dilaporkan sebagai bug ke
nmap-dev mailing list.
-
--max-retries <numtries> (Specify the
maximum number of port scan probe retransmissions)
Ketika Nmap tidak menerima respon atas probe scan port, hal ini dapat berarti
bahwa port disaring. Atau mungkin probe atau respon hilang dalam jaringan.
Mungkin juga host target melakukan pembatasan sehingga memblokir respon sementara.
Sehingga Nmap mencoba kembali mentransmisi probe awal. Jika Nmap mendeteksi kehandalan
jaringan yang buruk, ia akan mencoba beberapa kali sebelum menyerah.
Meskipun hal ini bermanfaat untuk akurasi, namun akan memperpanjang waktu pemeriksaan.
Ketika kinerja lebih diutamakan, pemeriksaan dapat dipercepat dengan membatasi jumlah
transmisi ulang yang dibolehkan. Anda bahkan dapat menspesifikasikan
--max-retries 0 untuk mencegah terjadinya transmisi ulang,
meskipun hanya direkomendasikan bagi situasi seperti survei informal ketika terjadi port dan host
yang tidak didata tidak menjadi masalah.
Bakunya (dengan template tanpa -T) adalah membolehkan
sepuluh transmisi ulang. Jika jaringan tampak handal dan host target tidak membatasi,
Nmap biasanya melakukan hanya satu transmisi ulang. Sehingga kebanyakan pemeriksaan
target tidak terpengaruh dengan mengurangi nilai
--max-retries ke nilai yang rendah seperti tiga. Nilai tersebut
dapat secara substansial mempercepat pemeriksaan host-host lambat (rate limited).
Anda biasanya kehilangan beberapa informasi ketika Nmap menyerah dengan mudah,
meskipun hal tersebut lebih disukai daripada membiarkan
--host-timeout berakhir dan kehilangan seluruh informasi mengenai target.
-
--host-timeout <time> (Give
up on slow target hosts)
Beberapa host membutuhkan banyak waktu untuk diperiksa.
Hal ini mungkin disebabkan hardware atau software yang tidak berkinerja baik atau tidak handal,
adanya pembatasan paket, atau firewall yang terlalu ketat. Beberapa persen host paling lambat
yang diperiksa dapat menghabiskan sebagian besar waktu pemeriksaan. Terkadang adalah hal baik
mengurangi kerugian dan melewati host-host tersebut.
Berikan
--host-timeout dengan waktu maksimum anda ingin menunggu.
Sebagai contoh, berikan
30m untuk memastikan bahwa Nmap tidak menghabiskan
lebih dari setengah jam pada satu host. Perhatikan bahwa Nmap mungkin memeriksa host lain
pada waktu yang sama dalam waktu tersebut, sehingga itu bukan kerugian lengkap. Host yang
timeout akan dilewati. Tidak ada hasil tabel port, deteksi SO, atau deteksi versi akan dicetak
untuk host tersebut.
-
--scan-delay <time>;
--max-scan-delay
<time> (Adjust delay between probes)
Opsi ini menyebabkan Nmap menunggu selama waktu yang diberikan
antara setiap probe yang dikirimkan ke host yang diberikan. Hal ini terutama
bermanfaat dalam hal pembatasan. Mesin-mesin Solaris
(di antara yang lainnya) akan menanggapi paket probe scan UDP dengan hanya
satu pesan ICMP per detik. Bila dikirimkan oleh Nmap lebih dari itu akan percuma.
Nilai --scan-delay
1s akan membuat Nmap tetap pada rate lambat tersebut.
Nmap berusaha untuk mendeteksi pembatasan rate dan menyesuaikan delay scan,
namun tidaklah rugi untuk menspesifikasikannya secara eksplisit bila anda telah tahu
rate terbaik.
Ketika Nmap menyesuaikan delay scan lebih tinggi untuk menanggapi pembatasn rate,
scan akan melambat secara dramatis. Opsi
--max-scan-delay menspesifikasikan delay terbesar
yang dibolehkan Nmap. Nilai --max-scan-delay rendah
akan mempercepat Nmap, namun berisiko. Dengan menset nilai ini terlalu rendah dapat
menyebabkan transmisi ulang paket yang tidak perlu dan mungkin port-port luput ketika
target mengimplementasikan pembatasan rate ketat.
Penggunaan lain --scan-delay adalah untuk menghindari
sistem deteksi dan pencegahan intrusi (IDS/IPS) yang berbasis pembatasan
-
--min-rate <number>; --max-rate <number>
(Directly control the scanning rate)
Pewaktuan dinamis Nmap melakukan pekerjaan yang baik dalam menemukan
kecepatan yagn tepat untuk melakukan pemeriksaan. Namun terkadang, anda
mungkin mengetahui rate pemeriksaan jaringan yang tepat, atau anda harus
memastikan bahwa pemeriksaan akan selesai pada waktu tertentu. Atau mungkin anda harus
menjaga Nmap dari melakukan pemeriksaan terlalu cepat. Opsi --min-rate dan
--max-rate dirancang untuk situasi ini.
Ketika opsi
--min-rate diberikan Nmap akan melakukan yang terbaik untuk
mengirim paket secepat atau lebih cepat daripada rate yang diberikan. Argumen
merupakan angka real positif mewakili rate paket per detik.
Sebagai contoh, dengan menspesifikasikan --min-rate 300 berarti bahwa
Nmap akan berusaha menjaga rate pengiriman pada atau di atas 300 paket per detik.
Penspesifikasian rate minimum tidak mencegah Nmap mengirimkan lebih cepat
bila kondisi memungkinkan.
Demikian pula, --max-rate membatasi rate pengiriman ke
nilai maksimum yang diberikan. Gunakan --max-rate 100, misalnya, untuk
membatasi pengiriman 100 paket per detik pada jaringan yang cepat. Gunakan
--max-rate 0.1 untuk scan lambat satu paket setiap sepuluh detik.
Gunakan --min-rate dan --max-rate bersama
untuk menjaga rate pada rentang tertentu.
Kedua opsi ini bersifat global, mempengaruhi seluruh pemeriksaan, bukan
host individual. Mereka hanya mempengaruhi scan port dan pencarian host
Fitur lain seperti deteksi SO mengimplementasikan pewaktuan mereka sendiri.
Terdapat dua kondisi ketika rate pemeriksaan aktual kurang dari nilai
minimum yang diminta. Pertama adalah bila nilai minimum lebih cepat daripada
rate tercepat pengiriman Nmap, yang tergantung pada hardware.
Dalam kasus ini Nmap akan mengirim paket secepat mungkin, namun waspadai
bahwa rate tinggi tersebut kemungkinan akan menyebabkan kehilangan akurasi.
Kasus kedua adalah ketika Nmap tidak memiliki sesuatu untuk dikirim, sebagai contoh
di akhir pemeriksaan ketika probe terakhir telah dikirim dan Nmap menunggu
mereka time out atau mendapat respon. Adalah normal melihat rate pemeriksaan
menurun pada akhir pemeriksaan atau di antara kelompok host. Rate pengiriman mungkin
melebihi nilai maksimum untuk sementara waktu untuk mengimbangi delay yang tak terduga,
namun secara rata-rata rate akan tetap pada atau di bawah nilai maksimum.
Menspesifikasikan nilai rate minimum harus dilakukan dengan hati-hati. Pemeriksaan
yang lebih cepat daripada yang dapat didukung oleh jaringan akan menyebabkan hilangnya akurasi.
Dalam beberapa kasus, dengan menggunakan rate yang lebih cepat dapat membuat pemeriksaan menjadi
lebih lama daripada bila menggunakan rate yang lebih lambat. Hal ini
karena algoritma
adaptive retransmission
Nmap akan mendeteksi kepadatan jaringan yang disebabkan oleh rate pemeriksaan yang berlebihan
dan meningkatkan angka transmisi ulang untuk memperbaiki akurasi.
Jadi meskipun paket dikirim pada rate yang lebih tinggi, namun secara keseluruhan lebih banyak
paket yang dikirimkan. Batasi angka transmisi ulang dengan opsi
--max-retries jika anda ingin menset batas atas waktu scan total.
--defeat-rst-ratelimit
Banyak host telah lama menggunakan pembatasan rate
untuk mengurangi jumlah pesan kesalahan ICMP
(seperti kesalahan port-unreachable) yang mereka kirim.
Saat ini beberapa sistem menggunakan pembatasan limit ke paket RST (reset)
yang mereka hasilkan. Hal ini akan memperlambat Nmap secara dramatis karena
ia akan menyesuaikan pewaktuannya untuk mencerminkan batas rate tersebut. Anda dapat
memberitahu Nmap untuk mengabaikan limit rate tersebut (untuk scan port seperti SYN scan yang
tidak memperlakukan port non-responsiv sebagai
open) dengan menspesifikasikan
--defeat-rst-ratelimit.
Dengan menggunakan opsi ini akan mengurangi akurasi, karena beberapa port akan tampak
non-responsiv karena Nmap tidak menunggu cukup lama untuk respon RST yang rate-limited.
Dengan SYN scan, hasil non-respon dalam port akan ditandai dengan status
filtered alih-alih closed
ketika menerima paket RST. Tambahan ini berguna ketika anda hanya perlu
port terbuka, dan beda antara port
closed dan filtered
tidak cukup berharga.
-
-T
paranoid|sneaky|polite|normal|aggressive|insane
(Set a timing template)
Meski kendali waktu fine-grained yang didiskusikan dalam bagian sebelumnya
adalah powerful dan efektif, beberapa orang menganggapnya membingungkan.
Terlebih lagi, memilih nilai yang tepat terkadang membutuhkan waktu lebih lama
daripada pemeriksaan yang ingin dioptimisasi. Sehingga Nmap menawarkan pendekatan
yang lebih mudah, dengan enam template waktu. Anda dapat menspesifikasikannya dengan
opsi -T dan angkanya (0–5) atau namanya.
Nama templatenya adalah
paranoid (0),
sneaky (1),
polite (2),
normal (3),
aggressive (4),
dan insane (5).
Dua yang pertama adalah untuk menghindari IDS.
Mode Polite memperlambat scan untuk menggunakan lebih sedikit bandwidth
dan sumber daya mesin target. Mode Normal adalah bakunya sehingga
-T3 tidak melakukan apapun. Mode Aggressive mempercepat scan
dengan membuat asumsi bahwa anda berada pada jaringan yang cepat dan handal.
Akhirnya, mode insane
mengasumsikan bahwa anda berada pada jaringan yang sangat cepat atau rela mengorbankan
akurasi demi kecepatan.
Kesemua template ini memungkinkan user menspesifikasikan seberapa mereka
ingin agresif, dan membiarkan Nmap memilih nilai pewaktuan yang tepat. Template
juga membuat beberapa penyesuaian kecepatan minor yang tidak dimiliki oleh kendali
fine-grained saat ini. Sebagai contoh,
-T4
melarang delay scan dinamis melebihi 10 ms untuk port TCP dan -T5 membatasi
nilai tersebut di 5 ms.
Template dapat digunakan dalam kombinasi dengan kendali fine-grained,
dan kendali fine-grained yang anda berikan akan mengambil alih
template pewaktuan baku untuk parameter tersebut. Saya merekomendasikan
penggunaan -T4 ketika memeriksa jaringan modern dan handal.
Pertahankan opsi tersebut bahkan ketika anda menambah kendali
fine-grained sehingga anda memperoleh manfaat dari optimisasi minor yang diberikan.
Bila anda berada pada koneksi broadband atau ethernet yang memadai, saya akan
merekomendasikan untuk selalu menggunakan -T4. Beberapa orang mencintai
-T5 meskipun itu terlalu agresif untuk selera saya. Orang terkadang
memberikan -T2 karena mereka pikir ia lebih tidak mungkin akan menyebabkan
host crash atau karena mereka mengganggap dirinya secara umum sopan.
Mereka terkadang tidak menyadari betapa lambatnya -T
polite.
Scan mereka akan membutuhkan waktu sepuluh kali lebih lama daripada scan baku.
Mesin crash dan masalah bandwidth adalah jarang dengan opsi pewaktuan baku
(-T3) sehingga normalnya saya merekomendasikan untuk
pemeriksa yang berhati-hati. Menghilangkan deteksi versi lebih efektif
daripada bermain dengan nilai pewaktuan dalam mengurangi masalah ini.
Meski
-T0
dan -T1
mungkin berguna untuk menghindari alert IDS, mereka akan membutuhkan waktu yang sangat lama
untuk memeriksa ribuan mesin atau port. Untuk scan yang demikian lama,
anda mungkin lebih menyukai menset nilai pewaktuan secara tepat anda butuhkan alih-alih
bergantung pada nilai template -T0 and -T1.
Efek utama T0 adalah serialisasi scan sehingga
hanya satu port yang diperiksa pada satu waktu, dan menunggu lima menit
antara pengiriman setiap probe. T1 dan
T2 adalah serupa namun mereka hanya menunggu 15 detik dan 0.4
detik, antar probe. T3 merupakan perilaku baku Nmap, yang mencakup
paralelisasi.
-T4
ekivalen dengan --max-rtt-timeout 1250
--initial-rtt-timeout 500 --max-retries 6 dan menset delay scan TCP maksimum ke
10 milidetik. T5
ekivalen dengan
--max-rtt-timeout 300 --min-rtt-timeout 50
--initial-rtt-timeout 250 --max-retries 2 --host-timeout 15m dan juga
menset delay scan TCP maksimum ke 5 md.