[Tech] 2 macchine con stesso IP e stesso MAC
Daniele Masini
d.masini@tiscali.it
Gio 13 Set 2007 17:43:54 CEST
Miky-chan ha scritto:
> Se ho 2 macchine, *A* e *A'* nella stessa LAN, con *stesso IP e MAC
> Address*:
> - riescono a comunicare fra loro?
No.
(non stiamo parlando di multicast, vero?)
> - riescono a comunicare con una terza macchina *B*, posta anch'essa
> nella stessa sottorete?
A livello di ping probabilmente sì, ma a livello TCP probabilmente no.
> Per la prima domanda: mi hanno detto che su Linux se un host invia una
> richiesta (ad esempio SSH) sul proprio indirizzo IP questo non dovrebbe
> nemmeno uscire sulla rete (quindi chiamare l'ARP ecc ecc) quindi A e A'
> non potrebbero mai parlarsi perchè A comunicherebbe con A e A' con A'!
> Ma se fosse solo Linux a essere intelligente come si comporterebbe l'ARP
> con una richiesta del genere? Se ad esempio è stato A a voler cercare
> A', manda 2 risposte (perchè vede sia A che A' con quell'IP) che però
> sono identiche o solo 1 perchè non prende in considerazione A che ha
> generato la richiesta?
L'implementazione dello stack TCP/IP non dovrebbe far uscire la
richiesta dall'interfaccia di rete se l'interfaccia ha l'indirizzo
IP del destinatario.
> Per la seconda: se A o A' mandano pacchetti a B nessun problema... ma se
> B vuole parlare ad A? Se consideriamo Ethernet (innanzitutto è a bus
> unico o a stella con hub o può essere entrambe??) poichè è Broadcast sia
> A che A' dovrebbero ricevere i pacchetti...
Non si tratta di broadcast, ma di una comunicazione ad un
destinatario specifico. Essendo un collegamento di tipo a bus, a
meno che lo switch che le collega non facciano qualcosa di
particolare (poiché magari nella sua tabella interna dei MAC address
delle interfacce collegate alle varie porte non preveda la
possibilità di collegarne due con lo stesso IP o MAC address),
entrambe le macchine dovrebbero essere in grado di ricevere il
pacchetto inviato.
> e al massimo quello che non
> li voleva (cioè A') li scarterà generando messaggi ICMP... Ma forse non
> è così... perchè se fosse a bus, nel caso in cui sia collegato prima A'
> e poi A, A' si prenderà i pacchetti cancellandoli dal mezzo e A non li
> riceverà mai!!!
No. Vedi sopra.
> Se invece fosse a stella teoricamente l'Hub manderebbe
> il pacchetto ad A e ad A' e A' darà errore mentre con A potrò
> comunicare?
Se una delle due macchine non si attende certi pacchetti e risponde
a sua volta a B con un messaggio di errore, B smetterà di comunicare
con A' ovvero con A.
> Ma continuerò a comunicare normalmente anche se ricevo sia
> ACK positivi che segnalazioni di errore??? E l'ARP come si comporta in
> questo caso? Manda 2 pacchetti di risposta identici?
L'ARP di B riceve due risposte per la richiesta dell'IP (sia da A
che da A') e penso che ignori quella che arriva per seconda,
comunque arriva addirittura con lo stesso MAC address...
> APPENDICE: Se A, A' e B sono tutti e 3 collegati a uno Switch si
> considerano sempre appartenenti alla stessa sottorete o no, perchè lo
> switch divide i domini di collisione?
Generalmente uno switch riduce i domini di collisione, nel senso che
invia i messaggi alla porta "corretta" senza coinvolgere le altre
porte, ma l'appartenenza ad una stessa sottorete dipende dalla netmask.
Saluti,
Daniele
--
Registered GNU/Linux User # 335746
http://www.vandali.org/DanieleMasini
GPG fingerprint: 444A 193A 28C2 2A99 1966 B2A5 4216 2453 4272 1648
Maggiori informazioni sulla lista
flug-tech