Python & nmap

alister alister.ware at ntlworld.com
Thu May 19 05:04:13 EDT 2022


On Wed, 18 May 2022 23:52:05 +0200, ^Bart wrote:

> Hi guys,
> 
> i need to copy some files from a Debian client to all linux embedded
> clients.
> 
> I know the linux commands like:
> 
> # scp "my_file" root at 192.168.205.x/my_directory
> 
> But... I have to upload 100 devices, I have a lan and a dhcp server just
> for this work and I'd like to make a script by Python which can:
> 
> 1) To scan the lan 2) To find which ips are "ready"
> 3) To send files to all of the "ready" clients 4) After I see on the
> display of these clients the successfully update I remove from the lan
> them and I put them to the box to send them to our customers.
> 
> I found https://pypi.org/project/python-nmap/ and I followed the line
> "To check the network status" but... it doesn't work.
> 
> THE INPUT
> 
-------------------------------------------------------------------------
> import nmap nm.scan(hosts='192.168.205.0/24', arguments='-n -sP -PE
> -PA21,23,80,3389')
> hosts_list = [(x, nm[x]['status']['state']) for x in nm.all_hosts()]
> for host, status in hosts_list:
>       print('{0}:{1}'.host)
> 
> THE OUTPUT
> ---------------------------------------------------------------------
> Traceback (most recent call last):
>    File "/home/gabriele/Documenti/Python/nmap.py", line 1, in <module>
>      import nmap
>    File "/home/gabriele/Documenti/Python/nmap.py", line 2, in <module>
>      nm.scan(hosts='192.168.205.0/24', arguments='-n -sP -PE
> -PA21,23,80,3389')
> NameError: name 'nm' is not defined
> 
> Regards.
> ^Bart


Opbservations worth considering
1) could possibly be handled by a simple bash script (My bash skills are 
not great So i would probably still go python myself anyway)
2) Instead of checking availability just try to send & react appropriately 
if it fails (Ask for forgiveness not permission), the client could fail 
after test or during transfer anyway so you will still need this level of 
error checking



-- 
QOTD:
	"What women and psychologists call `dropping your armor', we call
	"baring your neck."


More information about the Python-list mailing list