This is an old revision of the document!
Se poate întâmpla ca într-o rețea locală un utilizator să folosească adresa IP a altui utilizator pentru diverse beneficii. De exemplu, în situația în care are accesul la Internet-ul blocat, un utilizator schimbă adresa IP (eventual și adresa MAC) și folosește accesul la Internet cu privilegiile utilizatorului căruia i-a “furat” adresa IP. Soluția folosită de furnizorii de servicii Internet este autentificarea utilizatorilor, lucru realizat folosind PPPoE (Point to Point Protocol over Ethernet).
Ne propunem să punem la punct un astfel de scenariu în care o stație “fură” adresa IP a altei stații. Pentru aceasta, vom conecta stațiile host
, red
și green
în aceeași rețea de nivel 2. Vom crea un bridge în care vom adăuga toate stațiile și vom configura adrese IP din aceeași rețea.
Pentru început, creați pe stația host
un switch virtual în Linux (bridge) denumit br0
în care să adăugați interfețele veth-red
și veth-green
. Urmăriți indicațiile din laboratorul 11 (partea de jos, unde se lucrează cu bridge-uri).
br0
– interfața bridge-ului. Folosiți comanda ip link
.
Configurați pe interfața br0
(interfața de tip bridge) de pe stația host
adresa IP 192.168.0.1/24
. Pe stațiile red
și green
configurați adresa IP 192.168.0.2/24
pe interfața eth0
a acestora.
red
și green
) să fie aceeași adresă IP pe interfața eth0
: 192.168.0.2/24
.
Pe stația red
aflăm adresa MAC a interfeței eth0
și apoi trimitem pachete către stația host
(adică spre adresa 192.168.0.1/24
aferentă interfeței br0
a bridge-ului de pe host
):
root@red:~# ip link show dev eth0 22: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:16:3e:8e:84:21 brd ff:ff:ff:ff:ff:ff root@red:~# ping 192.168.0.1 PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data. 64 bytes from 192.168.0.1: icmp_req=1 ttl=64 time=0.379 ms ^C --- 192.168.0.1 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 0.379/0.379/0.379/0.000 ms
Urmărim pe stația host
tabela ARP a interfeței br0
:
root@host:~# ip neigh show dev br0 192.168.0.2 lladdr 00:16:3e:8e:84:21 REACHABLE
Observăm că intrarea aferentă adresei IP 192.168.0.2
conține adresa MAC a interfeței eth0
a stației red
.
Acum, pe stația green
aflăm adresa MAC a interfeței eth0
și apoi trimitem pachete către stația host
:
root@green:~# ip link show dev eth0 25: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:16:3e:d1:b2:95 brd ff:ff:ff:ff:ff:ff root@green:~# ping 192.168.0.1 PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data. 64 bytes from 192.168.0.1: icmp_req=1 ttl=64 time=0.416 ms ^C --- 192.168.0.1 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 0.416/0.416/0.416/0.000 ms
Urmărim, din nou, pe stația host
tabela ARP a interfeței br0
:
root@host:~# ip neigh show dev br0 192.168.0.2 lladdr 00:16:3e:d1:b2:95 REACHABLE
Observăm că intrarea aferentă adresei IP 192.168.0.2
conține acum adresa MAC a interfeței eth0
a stației green
.
Dacă executăm comanda
ping 192.168.0.1
simultan de pe stațiile red
și green
, observăm că doar o stație primește la un moment dat răspunsul: cea care are adresa MAC asociată la acel moment adresei IP 192.168.0.2
în tabela ARP a interfeței br0
. După cum am precizat la început, acest lucru este întâlnit frecvent în rețele de dimensiuni medii și mari unde utilizatorii își pun aceeași adresă IP cu a unui alt calculator din rețea în încercarea de a fura identitatea acestuia.
Pentru a ne asigura că utilizatorii nu folosesc alte adrese IP, folosim autentificare la nivelul 2; adică să condiționăm conectarea la Internet de furnizarea unei adrese IP și a unei parole. Ținând cont de prevalența rețelelor bazate pe Ethernet, este indicat să folosim un protocol de autentificare peste Ethernet. Una dintre cele mai întâlnite soluții este PPPoE (Point to Point Protocol over Ethernet).
În secțiunile următoare vom configura un server și clienți de PPPoE.
eth0
ale containerelor red
și green
. Bridge-ul br0
va fi în continuare activ cu adresa 192.168.0.1/24
și va avea conectate interfețele veth-red
și veth-green
.