Generalità e configurazione di router Cisco Scopo di questo documento è il fornire una guida rapida per la configurazione dei router Cisco.
Cenni preliminari sui router Cisco I router Cisco si possono distinguere nei seguenti componenti principali: Schede di interfaccia: sono normalmente delle schede di espansione che si inseriscono in appositi alloggiamenti e che ospitano vari tipi di interfacce fisiche (Ethernet, ...), la logica per il loro funzionamento, etc.; normalmente il router viene venduto spoglio (senza interfacce di rete) ed è l'utente che decide, in base ai propri bisogni, qual è l'insieme di schede più appropriate per le proprie esigenze. interfacce di rete: comprendono i connettori destinati ad attacchi di rete; tra le principali si possono citare: AUI: interfaccia Ethernet di tipo AUI 10BaseT: interfaccia Ethernet di tipo 10BasetT SERIAL: interfacce seriali sincrone (da collegare, con apposito cavo proprietario, a modem sincroni con interfaccia V.35) BRI: interfaccia verso l'NT di un ISDN basic rate ATM: interfaccia ATM, in fibra oppure in rame interfacce di gestione: comprendono i connettori necessari alla configurazione del router, e principalmente: CONSOLE: interfaccia seriale (asincrona), usata per il collegamento di un terminale seriale per la configurazione del router AUX: porta seriale asincrona RS232 usata per il collegamento di altre periferiche (modem, cavo seriale null modem), spesso per la configurazione remota supporti di memorizzazione memoria ROM: memoria nella quale è memorizzato il software di base del router (fondamentalmente quello necessario all'accensione) memoria FLASH: memoria di tipo "permanente", nella quale è memorizzato il sistema operativo (IOS) e la configurazione "salvata" memoria RAM: memoria di tipo "temporaneo" (si cancella allo spegnimento del router) nella quale è memorizzata la configurazione "corrente" del router e le varie variabili temporanee necessarie al router per il suo funzionamento (es. tabelle di routing, ...) CPU: componente che sovrintende al funzionamento di tutta la macchina, la cui potenza varia a seconda della classe della macchina (e che possono essere anche più di una a seconda della classe del router). Il compito della CPU si può riassumere in: svolgimento del processo di forwarding (lettura dei pacchetti in input dalle varie interfacce, determinazione dell'interfaccia di uscita, invio del pacchetto su tale interfaccia) calcolo delle tabelle in instradamento, aggiornamento dei dati di routing supervisione del router (gestione dei comandi dell'operatore, ...) La potenza di un router (intesa in numero di pacchetti al secondo inoltrati) è variabile a seconda di alcune scelte architetturali del router: i router di fascia bassa hanno schede (interfacce) "stupide", e tutto il lavoro è fatto dall'unica CPU centrale, la cui potenza può essere variabile a seconda delle prestazioni richieste i router di fascia media hanno schede intelligenti con CPU dedicate a bordo, le quali svolgono autonomamente buona parte del processo di forwarding; la CPU centrale si occupa del calcolo delle tabelle di instradamento e della gestione della macchina i router di fascia alta (layer 3 switch) hanno schede intelligenti con processo di forwarding in hardware, con prestazioni altissime; la CPU centrale si occupa del calcolo delle tabelle di instradamento e della gestione della macchina Il grosso punto di vantaggio dei router Cisco sta nel sistema di gestione, tradizionalmente molto potente (anche se ostico ad un primo impatto); questo sistema operativo (IOS) risiede nella memoria Flash. Dall'interfaccia di gestione è possibile dare comandi appositi per la configurazione della macchina.
Configurazione: FLASH e memoria, terminale e rete Quando si configura il router (gli si cambiano i parametri, ...) questi comandi vengono salvati nella memoria RAM del router. Il router rende questi comandi immediatamente operativi, ma il loro effetto si esaurisce allo spegnimento del router. Per rendere questa configurazione effettiva anche ad un successivo reboot è necessario salvare la configurazione in Flash, da dove verrà letta all'accensione del router. Ne consegue che: non è detto che la configurazione RAM e FLASH siano allineate; in mancanza della configurazione RAM (ad esempio allo startup del router) viene letta quella della FLASH, altrimenti è la prima ad avere la precedenza la configurazione RAM viene trasferita in FLASH solo in corrispondenza di uno specifico comando dell'operatore è possibile procedere ad una opportuna politica di backup, copiando la configurazione RAM in FLASH solamente quando si è sicuri dalla correttezza della stessa (ad esempio si è verificato il corretto comportamento del router in queste condizioni per un certo tempo). La configurazione corrente del router può essere anche salvata (o letta) via rete, attraverso il protocollo TFTP. E' possibile quindi indicare al router di scrivere il file di configurazione in rete (anziché in FLASH) su uno specifico TFTP server, ottenendo il file testuale della configurazione. Analogamente è possibile indicare al router di leggere un file di configurazione via rete anziché procedere alla configurazione manuale del tutto. I router Cisco fanno largo uso di server TFTP; anche il caricamento di una nuova versione del sistema operativo fa uso di questi tipi di servers.
Menù e comandi L'IOS ha interfaccia completamente testuale. I suoi menù seguono un'organizzazione gerarchica su N livelli annidati: modalità utente: è possibile visualizzare alcuni dati di funzionamento del router modalità privilegiata: è possibile visualizzare tutti i dati di funzionamento del router e viene abilitata la possibilità di cambiarne la configurazione modalità configurazione: è possibile variare i parametri di funzionamento del router e procedere alla sua configurazione sub-menù di configurazione di una funzione specifica (ad esempio la configurazione di una interfaccia) E' possibile passare da un livello all'altro con specifiche parole chiave; per uscire dallo specifico sottomenù si usa la parola chiave exit. La parola chiave end permette invece il ritorno diretto da qualunque sottomenù di configurazione alla modalità privilegiata. In ogni momento l'IOS rende disponibile un help contestuale, richiamabile digitando il carattere "?". Vengono quindi elencati tutti i comandi disponibili in quella particolare modalità; per un help più specifico è possibile digitare "comando ?" in riferimento al comando desiderato. Ogni comando è disponibile in forma negata e affermata: è possibile abilitare una determinata funzione digitando "stringa_di_comando" e disabilitare la funzione stessa digitando "no stringa_di_comando". Ogni comando è disponibile in forma abbreviata (corrispondente ad accorciare le parole dei vari comandi) purché quella parola non sia ambigua. Il comando corrente è automaticamente è completato con la pressione del tast Tab.
Passi principali per la configurazione I principali passi necessari alla configurazione completa dei router Cisco può essere così schematizzata: configurazione di base: parametri di sistema, password configurazione delle interfacce: configurazione a basso livello, imbustamento, velocità, indirizzi configurazione del routing: route di default, attivazione dell’instradamento (forwarding), parametri propri di ciascun processo di routing (OSPF, …) configurazione avanzata: access lists, etc
Accesso e configurazione di base L'accesso al router può avvenire via rete (telnet) oppure collegando un terminale (o un PC) alla console (fisicamente è una porta seriale classica) del router. Nel primo caso è possibile la gestione da remoto; nel secondo caso è necessario essere in locale (oppure collegato al router tramite modem). Accesso via telnet Accesso via console telnet indirizzo_ip Dopo aver collegato un terminale VT100 (oppure un PC mediante un cavo seriale) è Sono ammessi gli indirizzi IP di tutte possibile inserire direttamente i comandi del sistema operativo. le interfacce attive non unnumbered Parametri per l'emulazione terminale: del router 9600 bps 8 bit No parity Stop Bit 1 Flow Control Hardware Richiede normalmente due password Richiede una sola password di accesso, quella per l'accesso alla modalità privilegiata. di accesso: L'accesso in locale è obbligatorio nella fase di configurazione iniziale del router; quella per l'accesso al router successivamente è possibile utilizzare anche l'accesso telnet (se il router è raggiungibile). quella per l'accesso alla modalità privilegiata Procedura per l'accesso (via telnet): Procedura per l'accesso (via terminale): uguale a quella via telnet, tranne per il fatto telnet indirizzo_ip che di default ci si ritrova direttamente in modalità utente (si risparmia una password). viene richiesta la password di accesso si entra in modalità utente Per entrare in modalità privilegiata: enable viene richiesta la password di amministrazione Per entrare in modalità di configurazione: configure terminal (abbreviato: conf t) (oppure configure network per la configurazione via rete) il prompt cambia e ci si trova in modalità di configurazione
Comandi principali a router spoglio enable erase startup_config configure terminal hostname Cisco1 enable password ena_pwd line vty 0 4
Entra in modalità amministrazione (richiede una password). Cancella la configurazione della FLASH. Entra in configurazione; la configurazione è fatta da terminale (non da rete). Assegnazione del nome al router. Abilitazione (e configurazione) della password del router locale (quella richiesta alla digitazione del comando enable). Configurazione dei terminali virtuali: il primo numero dopo il VTY indica il numero del primo terminale virtuale; il secondo indica il numero dell’ultimo terminale virtuale (in questo .caso è stata configurata la possibilità di 5 accessi contemporanei al router) login Imposizione del login nell’accesso via telnet (ma non impone una password). password telnet_pwd Abilitazione (e configurazione) della password di accesso al router via telnet. exit Esce dalla modalità di configurazione dei terminali virtuali. exit Esce dalla modalità di configurazione. Altri comandi fondamentali (attivabili solo in modalità enable) write [memory] Salva nella FLASH la configurazione attiva. write network Salva su un server TFTP la configurazione attiva. reload Effettua il reboot del router. write terminal Comandi equivalenti; visualizzano su monitor l'attuale configurazione del router show running-config (quella in RAM). show configuration Visualizza su monitor la configurazione salvata su FLASH. NOTA: quando viene visualizzata una configurazione, vengono riportate solo le opzioni che non sono al valore standard.
Controllo e debugging I principali comandi di utilità, controllo e debugging sono solitamente disponibili solo in modalità privilegiata show comando Visualizza i parametri relativi a comando. show ? Elenca ciò che è possibile visualizzare. term mon Attiva il debuging sul monitor (necessario solo via telnet, per attivare l’output su term no mon terminale locale e non sulla console del router). (per la sua disattivazione) debug comando Per attivare il debug su una funzione specifica. debug ? Mostra le attività su cui il debugging può essere attivato. ping indirizzo Controlla la raggiungibilità di indirizzo. NOTA: non raggiungibilità non implica automaticamente la mancanza di una route per raggiungere la destinazione, ma più anche essere l’eventuale mancanza di una route per il ritorno. trace indirizzo Visualizza il percorso verso la destinazione; nel caso di più percorsi, li visualizza tutti. [telnet] indirizzo Apre un terminale virtuale con la destinazione.
Configurazione e controllo delle interfacce L'IOS assegna ad ogni interfaccia fisica di rete un identificativo univoco all'interno del sistema. Questo identificativo è formato dal loro nome "tecnologico" più un identificativo numerico (quindi si troveranno Ethernet0, Ethernet1, Serial 0, Serial1) in ordine crescente. Da questo punto in poi si seguiranno le seguenti regole: i comandi, eccetto quando chiaramente specificato, saranno comandi disponibili solamente da in modalità configurazione (o da un suo sottomenu) a questa regola fanno eccezione i comandi inizianti per "show", i quali sono disponibili esclusivamente in modalità "enable". Comandi fondamentali ip subnet-zero Abilita l’uso della subnet zero sulle interfacce e sulle routing updates. In mancanza di questo comando non è possibile configurare una rete come 130.192.1.0 netmask 255.255.255.252, ma solo 130.192.1.4. ip address indirizzo Assegna all’interfaccia l’indirizzo indirizzo. Questo comando permette l'entrata maschera [secondary] nel sottomenu di configurazione delle interfacce. L’opzione secondary indica che l’indirizzo è secondario. description Assegna una stringa letterale per la descrizione dell’interfaccia. descrizione_interfaccia shutdown Disabilita il funzionamento di quell'interfaccia (può essere utilizzato ad esempio dalle interfacce ISDN per forzare la terminazione della chiamata corrente); per riattivare l'interfaccia è necessario digitare no shutdown. mtu valore Definisce una MTU diversa rispetto a quella standard. ip proxy arp Abilita il proxy arp su quell’interfaccia. show interface [nome] Visualizza gli attuali dati relativi alle interfacce del router; se viene specificato nome, vengono visualizzati solamente i dati relativi a quell'interfaccia. encapsulation ppp | hdlc Definisce il tipo di protocollo sul link fisico. HDLC è una versione proprietaria (solo link seriali e CISCO (permette il multiprotocol), per cui è necessario usare il PPP quando è ISDN) necessaria l’interoperabilità con altri costruttori. HDLC non prevede autenticazione. clockrate valore Definisce la velocità del link seriale (non usato per ISDN). Il clock rate va abilitato (solo su link seriali) solo nel caso di connessione di router con cavo DCE/DTE, e solo sul router che dispone del lato DCE. In un normale collegamento il clock viene fornito dal modem e non dall’interfaccia. ppp authentication {chap Abilita l’uso dell’autenticazione su quel particolare link PPP. Per autenticarsi | pap} dall'altra estremità del link, il router usa come nome utente il proprio nome. Entrambi i protocolli di autenticazione possono essere contemporaneamente attivi, e vengono tentati nell’ordine in cui compaiono. username name password Associa password a nomi, ed è un comando di configurazione globale (non di secret passwd interfaccia). Il router usa come password quella associata al proprio nome; secret è un numero che specifica il tipo di cifratura per la password. interface Ethernet1 Esempi di configurazione ip address 128.99.3.8 255.255.255.0 ip addr 128.99.4.9 255.255.255.0 sec no shutdown exit interface Bri0 ip address 128.99.9.2 255.255.255.0 no shutdown exit interface Serial0 ip address 128.99.10.3 255.255.255.0 clockrate 2000000 encapsulation ppp no shutdown
end
Configurazione ISDN I passi fondamentali per la configurazione di ISDN sono: configurazione del tipo di ISDN configurazione delle interfacce configurazione dei gruppi configurazione delle eventuali access-list Comandi principali isdn switch-type basicImposta il tipo di switch con cui operare (euro-isdn). net3 Nelle ultime versioni di IOS questo comando è diventato comando di interfaccia (prima era globale), per cui diventa possibile avere interfacce ISDN attaccate a diversi tipi di centralini (con segnalazione diversa). show isdn status Visualizza lo stato delle connessione; la voce “layer 3” indica se la chiamata è in piedi oppure no. dialer string num Utilizza sempre il numero num per aprire una chiamata. Questo comando (oppure in alternativa quello successivo) è sempre obbligatorio. dialer map prot indir Permette di definire più numeri a cui instradare la chiamata a seconda del pacchetto [name name] num che si presenta all’interfaccia, con il significato "per instradare un pacchetto del protocollo prot verso il next-hop indir apri una connessione con il numero ISDN num". Il pacchetto deve essere di interesse per l’interfaccia; inoltre la corrispondenza tra indir e num è utilizzata anche in fase di accettazione delle chiamate (“Se devo raggiungere l'indirizzo indir devo comporre il numero num” ma anche: “Riconosco come pacchetti validi provenienti da indir solo quelli che provengono da una connessione col numero num”). dialer-group num Indica il tipo di filtro da applicare ai pacchetti che attraversano l’interfaccia (specifica il gruppo di accesso cui appartiene l’interfaccia); è un comando obbligatorio. dialer idle-timeout sec Tempo dopo il quale, se non viene rilevato traffico su quell'interfaccia, il collegamento viene disattivato. Se non specificato viene adottato quello standard (120 sec). isdn answer1 num Indica che può accettare chiamate provenienti dal numero ISDN num; è usato per il controllo accessi. dialer-list num protocol Definisce la dialer-list numero num, abilitando (permit) o negando (deny) la proto [permit | deny] chiamata per tutti i pacchetti del protocollo proto. E' un comando di configurazione globale. dialer-list num protocol Abbina la dialer-list numero num (che vale solamente per un certo protocollo proto list num_list proto) all’access-list num_list. access-list num {permit | Crea la lista di accesso numero num: deny} proto permit: identifica pacchetti che causeranno l’instaurazione di una source [source-mask] connessione deny: identifica pacchetti che non causeranno l’instaurazione di una connessione source-mask: i bit a 1 indicano le posizioni che si vogliono ignorare (l'opposto della netmask IP) Esempio: permettere l’ingresso e l’uscita a tutti i pacchetti IP: access-list 101 permit ip any any access-list num {permit | Analoga alla versione precedente, ma con sintassi estesa; controlla i pacchetti in base deny} proto agli indirizzi sorgente e destinazione degli stessi. source source-mask Esempio: disabilitare l’inoltro dei pacchetti IGRP provenienti da qualunque sorgente dest dest-mask e diretti verso qualunque destinazione: access-list 101 deny igrp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255 show dialer Visualizza le informazioni sui dialers attivati; il campo "last called" indica il tempo trascorso da quando l'interfaccia indicata ha effettuato una chiamata ISDN. show dialer interface Visualizza le informazioni sui dialer profiles attivati. show dialer map Visualizza i dialer map correnti, l’indirizzo del next hop a cui instradare la chiamata, username utilizzati, le interfacce sulle quali sono configurati.
clear dialer
Azzera i valori delle statistiche.
Configurazione dei gruppi e delle Access Lists Ogni interfaccia dial-up deve appartenere ad almeno un gruppo logico (dialer-group) che identifica una serie di interfacce con determinate caratteristiche (ad esempio quelle di sicurezza) comuni. Un gruppo di esempio può essere “chiamate dial-up verso la sede centrale”. Se l'interfaccia appartiene a più gruppi (dialer_list), sarà possibile specificare in ognuno di essi diverse politiche di accesso per un ben determinato protocollo (IP, IPX, …). Dopo aver specificato l'appartenenza di ogni interfaccia ad almeno un gruppo, è necessario definire le caratteristiche di ogni gruppo, ossia definire in base a che pacchetti l’interfaccia è abilitata a fare la chiamata verso la sede remota. Nell'esempio seguente la chiamata viene instradata se ci sono dei pacchetti IP da instradare: Interface BRI0 dialer-group 1 exit dialer-list 1 protocol ip permit La dialer-list non permette tuttavia di definire politiche sofisticate in quanto permette di scegliere solo il protocollo ma non altri dettagli (ad es. abilitare alla chiamata solo i pacchetti che arrivano da una certa sottorete). Per politiche più complesse la dialer-list viene associata ad una access-list, permettendo di abbinare quel particolare gruppo ad una serie di politiche estese definite da queste ultime strutture. Per una data dialer-list e un dato protocollo è possibile una sola access-list, la quale può essere composta da più righe rendendo possibili diverse politiche contemporaneamente. L'access-list specificherà in dettaglio le politiche che daranno luogo all’instaurazione della chiamata. Esempio completo di configurazione conf t Entra in modalità configurazione. isdn switch-type basicDefinisce il tipo di ISDN utilizzato. net3 interface BRI0 Entra in configurazione interfaccia. ip address Definisce l'indirizzo IP. 130.192.27.33 255.255.255.240 encapsulation ppp Definisce il livello 2. dialer map ip Abbina il numero telefonico da chiamare con l'indirizzo IP remoto. 130.192.27.34 5178046 dialer-group 1 Assegna l'interfaccia al gruppo numero 1. exit Esce dalla configurazione dell'interfaccia. ip route 130.192.27.0 Configura le route statiche necessarie per raggiungere il resto della rete attraverso 255.255.255.0 ISDN. 130.192.27.34 dialer-list 1 protocol ip Dialer-list: definisce come “interessanti” tutti i pacchetti IP, quindi associa il dialerlist 101 group 1 alla access-list 101 per un miglior raffinamento della politica di accesso. access-list 101 permit ip Filtro (numero 101) da applicare ai pacchetti. In questo caso, una access-list così any any semplice è superflua in quanto sarebbe bastato il semplice comando dialer-list. Una access list “migliore” potrebbe essere: access-list 101 permit ip 126.0.0.0 0.255.255.255 128.16.64.0 0.0.0.255 access-list 101 deny igrp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255 dove si accettano in ingresso i pacchetti della rete 126.x diretti verso la 128.16.64.x, purché questi pacchetti non siano IGRP. end Termina la configurazione corrente.
Configurazione di backup, trabocco E' opportuno evidenziare come il backup (in generale) si può ottenere anche su un’altra interfaccia che non sia una dial-up, anche se tali interfacce sono le più utilizzate. backup interface tipo Comando, dato sull'interfaccia primaria, che identifica l’interfaccia tipo numero come numero backup. backup delay {abil L’interfaccia di backup è abilitata dopo abil secondi che l’interfaccia primaria non è {disabil | never}} più attiva, ed è disabilitata dopo disabil secondi che l’interfaccia primaria è nuovamente attiva. Questo comando è dato sull’interfaccia primaria.
backup load {abil {disabil | never}}
Esempio di configurazione interface Serial0 backup delay 0 0
backup interface BRI0 ip address 130.192.27.17 255.255.255.240 encapsulation ppp exit interface BRI0 ip address 130.192.27.33 255.255.255.240 encapsulation ppp isdn answer1 115180136
dialer map ip 130.192.27.34 5180135 dialer-group 1 exit ip route 130.192.0.0 255.255.0.0 130.192.27.34 2
L’interfaccia di backup è abilitata quando il traffico sull’interfaccia primaria è superiore ad abil % della capacità del canale primario, ed è disabilitata quando il traffico aggregato è inferiore a disabil % la capacità del canale primario. Questo comando è dato per l’interfaccia primaria; il load viene calcolato come il carico medio sul link in un intervallo sufficientemente lungo (qualche minuto). Esempio: attivare il backup quanto il carico supera il 60% della capacità dell’interfaccia Serial0; la disattivazione avviene quando il carico aggregato (Serial0 + Serial1) è minore del 5% della sola capacità dell’interfaccia primaria (Serial0): interface Serial0 backup load 60 5 backup interface serial1 Entra in configurazione della serial0. Configura il tempo di intervento del backup: l'interfaccia di backup si attiva non appena l'interfaccia primaria cade, e si disattiva non appena l'interfaccia prima ritorna attiva. Definisce la BRI0 come interfaccia di backup. Configura l'indirizzo IP.
Definisce il protocollo di livello 2. Termina la configurazione dell'interfaccia Serial0. Entra in configurazione della ISDN. Configura l'indirizzo IP.
Definisce il protocollo di livello 2. Definisce il numero da cui è in grado di accettare le chiamate (non necessario sul chiamante). NOTA: siccome non è definito a priori quale sarà il primo router ad effettuare la chiamata di backup (in generale sarà il primo che riceverà un pacchetto da recapitare all'altro capo della connessione), è opportuno che i due router affacciati siano configurati in modo speculare per quanto riguarda i comandi isdn answer1 e dialer map. Definisce il numero telefonico e l'indirizzo dell'altro capo del link.
Definisce l'appartenza dell'interfaccia al gruppo 1. Termina la configurazione dell'interfaccia BRI0. Definisce la route secondaria (a costo maggiore) verso la destinazione in modo da utilizzare il collegamento ISDN. NOTA: il comando backup imposta l’interfaccia di backup ed effettua la chiamata, ma non sposta automaticamente le route sulla nuova interfaccia in quanto l’interfaccia ISDN ha un indirizzo IP diverso e quindi la precedente route non è più valida. Il costo superiore per quanto riguarda questa route evita che in condizioni normali i pacchetti transitino su questo link. ip route 130.192.0.0 Definisce la route primaria verso la destinazione in modo da utilizzare il 255.255.0.0 130.192.27.18 collegamento seriale. NOTA: questa route viene automaticamente eliminata nel momento in cui il link seriale si interrompe. dialer-list 1 protocol ip Abbina il gruppo 1 con l'access list 101. list 101 access-list 101 permit ip Definisce l'access list 101. any any end Termina la configurazione.
Configurazione dei Dialer Profiles (o Rotary groups) I dialer profiles consentono il mapping della configurazione di una interfaccia fittizia ad un insieme di interfacce fisiche, consentendo ad un numero limitato di interfacce fisiche di chiamare molte destinazioni al seconda del bisogno. Il problema del mapping statico (senza dialer profiles) è schematizzato dal seguente esempio: si supponga che le interfacce A, B, C definiscano come backup rispettivamente D, E, E se cadono contemporaneamente B e C una delle due non potrà usufruire del backup, anche se una linea (D) è libera Con l'attivazione dei dialer profiles, invece: le interfacce A, B, C definiranno come backup rispettivamente F, G, H, che sono interfacce fittizie F,G,H utilizzeranno, per le chiamate, uno stesso insieme (pool) di interfacce fisiche D, E D, E sono configurate ad appartenere allo stesso pool di chiamata (pool-member) se cadono contemporaneamente B e C verranno automaticamente attivate le interfacce G, H queste inoltreranno la richiesta sulle prime due interfacce fisiche appartenenti a quel pool (D, E) La configurazione avviene operativamente con i seguenti passi: si definisce una interfaccia logica (dialer) che implementa il rotary-group si definiscono quali sono le interfacce fisiche che appartengono a quel rotary group si configurano le interfacce opportune a sfruttare il backup se necessario le interfacce che necessitano di avere un backup specificheranno come backup interface non le interfacce fisiche (BRI0, …) ma quelle logiche (Dialer) Nel caso in cui il rotary group venga utilizzato per la trasmissione di protocolli di routing potrebbe essere necessario disabilitare lo split horizon e la validazione dell’indirizzo sorgente: router rip no validate-update-source Esempio di configurazione interface dialer0 Definisce una prima Dialer Interface. ip unnumbered loopback0 Specifica un indirizzo di loopback IP unnumbered. encapsulation ppp Definisce l’encapsulation PPP. dialer remote-name CHAP autentication name del router remoto. Remote0 dialer pool 1 Specifica il pool number. Nel momento in cui questa interfaccia dovesse attivarsi per fare una chiamata, verrà utilizzata una delle interfacce fisiche associate a questo pool (in questo caso BRI0). dialer string 5551212 Numero di telefono. dialer-group 1 Assegna l’interfaccia ad un dialer group. exit Termina la configurazione di questa interfaccia. interface dialer1 Definisce una seconda Dialer Interface. ip unnumbered loopback0 Specifica un indirizzo di loopback IP unnumbered. encapsulation ppp Definisce l’encapsulation PPP. dialer remote-name CHAP autentication name del router remoto. Remote1 dialer pool 1 Specifica il pool number. Nel momento in cui questa interfaccia dovesse attivarsi per fare una chiamata, verrà utilizzata una delle interfacce fisiche associate a questo pool (in questo caso BRI0). dialer string 5551234 Numero di telefono. dialer-group 1 Assegna l’interfaccia ad un dialer group. exit Termina la configurazione di questa interfaccia. interface serial0 Specifica la Serial0. ip unnumbered loopback0 Specifica un indirizzo di loopback IP unnumbered. backup interface Definisce la Dialer0 come interfaccia di backup. dialer0 backup delay 5 10 Specifica i parametri di attivazione / disattivazione del backup. exit Termina la configurazione di questa interfaccia. interface serial1 Specifica la Serial1. ip unnumbered loopback0 Specifica un indirizzo di loopback IP unnumbered. backup interface Definisce la Dialer1 come interfaccia di backup. dialer1
backup delay 5 10 exit interface bri0 encapsulation ppp dialer pool-member 1
Specifica i parametri di attivazione / disattivazione del backup. Termina la configurazione di questa interfaccia. Specifica l’interfaccia ISDN. Definisce l’encapsulation PPP. Definisce l’interfaccia come appartenente al pool “1”. Questa interfaccia verrà usata da Dialer0 e Dialer1 per far partire la chiamata. In alcune versioni di IOS il comando è sostituito da: dialer rotary-group num ppp authentication chap Definisce l’autenticazione CHAP. exit Termina la configurazione di questa interfaccia. Per rendere funzionante questo esempio è necessario, al solito, configurare successivamente le dialer-list e le accesslist.
Configurazione e controllo del routing Comandi fondamentali show ip route clear ip route {network [mask] | *}
Mostra la routing table del protocollo IP. [Modalità privilegiata] Permette la cancellazione di una o più route che si suppongono non più valide. Questo comando non prmette la cancellazione delle route statiche. show ip proto Visualizza lo stato di ogni protocollo di routing attivo (tempistiche, parametri (es per EIGRP), redistribuzioni, …). ip routing Abilita il router ad instradare pacchetti IP (processo di forwarding). NOTA: è un comando usato in forma negata (no ip routing) per cancellare completamente la precedente configurazione di routing, lasciando il router spoglio. A questo punto si riabilita il routing e si procede alla sua nuova configurazione. ip classless Nel momento in cui il router riceve un pacchetto per cui non ha una route specifica (e nemmeno la default route), usa la migliore supernet route possibile. Route statiche, di default, redistribuzione ip route indirizzo I pacchetti destinati alle reti comprese nel range (indirizzo, maschera) devono maschera router essere instradati verso router, che deve essere: [distanza] in una sottorete direttamente collegata a una delle interfacce una porta del router corrente nel caso in cui l’interfaccia sia unnumbered Esempio: interface Ethernet1 ip address 128.99.3.8 255.255.255.0 exit interface serial0 ip unnumbered loopback0 exit ip route 130.192.0.0 255.255.0.0 128.99.3.2 ip route 130.192.4.0 255.255.255.0 128.99.3.9 ip route 198.205.2.0 255.255.255.0 serial0 NOTA: la route può essere sostituita da una appresa dinamicamente e avente distanza inferiore. no ip route indirizzo Elimina la route statica. maschera router ip default-network Configura una route di default. indirizzo E' immessa da uno smart router, il quale normalmente conosce le route per qualsiasi indirizzo, e diffonde la route di default tramite i protocolli di routing. La modalità con cui questa è propagata dipende dal protocollo di routing: RIP annuncia 0.0.0.0 0.0.0.0 IGRP annuncia indirizzo indicandola come route esterna e candidata route di default. redistribute protocollo Distribuisce nel dominio del router in questione le informazioni raccolte tramite il [id] protocollo protocollo; è un sottocomando della modalità router id è necessario per discriminare tra più processi dello stesso protocollo (es. EIGRP)
redistribute static redistribute connected
Esempio: router rip redistribute igrp 148 In questo caso il processo di router RIP distribuisce tutte le route apprese da IGRP, ma non il viceversa. E' spesso usato in abbinamento al comando default-metric, necessario per specificare il costo delle route da ridistribuire. Ridistribuisce all'interno del protocollo di routing in esame tutte le sue route statiche. Ridistribuisce le route che vengono create automaticamente per il fatto di avere una interfaccia in esse: le route interessate da questo comando sono quelle non specificare da un esplicito comando network per OSPF e IS-IS queste route sono ridistribuite come appartenenti all’esterno dell’AS.
Comandi comuni ai vari protocolli di routing router proto [ID]
Abilita il protocollo di routing specificato; entra in modalità di configurazione di tale protocollo; ha modalità leggermente diverse per ogni protocollo. network indirizzo_di_rete Specifica le reti (direttamente connesse al router) che sono nel dominio di routing in esame (e che verranno annunciate dal protocollo); il router automaticamente capisce quali sono le sue interfacce interessate dal dominio, ed abilita l'invio e le ricezione di messaggi di updates attraverso quelle interfacce. La sintassi del comando è leggermente diversa in OSPF e in BGP. passive-interface Inibisce l’invio di messaggi di update sull’interfaccia (che, ad esempio, è al bordo del interfaccia dominio di routing). Può essere una ragione amministrativa (evitare di propagare messaggi in una specifica direzione) oppure economica (impedire la generazione di messaggi di routing su linee commutate quali ISDN). default-metric metrics Comando abbinato al redistribute, indicando che tutte le route apprese dall’esterno sono da ridistribuire con metrica metrics; ha modalità leggermente diverse per ogni protocollo. Comandi specifici per ogni protocollo router rip Abilita il protocollo di routing RIP. RIP version 1 | 2 Abilita l’invio di messaggi secondo la versione 1 o 2 (default 1); nella ricezione capisce ambedue le versioni. neighbor indirizzo Indica al router di inviare i messaggi RIP non solo in broadcast, ma anche all’indirizzo indirizzo specificato; è usato su reti senza capacità broadcast oppure per prevenire l'invio dei messaggi di aggiornamento a specifici routers (ad esempio su LAN in congiunzione al comando passive-interface, per abilitare solo specifici neighbors, per ragioni di policy). Esempio: interface Ethernet 0 ip address 128.99.1.8 255.255.255.0 exit router rip passive interface Ethernet0 network 128.99.1.0 neighbor 128.99.1.11 end default-metric Comando abbinato al redistribute, indicando che tutte le route apprese metric dall’esterno sono da redistribuire con metrica metric (in questo caso un numero).
IGRP EIGRP
Esempio di configurazione: interface Ethernet 0 ip address 128.99.1.8 255.255.255.0 aggrega più reti exit (le 129.99.x.x) in interface Ethernet 1 un'unica entry ip address 128.99.3.8 255.255.255.0 evita l'invio degli exit annunci interface Bri 0 sull'interfaccia ip address 128.99.9.15 255.255.255.0 ISDN, ponendola exit passiva interface Serial 0 ip address 192.31.7.22 255.255.255.0 exit router rip version 2 network 128.99.0.0 network 192.31.7.0 passive-interface Bri0 end router igrp Attiva il processo di routing. process_id process_id: identifica il particolare processo di routing in esecuzione, router eigrp che deve essere uguale in tutti i router del dominio IGRP/EIGRP in quanto process_id l’informazione viene inclusa negli annunci. Se si è in un AS registrato è buona norma porre questo identificativo pari al numero dell’AS; nel caso si voglia impiegare contemporaneamente IGRP e EIGRP (per esempio per necessità di transizione), IGRP e EIGRP possono scambiarsi informazioni solo se process_id = AS. default-metric k1 Comando abbinato al redistribute, indicando che tutte le route apprese dall’esterno k2 k3 k4 k5 sono da redistribuire con metrica indicata. Esempio: default-metric 10000 100 255 1 1500 Significato dei termini: banda, ritardo, affidabilità, carico, MTU metric weights tos Cambia il valore dei parametri utilizzati per il calcolo del costo per uno specifico k1 k2 k3 k4 k5 codice Tipe Of Service (anche se è fortemente sconsigliato cambiarli); il significato dei termini è analogo al comando default-metric. Valori di default: tos: 0, k1=k3= 1, k2=k4=k5= 0. no metric holddown Disabilita l’algoritmo di hold down di IGRP, migliorando il tempo di convergenza a (solo IGRP) scapito di possibilità di loop. show ip eigrp Comandi di controllo del funzionamento del processo EIGRP. interfaces show ip eigrp neighbors show ip eigrp topology show ip eigrp traffic (solo EIGRP)
OSPF
Esempio di configurazione interface Ethernet 0 ip address 128.99.1.6 255.255.255.0 exit interface Ethernet 1 ip address 128.99.3.12 255.255.255.0 exit interface Bri 0 ip address 128.99.9.4 255.255.255.0 exit interface Serial 0 ip address 192.31.7.4 255.255.255.0 exit router EIGRP 143 passive-interface Bri 0 network 128.99.0.0 network 192.31.7.0 end router ospf Abilita un processo di routing OSPF: process_id process_id: identifica il processo di routing OSPF all’interno del router ed ha significato locale (non viene trasmesso all’esterno del router) network indirizzo La coppia individua una o più interfacce che si trovano maschera area nell’area id_area sulle quali vengono inviati e ricevuti i messaggi OSPF; OSPF id_area annuncia le reti corrisponenti. maschera è di tipo wildcard (opposta alla netmask IP), dove un bit a 0 identifica la parte di rete un bit a 1 identifica la parte host id_area è codificato su 4 byte, ed è possibile utilizzare sia la notazione decimale che quella decimale puntata. area id_area stub Dichiara l’area id_area una stub area. area id_area range Specifica un address range da annunciare all’esterno dell’area id_area, indirizzo maschera consentendo l'aggregazione di informazioni per la propagazione all’esterno dell’area id_area (se all’interno dell’area c’è almeno un’interfaccia con l’indirizzo che cade all’interno dell’address range, all’esterno è annunciato l’address range invece dei singoli indirizzi). area id_area Crea un link virtuale con il router che ha ID_router, dove questo valore è virtual-link individuabile visualizzando i database di OSPF; l’area id_area è comune ai due ID_router router. defaultAbilita il router di annunciare una route di default all'interno del suo dominio OSPF, information comportandosi da AS Boundary Router (lo stesso scopo può essere ottenuto con il originate [always] redistribute). Un AS boundary router non annuncia necessariamente la route di default, in quanto potrebbe annunciare più route esterne imparate da altri protocolli. Se il router non ha alcuna route di default, questo comando è ininfluente, a meno che si specifichi la keyword always, nel qual caso viene comunque sempre immessa una route di default in quel dominio, anche se il router non ne ha una propria. show ip ospf Mostra il database di link state advertisement ricevuti. database sh ip ospf Visualizza tutti i router OSPF adiacenti, indipendentemente dall'area a cui neighbor appartengono; il campo neighbor_ID mostra l'identificativo (router_ID) del router remoto.
BGP
Esempio di configurazione interface Ethernet 0 ip address 128.99.1.6 255.255.255.0 exit interface Ethernet 1 ip address 128.99.3.6 255.255.255.0 exit interface Bri 0 ip address 128.99.119.8 255.255.255.0 exit interface Serial 0 ip address 192.31.177.12 255.255.255.0 exit interface Serial 1 ip address 128.99.27.12 255.255.255.0 exit router OSPF 1 passive-interface Bri 0 network 128.99.1.0 0.0.15.255 area 1 network 128.99.27.12 0.0.0.255 area 1 network 192.31.177.0 0.0.0.255 area 0 network 128.99.119.0 0.0.0.255 area 2 area 1 range 128.99.0.0 0.0.31.255 end router bgp AS Attiva il processo di routing BGP nell’Autonomous System AS. La configurazione del BGP è leggermente più complessa degli altri protocolli in quanto, oltre alla configurazione delle reti, è necessario procedere alla configurazione manuale dei neighbors. network indirizzo Identifica questa rete come appartenente al dominio BGP locale e la inserisce nella mask netmask propria routing table. Il significato è diverso dai protocolli IGP in quanto il comando network non definisce le interfacce sulle quali bisogna inviare gli annunci. neighbor indirizzo Dichiara come peer (neighbor) il router indirizzo dell’Autonomous System AS. I remote-as AS neighbor possono essere Internal o External: External: normalmente il router condivide un link con questo peer Internal: è normalmente posizionato in un qualsiasi posto dell’AS. aggregate-address Se esiste almeno una route per una rete che rientra nel range di indirizzi indirizzo maschera (indirizzo, maschera) BGP annuncia questo range Esempio di configurazione interface Ethernet0 ip address 131.108.1.6 255.255.255.0 exit interface Ethernet1 ip address 192.31.7.6 255.255.255.0 exit interface Bri0 ip address 128.99.119.8 255.255.255.0 exit router bgp 109 network 131.108.1.0 network 192.31.7.0 neighbor 131.108.200.1 remote-as 167 neighbor 131.108.234.2 remote-as 109 neighbor 150.136.64.19 remote-as 99 end