Je pense que cela peut être fait par le biais de simples iptables
règles et Traduction d'adresses de réseau (NAT), je ne suis pas sûr de la façon dont AWS le fait sur son backend.
Une règle simple
iptables -t nat -I PREROUTING -d 99.99.99.99 -j DNAT --to-destination 12.34.56.78
Dans cette règle, nous allons ajouter une règle au sommet de la page NAT Prerouting
Cette règle sera la première évaluée par chaque paquet - attention, de nombreuses règles ralentiront le flux de paquets - vous devriez étudier iptables si vous choisissez cette voie.
Ici, nous allons prendre un paquet destiné à 99.99.99.99
- et le DNAT
réécrira simplement l'adresse IP de destination du paquet, et le renverra sur son chemin.
Pour supprimer la règle, il suffit de modifier le paramètre -I
à -D
.
Un basculement de base de la règle ci-dessus vers un nouveau serveur
iptables -t nat -D PREROUTING -d 99.99.99.99 -j DNAT --to-destination 12.34.56.78 # Delete existing forward
iptables -t nat -I PREROUTING -d 99.99.99.99 -j DNAT --to-destination 87.65.43.21 # Add new forward
Notez que vous devrez également avoir des règles dans le fichier Filter Forward
pour chaque destination vers laquelle vous prévoyez d'envoyer des paquets.
iptables -t filter -I FORWARD -d 12.34.56.78 -j ACCEPT
iptables -t filter -I FORWARD -d 87.65.43.21 -j ACCEPT
modifier
Vous avez posé une question sur l'équilibrage de la charge, voici donc ce que nous faisons également, en équilibrant la charge des connexions entre 3 hôtes.
iptables -t nat -I PREROUTING -d 99.99.99.99 --mode nth --every 1 --packet 0 -j DNAT --to-destination x.y.z.1
iptables -t nat -I PREROUTING -d 99.99.99.99 --mode nth --every 2 --packet 0 -j DNAT --to-destination x.y.z.2
iptables -t nat -I PREROUTING -d 99.99.99.99 --mode nth --every 3 --packet 0 -j DNAT --to-destination x.y.z.3
Si vous souhaitez restreindre l'accès à HTTP / HTTPS, vous devez filtrer ces ports en conséquence :
iptables -t nat -I PREROUTING -d 99.99.99.99 -p tcp --dport 80 -j DNAT --to-destination 12.34.56.78:80
Ça peut aider, ça peut juste être encore plus déroutant, mais voici une page avec quelques règles utiles .