Tôi có một thiết lập thử nghiệm:
- máy chủ1: 1.1.1.1
- máy chủ2: 2.2.2.2
- khách hàng: 3.3.3.3
Tôi đang cố gắng để IP khách 3.3.3.3 thực hiện yêu cầu HTTP từ máy chủ 1.1.1.1. Tuy nhiên, tôi muốn máy chủ 1.1.1.1 chuyển yêu cầu này lên máy chủ HTTPD thực 2.2.2.2.
Tôi muốn 2.2.2.2 nói chuyện trực tiếp với khách hàng 3.3.3.3 bằng phản hồi HTTP.
Tôi nghĩ tuy nhiên tôi yêu cầu 1.1.1.1 để chấp nhận yêu cầu HTTP và sau đó yêu cầu chuyển tiếp yêu cầu đến 2.2.2.2 và có phản hồi 2.2.2.2 sau đó chuyển tiếp về 3.3.3.3 để giải quyết vấn đề này? Nếu không, máy khách 3.3.3.3 sẽ nhận được phản hồi từ 2.2.2.2 và không biết tại sao 2.2.2.2 lại phản hồi thay vì 1.1.1.1 và bỏ qua nó?
Dù bằng cách nào, đây là những gì tôi đã thử qua iptables
1.1.1.1:
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
Điều này dường như không thay đổi.