Ich habe mal versucht mein Setup zu visualisieren:
Code: Alles auswählen
.--------------------------------.
| .--------------------. |
| | eth0 192.168.1.202 | |
| '--------------------' |
| |
| master |
| |
| |
| .----------------------. |
| | virbr0 192.168.100.1 | |
| '----------------------' |
| | |
| v |
| .----------------------. |
| | virnet0 | |
| | | |
| | | |
| .-| |-. |
| | | eth0 192.168.100.170 | | |
| | '----------------------' | |
| | | |
| | slave | |
| | | |
| | | |
| '--------------------------' |
| |
| |
'--------------------------------'
Auf dem Gast läuft ein Apache auf Port 80, der jetzt für alle Anfragen für den Host verantwortlich sein soll.
Mit
Code: Alles auswählen
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.100.170
Mit
Code: Alles auswählen
iptables -t nat -A OUTPUT -p tcp -m tcp -s 192.168.1.202 -d 192.168.1.202 --dport 80 -j DNAT --to-destination 192.168.100.170:80
Was ich nicht hinbekomme, ist, dass der slave sich selber unter der IP des masters erreicht, das würde mir am besten in meine Konfiguration passen. Nach meinem Verständniss müsste die erste Regel das aber auch abdecken, ich verstehe das als "egal wo es herkommt, wenn es auf Port 80 ist, gib es weiter an slave".
Übersehe ich etwas? Kann das überhaupt funktionieren?
Danle und Gruß