O'Reilly logo

Mastering Python for Networking and Security by Jose Manuel Ortega

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Asynchronous scanning

We can perform asynchronous scans using the PortScannerAsync() class. In this case, when performing the scan we can indicate an additional callback parameter where we define the return function, which would be executed at the end of the scan:

import nmapnmasync = nmap.PortScannerAsync()def callback_result(host, scan_result):    print host, scan_resultnmasync.scan(hosts='127.0.0.1', arguments='-sP', callback=callback_result)while nmasync.still_scanning():    print("Waiting >>>")    nmasync.wait(2)

In this way, we can define a callback function that is executed whenever Nmap has a result for the machine we are analyzing.

The following script allows us to perform a scan with Nmap asynchronously so that the target and port are ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required