Ich habe einen Testaufbau:
- server1: 1.1.1.1
- server2: 2.2.2.2
- Client: 3.3.3.3
Ich versuche, Client-IP 3.3.3.3 eine HTTP-Anforderung vom 1.1.1.1-Server ausführen zu lassen. Ich möchte jedoch, dass der 1.1.1.1-Server diese Anforderung an den echten HTTPD-Server 2.2.2.2 weiterleitet.
Ich möchte, dass 2.2.2.2 mit der HTTP-Antwort direkt mit Client 3.3.3.3 kommuniziert.
Ich denke jedoch, dass ich 1.1.1.1 benötige, um die HTTP-Anfrage zu akzeptieren und sie dann an 2.2.2.2 weiterleiten zu lassen und 2.2.2.2 antworten zu lassen und dann zurück an 3.3.3.3 mit der Auflösung weiterzuleiten, damit dies funktioniert? Andernfalls erhält der Client 3.3.3.3 eine Antwort von 2.2.2.2 und weiß nicht, warum 2.2.2.2 anstelle von 1.1.1.1 antwortet, und ignoriert diese?
So oder so habe ich es über iptables
1.1.1.1 versucht :
iptables -t nat -A POSTROUTING -o venet0:0 -j SNAT --to-source 2.2.2.2
iptables -t nat -A PREROUTING -i venet0:0 -j DNAT --to-destination 2.2.2.2
iptables -t nat -A PREROUTING -d 3.3.3.3 -j DNAT --to-destination 2.2.2.2
iptables -t nat -A POSTROUTING -s 2.2.2.2 -j SNAT --to-source 3.3.3.3
Dies schien sich nicht zu ändern.