| 45 | |
| 46 | |
| 47 | --------------------------------------------------------------------------------------------------------------------- |
| 48 | |
| 49 | 27/07/07 |
| 50 | |
| 51 | |
| 52 | Trovata piccola e forse irrilevante informazione riguardo alle tempistiche di autenticazione con RADIUS: esiste un tempo di timeout per i router che stanno aspettando una risposta dal server RADIUS. Questo campo varia da 1 a 15 (si parla di secondi) e come default sembra che molti usino metterlo a 3. |
| 53 | |
| 54 | |
| 55 | Gratuitous ARP |
| 56 | |
| 57 | Un Gratuitoud ARP (GARP) è una particolare forma di AddressResolutionProtocol, ovvero un pacchetto di ARP response senza che ci sia stata nessuna richiesta. Non è normalmente richiesto dalle specifiche ARP (RFC 826) ma può essere usato in alcuni casi. |
| 58 | Nel GARP, i campi IP sorgente e destinatario contengono l'IP della Macchina/Stazione/Client che lo sta effettuando, e come MAC di destinazione, il codice di broadcast (ff:ff:ff:ff:ff:ff). Essendo il GARP una sorta di "risposta", non richiede conferme ulteriori dopo essere stato inviato. |
| 59 | |
| 60 | L'utilità del GARP può essere riassunta in 4 maggiori mansioni: |
| 61 | |
| 62 | - Aiuta a rilevare conflitti di IP: quando un client riceve un GARP contenente il suo stesso IP ne deduce che c'è stato un conflitto; |
| 63 | |
| 64 | - Aiutano a completare e aggiornare più velocemente le tabelle ARP degli altri client. Soluzioni di clustering utilizzano questo metodo quando devono muovere un IP da un NIC (Network Interface Card) ad un'altro. Che sia esso situato sulla stessa macchina o su un'altra, dopo essere stato propriamente riconfigurato, il NIC manda un GARP per aggiornare l'intero cluster del cambiamento di MAC da parte dell'IP in questione; |
| 65 | |
| 66 | - Informano gli Switch dell'indirizzo MAC di una determinata macchina su una determinata porta, semplificando cosi il sistema di aggiornamento della tabella di routing; |
| 67 | |
| 68 | - Ogni volta che un'interfaccia IP, un qualche collegamento viene attivato, il driver dell'interfaccia tipicamente manda un GARP per pre-caricare le tabelle ARP degli altri client connessi. In oltre, il GARP informa se quel client si è appena attaccato alla rete (esempio se ha appena attaccato il doppino LAN), se la macchina ha subito un riavvio o se l'amministratore di sistema sta configurando l'interfaccia. Se vengono rilevati diversi GARP provenienti dallo stesso client, si può ipotizzare che quest'ultimo sia soggetto a pesanti disturbi di livello hardware (assenza di segnale wireless o malfunzionamento del cavo di rete). |
| 69 | |
| 70 | |
| 71 | Esempi: |
| 72 | |
| 73 | |
| 74 | Lo stack di rete in molti sistemi operativi esegue un GARP se l'IP o l'indirizzo MAC di una interfaccia di rete cambia, per informare le altre macchine nella rete del cambiamento cosi che possano rilevare possibili conflitti di indirizzi IP, per consentire l'aggiornamento delle varie tabelle ARP e per informare gli Switch del MAC address della macchina. Molti sistemi operativi inoltre, eseguono un GARP su un'interfaccia ogni volta che la connessione ad essa viene attivata.Il GARP quindi viene poi usato per pre-caricare la tabella ARP su tutti i client locali e segnalare il nuovo possibile abbinamento tra MAC e IP, o solo per segnalare di nuovo allo switch l'attuale porta su cui è connesso. Il progetto "High-Availability Linux" utilizza un'applicazione a linea di comando chiamata send_arp che esegue il GARP necessario per il processo di "failover". |
| 75 | |
| 76 | |
| 77 | Un tipico scenario di rete può essere il seguente: |
| 78 | |
| 79 | Due nodi di una rete sono configurati per condividere l'IP comune 192.168.1.1. Il nodo A ha come indirizzo hardware (MAC) 01:01:01:01:01:01 e il nodo B ha come indirizzo 02:02:02:02:02:02. |
| 80 | |
| 81 | Assumiamo che il NIC del nodo A sia già configurato con l'IP 192.168.1.1. A questo punto, i dispositivi vicini sanno che il contatto 192.168.1.1 usa il MAC 01:01:01:01:01:01. |
| 82 | |
| 83 | Utilizzando il protocollo a battito (heartbeat protocol) il nodo B determina che il nodo A è morto. |
| 84 | |
| 85 | Il nodo B configura un IP secondario su un'interfaccia con ifconfig eth0:1 192.168.1.1. |
| 86 | |
| 87 | Il nodo B esegue un GARP con send_arp eth0 192.168.1.1 02:02:02:02:02:02 192.168.1.255. Tutti i dispositivi ricevono questo ARP e aggiornano la propria tabella con il MAC 02:02:02:02:02:02 abbinato all'IP 192.168.1.1. |
| 88 | |
| 89 | |
| 90 | Esempio di pacchetto: |
| 91 | |
| 92 | |
| 93 | Ethernet II, Src: 02:02:02:02:02:02, Dst: ff:ff:ff:ff:ff:ff |
| 94 | Destination: ff:ff:ff:ff:ff:ff (Broadcast)[[BR]] |
| 95 | Source: 02:02:02:02:02:02 (02:02:02:02:02:02)[[BR]] |
| 96 | Type: ARP (0x0806)[[BR]] |
| 97 | Trailer: 000000000000000000000000000000000000[[BR]][[BR]] |
| 98 | |
| 99 | Address Resolution Protocol (request/gratuitous ARP) |
| 100 | Hardware type: Ethernet (0x0001)[[BR]] |
| 101 | Protocol type: IP (0x0800)[[BR]] |
| 102 | Hardware size: 6[[BR]] |
| 103 | Protocol size: 4[[BR]] |
| 104 | Opcode: request (0x0001)[[BR]] |
| 105 | Sender MAC address: 02:02:02:02:02:02 (02:02:02:02:02:02) [[BR]] |
| 106 | Sender IP address: 192.168.1.1 (192.168.1.1)[[BR]] |
| 107 | Target MAC address: ff:ff:ff:ff:ff:ff (Broadcast)[[BR]] |
| 108 | Target IP address: 192.168.1.1 (192.168.1.1)[[BR]] |
| 109 | |
| 110 | 0000 ff ff ff ff ff ff 02 02 02 02 02 02 08 06 00 01 ................[[BR]] |
| 111 | 0010 08 00 06 04 00 01 02 02 02 02 02 02 c0 a8 01 01 ................[[BR]] |
| 112 | 0020 ff ff ff ff ff ff c0 a8 01 01 00 00 00 00 00 00 ................[[BR]] |
| 113 | 0030 00 00 00 00 00 00 00 00 00 00 00 00 ............[[BR]] |