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