Proxy ARP
Un mandataire ARP (Proxy ARP en anglais) est un serveur qui répond aux requêtes ARP (Address Resolution Protocol) émises sur un réseau IP concernant une ou plusieurs adresses IP qui ne sont pas présentes sur ce réseau. Cette technique est décrite dans la RFC 1027.
Principe
Le mandataire ARP connait le véritable emplacement de l'équipement qui possède cette adresse IP. Il répond aux requêtes ARP avec sa propre adresse MAC[1]. Les échanges IP ultérieurs lui seront donc envoyés et il se chargera de les communiquer à l'emplacement réel de l'équipement à qui ils étaient destinés. Pour cela, il utilise souvent une autre interface ou un tunnel réseau.
Par exemple, supposons qu'un hôte A cherche à joindre un hôte B qui se trouve sur un autre réseau local Ethernet adjacent au premier réseau. Supposons également que l'on place un mandataire ARP possédant deux cartes réseau à cheval entre les deux réseaux. Supposons enfin que les adresses réseau soient :
Adresses | Réseau 1 | Réseau 2 |
---|---|---|
MAC du mandataire | 00:DE:AD:BE:EF:01 | 00:DE:AD:BE:EF:02 |
IP de A | 10.100.0.1 | 10.200.0.1 (fictive) |
IP de B | 10.100.0.2 (fictive) | 10.200.0.2 |
L'hôte A envoie une requête ARP demandant l'adresse de MAC de B. Le mandataire ARP répond à la demande de A en indiquant que l'adresse IP de B 10.100.0.2 est associée à son adresse MAC 00:DE:AD:BE:EF:01. Quand A envoie un paquet IP à B, il l'envoie avec l'adresse MAC du mandataire, qui le transmet à B. B reçoit ce paquet et voit que l'adresse IP source est 10.200.0.1 et que l'adresse MAC source est 00:DE:AD:BE:EF:02 : il ajoute cette correspondance à sa table ARP. Le paquet retour passera donc lui aussi par le mandataire. Au final, on a remplacé un routeur, et ni A ni B ne se doutent qu'ils ne sont pas sur le même réseau.
Le principe du mandataire ARP est très voisin de celui de l'usurpation ARP qui est utilisée par les pirates dans le cadre d'attaques de l'homme du milieu. Il y a néanmoins des différences :
- l'adresse IP dont les échanges sont détournés n'existe pas sur ce réseau dans le cas du mandataire ARP, alors qu'elle existe dans le cas de l'usurpation ARP ;
- la technique du mandataire ARP est normalement légitime, alors que celle de l'usurpation ARP est en général un acte hostile[2].
Utilisations possibles
- Joindre par une liaison point à point deux réseaux distants de façon transparente
- Les deux réseaux distants peuvent être reliés par exemple par des modems ou par un tunnel chiffré.
- D'habitude, dans ce genre de situations, on met en place des routeurs aux deux extrémités de la liaison point à point. Toutefois, si l'on remplace ces routeurs par des mandataires ARP, cela permet d'utiliser la même plage d'adresses (par exemple, 192.168.1.0/24) pour les machines locales aussi bien que pour les machines distantes, ce qui est impossible avec le routage.
- Dans le cas particulier d'un tunnel, on construit ainsi un VPN complètement transparent (tous les utilisateurs croient être sur un même réseau local).
- Remplacer temporairement un équipement défectueux
- Le mandataire ARP va détourner les flux qui étaient normalement dirigés vers un serveur web, une imprimante ou n'importe quel autre équipement en panne vers un équipement de dépannage, sans qu'il soit nécessaire que l'équipement de remplacement soit dans le même réseau IP, ou que tous les postes clients ne soient reconfigurés.
- Dans le cas particulier ou l'on remplace un routeur en panne, le routeur de dépannage peut avoir une adresse IP différente de celle du routeur en panne, bien que les deux soient (forcément) sur le même réseau IP. Le mandataire ARP évite de reconfigurer aussi bien l'adresse IP du routeur de dépannage que celle des clients lorsque l'on veut basculer. On construit ainsi une solutions de redondance du matériel. De fait, des solutions de redondance comme HSRP, CARP et Virtual Router Redundancy Protocol utilisent toutes une technique voisine, puisque les routeurs redondants adoptent une adresse ARP fictive commune.
- Faire passer les flux réseau par un pare-feu ou un mandataire applicatif
- On peut ainsi détourner les échanges avec, par exemple, un serveur Web pour les filtrer. Dans cette situation, il n'y a pas besoin de reconfigurer les clients. Le serveur sera sur un réseau différent ou sera reconfiguré avec une adresse IP différente.
- Mobilité IP
- Dans le cadre de la mobilité IP, l'agent personnel (Home Agent) peut devenir mandataire ARP pour recevoir les paquets destinés à la machine temporairement absente du réseau local et les transmettre à l'adresse « aux bons soins de » (Care-of address) de cette machine.
Avantages et inconvénients
Un des avantages des mandataires ARP est la simplicité de la solution. On peut ainsi étendre un réseau sans devoir déclarer un routeur de sortie.
Parmi les désavantages du mandataire ARP, le principal est qu'il monte difficilement en charge, puisqu'il doit à la fois répondre aux requêtes ARP de toutes les machines concernées et transmettre tous les flux réseau.
Proxy ARP can create DoS attacks on networks if misconfigured. For example a misconfigured router with proxy ARP has the ability to receive packets destined for other hosts (as it gives its own MAC address in response to ARP requests for other hosts/routers), but may not have the ability to correctly forward these packets on to their final destination, thus blackholing the traffic.
Notes et références
- Ce n'est que dans le cas d'un réseau Ethernet que le mandataire ARP répond avec sa propre adresse MAC ; dans le cas général, il répond avec sa propre adresse de couche 2.
- Avec l'exception d'un administrateur qui intercepterait des échanges en employant l'usurpation ARP à des fins légitimes de débogage d'un problème applicatif ou réseau, dans les limites de ce que permettent la Loi et la déontologie.
Voir aussi
Bibliographie
- (en) RFC 925 – Multi-LAN Address Resolution
- (en) RFC 1027 – Using ARP to Implement Transparent Subnet Gateways
- (en) W. Richard Stevens. The Protocols (TCP/IP Illustrated, Volume 1). Addison-Wesley Professional; 1ère édition, 31 décembre 1993. ISBN 0-201-63346-9
Articles connexes