script qui scane un reseau

script qui scane un reseau - Shell/Batch - Programmation

Marsh Posté le 14-06-2015 à 02:35:36    

bonjour svp j'ai besoin d'aide pou se script merci sa fait une semaine que je réfléchis dessus    
 
Un utilisateur qui lance le script verra apparaître sur son bureau un fichier texte, dont le nom sera constitué du nom de l'ordinateur, de la date et de l'heure. Ce fichier texte contiendra un listing des machines disponibles sur le sous-réseau.  
 
Particularités:  
- Le script fait référence aux variables d'environnement pour le nommage du fichier, l'emplacement de celui-ci (desktop).  
- Le script récupère via le système l'adresse IP et le masque de la machine, qu'il utilise comme des variables. - L'adresse IP et le masque sont utilisés pour effectuer un scan (le script peut être écrit pour se limiter à un usage de l'adressage par classe) complet du réseau, pour remplir le cache ARP, lui-même utilisé.  
- Le script mettra à profit un maximum d'indications disponibles (ipconfig, arp, net view,...)  pour réaliser un fichier le plus complet possible (objectif : IP, MAC, NOM des machines).  
- Le fichier sera un fichier csv pouvant être facilement mis en forme par un tableur classique. La première colonne étant le nom, puis l'adresse IP et ensuite l'adresse MAC.  
- Les machines sont triées en référence à leur adresse MAC, par ordre croissant des valeurs.  

Reply

Marsh Posté le 14-06-2015 à 02:35:36   

Reply

Marsh Posté le 14-06-2015 à 10:41:38    

j'ai trouver sa comme script  mais c'est trop compliquer :pfff:  
 
@echo off
color E
title scan du reseau
::
::
FOR /F "usebackq tokens=1-4 delims=/ " %%i in (`echo %date%`) do (
set jour=%%j
set mois=%%k
set annee=%%l
)
for /f "usebackq tokens=1-3 delims=: " %%m in (`echo %time%`) do (
set heure=%%m
set min=%%n
set sec=%%o
)
set nomfichier=%homedrive%\%homepath%\desktop\%computername%-%annee%-%mois%-%jour%-%heure%h%min%m%sec%s.txt  
copy nul %nomfichier%
if exist ~ip03.txt del ~ip03.txt
if exist ~names.txt del ~names.txt
if exist ~replies.txt del ~replies.txt
if exist ~ipconfig.txt del ~TEST-PC.txt
if exist ~ip02.txt del ~ip02.txt
if exist ~IP.txt del ~IP.txt
if exist report.txt del report.txt
if exist ~netbios.txt del ~netbios.txt
echo A Interro de scripting
echo.
set /p userdata=Entrer une phrase pour cet emplacement:  
ipconfig /all > ~Test-PC.txt
echo FINDING HOST IP
find "DHCP Server" ~ipconfig.txt >> ~IP.txt
for /f "tokens=1-2 delims=:" %%i in (~IP.txt) do echo %%j> ~ip02.txt
for /f "tokens=1-3 delims=." %%i in (~ip02.txt) do echo %%i.%%j.%%k> ~ip03.txt
for /f "tokens=1-2 delims= " %%i in (~ip03.txt) do set ip=%%i
>> report.txt echo ************************************************************
>> report.txt echo ************************************************************
>> report.txt echo ************************************************************
>> report.txt echo %userdata%    
>> report.txt echo Scanned on:
>> report.txt echo %date%
>> report.txt echo %time%maman
>> report.txt echo ************************************************************
>> report.txt echo                     Statistique du réseau
>> report.txt echo ************************************************************
>> report.txt type ~ipconfig.txt
>> report.txt echo ************************************************************
>> report.txt echo                           PING
>> report.txt echo ************************************************************
echo Scan de votre reseau
for /L %%x in (1,1,254) do echo %ip%.%%x & ping -n 1 -w 50 -i 6 %ip%.%%x | Find "Reply from %ip%.%%x" && echo %ip%.%%x>> ~replies.txt
>> report.txt echo               ordinateurs actif sur mon reseau
>> report.txt type ~replies.txt
>> report.txt echo ************************************************************
>> report.txt echo        Netbios
echo Scanning Active hosts...
for /f %%x in (~replies.txt) do echo %%x >> report.txt & nbtstat -A %%x | find "Registered" >> report.txt
>> report.txt echo ************************************************************
>> report.txt echo      Host machine open ports
netstat -an | find "LISTENING" >> report.txt
>> report.txt echo ************************************************************
>> report.txt echo                        Nom des Ordinateurs
find "<20>" report.txt >> ~netbios.txt
for /f "tokens=1 delims= " %%i in (~netbios.txt)do echo %%i >> ~names.txt
>> report.txt type ~names.txt
:view
echo.
echo voulez vous voir auncun de ces ordinateurs ?
type ~names.txt
set /p ans=       (y/n)  
echo %ans%
if %ans%==n goto cleanup
:share
echo.
echo quel ordinateur voulez vous voir?
set /p cpu=
start \\%cpu%
goto view
:cleanup
>> report.txt echo ************************************************************
>> report.txt echo ************************************************************
>> report.txt echo ************************************************************
>> report.txt echo.
>> report.txt echo.
>> report.txt echo.
type report.txt >> Net_Scan_History.txt
if exist ~names.txt del ~names.txt
if exist ~ip02.txt del ~ip02.txt
if exist ~replies.txt del ~replies.txt
if exist ~ipconfig.txt del ~ipconfig.txt
if exist ~ip03.txt del ~ip03.txt
if exist ~IP.txt del ~IP.txt
if exist ~netbios.txt del ~netbios.txt
start report.txt
exit

Reply

Marsh Posté le 14-06-2015 à 18:39:23    

Utilité quand il existe des produits comme Dipiscan ? [:spamatounet]


---------------
Grippe ? Coronavirus ? Portez votre masque correctement ! :D
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed