definire i parametri della riga di comando che si desidera utilizzare . Ad esempio, è possibile utilizzare un parametro di tempo per specificare la durata del diluvio . Se il parametro viene omesso , l'alluvione potrebbe essere continuo. Un esempio d'uso di script Perl a linea di comando potrebbe essere la seguente : 
 
 flood.pl - port porta - dimensione byte - time secondi - kbps di banda - Ritardo msec 
 
 2 
 Includere la " presa ", " Getopt :: Long" e "Time :: HiRes " moduli Perl nel vostro script . Il modulo "Socket " carica il C socket.h definisce e manipolatori di strutture . Il modulo " Getopt :: Long" implementa la funzione GetOptions ( ) . La funzione legge la riga di comando del programma , si presenta per la corrispondenza argomenti , e se trovato , imposta l' opzione corrispondente variabile a true . Il "Time :: HiRes " modulo fornisce il tempo ad alta risoluzione e timer , come il " gettimeofday " chiamata di sistema . Per esempio : 
 
 uso Getopt :: Long ; 
 
 uso Socket; 
 
 uso Time :: HiRes ; 
 3 
 Dichiarare le variabili . Per esempio : 
 
 nostro $ port = 0; 
 
 nostro $ size = 0; 
 
 nostro $ tempo = 0 ; 
 
 nostro $ bw = 0 ; 
 
 nostro $ delay = 0; 
 4 
 Definire il tipo per le variabili dichiarate . Per esempio : 
 
 GetOptions ( 
 " port = i " 
 = > \\ $ porta , # Porta UDP da utilizzare 
 
 "size = i " = > \\ $ dimensioni , # packet size 
 
 " larghezza di banda = i " = > \\ $ bw , # quanta banda di consumare 
 
 " tempo = i " = > \\ $ tempo, il tempo in esecuzione # 
 
 " delay = f" = > \\ $ ritardo , # inter- packet delay 
 5 
 codice di comando di linea predefiniti dei parametri e il loro utilizzo . Ad esempio, è possibile impostare la dimensione del pacchetto a 256 byte se il parametro " larghezza di banda " è utilizzato senza il parametro "size " : ! 
 
 $ size = 256 $ se bw && $ dimensione ; 
 6 
 includono la stampa per la schermo di quello che lo script sta facendo , ad esempio : . 
 
 stampa " Inondazioni $ IP" . ( $ porta $ porta : ? "random " ) . " porta con " 
 
 ( $ size . ? ". $ size- byte" : " formato casuale " ), "pacchetti" ( $ tempo " per $ tempo secondi ": ""). "\\ n" ; 
 
 < . ? br>
              
Programmazione © www.354353.com