ILB utilise la topologie NAT en mode autonome exclusivement à des fins d'équilibrage de la charge. Dans ce mode, l'équilibreur de charge intégré réécrit les informations d'en-tête, et gère aussi bien le trafic entant que le trafic sortant. ILB fonctionne en mode Half-NAT ou Full-NAT. Toutefois, la topologie Full-NAT réécrit également l'adresse IP source de sorte que le serveur considère que toutes les connexions proviennent de l'équilibreur de charge. Le mode NAT offre une fonction de suivi des connexions TCP (avec conservation de statut). Le mode NAT renforce la sécurité et s'adapte mieux au trafic HTTP (Hypertext Transfer Protocol) et SSL (Secure Sockets Layer).
Cette topologie fonctionne avec tous les serveurs backend en modifiant la passerelle par défaut pour pointer vers l'équilibreur de charge
L'ajout ou la suppression de serveurs peut avoir lieu sans interruption des connexions du fait que l'équilibreur de charge maintient l'état de connexion
Ce mode est moins rapide que la topologie DSR car le traitement implique la manipulation de l'en-tête IP et les serveurs envoient des réponses à l'équilibreur de charge
Tous les serveurs backend doivent utiliser l'équilibreur de charge en tant que passerelle par défaut
L'implémentation générale de la topologie NAT s'affiche comme illustré dans la figure suivante.
Figure 5-2 Topologie NAT (Network Address Translation)
Dans ce cas, toutes les demandes envoyées à l'adresse IP virtuelle passent par l'équilibreur de charge intégré puis sont transférées aux serveurs backend. En mode NAT, toutes les réponses provenant des serveurs backend passent par ILB.
![]() | Mise en garde - Le chemin d'accès au code NAT implémenté dans l'équilibreur de charge intégré ne correspond pas à celui de la fonction de filtre IP d'Oracle Solaris. N'utilisez pas les deux chemins d'accès au code simultanément. |
En mode Half-NAT, ILB réécrit uniquement l'adresse IP de destination dans l'en-tête des paquets. Si vous mettez en oeuvre l'implémentation Half-NAT, vous ne pouvez pas vous connecter à l'adresse IP virtuelle (VIP) du service à partir du sous-réseau sur lequel réside le serveur. Le tableau suivant répertorie les adresses IP des paquets circulant entre un client et ILB, puis entre ILB et un serveur backend.
|
Si vous connectez le système client sur le même réseau que celui des serveurs, le serveur souhaité répond directement au client et la quatrième étape du processus dans la table n'ont pas lieu. Aussi, l'adresse IP source de la réponse que le serveur envoie au client n'est pas valide. Lorsque le client envoie une demande de connexion à l'équilibreur de charge, la réponse parvient au serveur concerné. A ce stade, la pile IP du client abandonne correctement toutes les réponses. Dans ce cas, les flux de demande et de réponse se présentent comme illustré dans le tableau suivant.
|
En mode Full-NAT, les adresses IP source et de destination sont réécrites pour garantir que le trafic passe par l'équilibreur de charge dans les deux directions. La topologie Full-NAT permet de se connecter à l'adresse VIP à partir du sous-réseau sur lequel sont situés les serveurs.
Le tableau suivant répertorie les adresses IP des paquets circulant entre un client et ILB, puis entre ILB et un serveur backend dans la topologie Full-NAT. Aucun routage par défaut par le biais de l'équilibreur de charge intégré n'est requis dans ces serveurs. Mais notez que l'administrateur doit impérativement réserver une adresse IP ou une plage d'adresses qui feront office d'adresses source de l'équilibreur de charge intégré dans le cadre des communications avec les serveurs backend dans une topologie Full-NAT. Partons du principe que les adresses utilisées appartiennent au sous-réseau C. Dans ce scénario, ILB se comporte comme un proxy.
|