Page 1 of 1
mod_proxy
Posted: 2006-04-28 14:44
by a-n
Hallo,
ich nutze mod_proxy vom Apache2.0.x.
Ich benutze mod_proxy um einen Server im LAN im WWW erreichbar zu machen. Dies ist auch kein Problem! Problem ist nur das ich nicht hinbekomme das der mod_proxy mit einer anderen IP, als der Standard IP (eth0), kommuniziert.
Wie folgt ist alles aufgebaut:
Debian Server mit 2 Ips.
IP 1 = eth0 217.168.0.10 (Öffentliche IP)
IP 2 = eth0:1 217.168.0.20 (Öffentliche IP)
http://www.test.de soll per Proxy auf mein Lan zeigen und soll die IP 2 erhalten.
Nur ist von außen wie gewünscht die Website test.de über die IP2 erreichbar. Nur komminiziert der mod_proxy mit der IP 1 ins LAN.
Weiß jemand wie ich mod_proxy beibringe das er mit IP2 ins LAN nutzen soll?
Re: mod_proxy
Posted: 2006-04-28 16:38
by duergner
Eine entsprechende Route setzen.
Re: mod_proxy
Posted: 2006-04-28 18:21
by a-n
duergner wrote:Eine entsprechende Route setzen.
Hi,
du meinst per iptables?
Re: mod_proxy
Posted: 2006-04-28 18:49
by duergner
Re: mod_proxy
Posted: 2006-04-28 18:54
by a-n
Hi,
vielen Dank für die sehr präziese Antwort!
Doch wie soll "route" erkennen das eine Anfrage von
http://www.test.de kommt?
Re: mod_proxy
Posted: 2006-04-28 19:00
by Joe User
Indem man domain.tld per DNS auf die entsprechende IP-Adresse mapped...
Re: mod_proxy
Posted: 2006-04-28 19:09
by a-n
Joe User wrote:Indem man domain.tld per DNS auf die entsprechende IP-Adresse mapped...
Hi Joe,
vielleicht habe ich gerade ein verständnis Problem.
Ich will ja nicht das alle Anfragen von der IP 2 ins LAN weiterleiten. Sondern nur die Virtualhost
http://www.test.de, und ich dachte man kann mod_proxy anweisen, die Anfragen mit der richtigen IP weiterzuleiten.
Also ist dies so nicht möglich? Also kann ich nur alle Anfragen auf IP Basis weiterleiten?
Re: mod_proxy
Posted: 2006-04-28 19:36
by duergner
Dann beschreibe bitte dein Problem sauberer. Ich habe es so verstanden, dass die Verbindungen ins LAN derzeit über IP1 (eth0) erfolgen, jedoch mittels IP2 (eth0:1) erfolgen sollten. Und genau das kann man mit route machen.
Vielleicht wäre es auch hilfreich, deine Konfiguration mal zu posten. Und zwar bitte ohne alles durch xxx zu ersetzen.
Re: mod_proxy
Posted: 2006-04-28 19:51
by a-n
Code: Select all
NameVirtualHost 217.111.111.111:443
<VirtualHost 217.111.111.111:443>
DocumentRoot /var/www/exchange
ServerName www.test.de
ServerAdmin Administrator@test.de
AddDefaultCharset UTF-8
RequestHeader unset accept-encoding
HostnameLookups Off
UseCanonicalName Off
ProxyPreserveHost On
SSLProxyEngine On
SSLProtocol All
SSLEngine On
ProxyPass /rpc https://192.168.0.xxx/rpc/
ProxyPassReverse /rpc https:// 192.168.0.xxx/rpc/
ProxyPass /exchange https://192.168.0.xxx/exchange/
ProxyPassReverse /exchange https:// 192.168.0.xxx/exchange/
ProxyPass /exchweb https://192.168.0.xxx/exchweb/
ProxyPassReverse /exchweb https://192.168.0.xxx/exchweb/
ProxyPass /public https://192.168.0.xxx/public/
ProxyPassReverse /public https://192.168.0.xxx/public/
ProxyPass /oma https://192.168.0.xxx/oma/
ProxyPassReverse /oma https://192.168.0.xxx/oma/
ProxyPass /Microsoft-Server-ActiveSync https://192.168.0.xxx/Microsoft-
Server-ActiveSync/
ProxyPassReverse /Microsoft-Server-ActiveSync
https://192.168.0.xxx/Microsoft-Server-ActiveSync/
ErrorLog logs/exchange_ssl_error_log
TransferLog logs/exchange_ssl_access_log
SSLCertificateFile /opt/lampp/etc/ssl.crt/exchange_server.crt
SSLCertificateKeyFile /opt/lampp/etc/ssl.key/exchange_server.key
</VirtualHost>
So wäre die Config mit mod_proxy. Mod_proxy benutzt leider nicht die IP 217.111.111.111 (eth0:1) wie in der Config geschrieben für die Kommunikation mit dem Server 192.168.0.xxx, sondern die Standard IP (eth0).
Nun die Frage: Wie bringe ich mod_proxy bei, weiterhin die Verbindung mit der IP 217.111.111.111 zu halten, und nicht mit der eth0 IP zu leiten, wenn nur die Domain
http://www.test.de ausgewählt wird und nicht allgemein.
Ich hoffe es ist nun klarer beschrieben :)
Re: mod_proxy
Posted: 2006-04-28 19:56
by duergner
Dann machst du das mittels route. Setz doch einfach eine feste Route für diesen Host die über eth0:1 geht. Oder versteh ich das Problem immer noch nicht? Das hat nix mit mod_proxy zu tun sondern einfach nur mit den Routing Tabellen im Kernel.
EDIT:
Poste am besten mal die Ausgabe von
und gibt endlich die sauberen IP Adressen an und nicht die xxx. Achja und was mir auch noch nicht ganz klar ist, wie du überhaupt von einem öffentlichen Interface in deinen privaten Addressraum kommen willst.
Re: mod_proxy
Posted: 2006-04-28 20:09
by a-n
duergner wrote:Dann machst du das mittels route. Setz doch einfach eine feste Route für diesen Host die über eth0:1 geht. Oder versteh ich das Problem immer noch nicht? Das hat nix mit mod_proxy zu tun sondern einfach nur mit den Routing Tabellen im Kernel.
EDIT:
Poste am besten mal die Ausgabe von
und gibt endlich die sauberen IP Adressen an und nicht die xxx. Achja und was mir auch noch nicht ganz klar ist, wie du überhaupt von einem öffentlichen Interface in deinen privaten Addressraum kommen willst.
Hi,
es ist alles ne Testumgebung wo ich momentan kein Zugriff habe. Und öffentliche IPs gibt es erstmal nicht, da alles in einem Privaten Netz hängt.
Wie man an einem Externen Interface in einem internen kommt, wird über einen router geregelt.
Wie sollte die route den eingestellt werden, mir fehlt gerade einfach das Verständis!
Re: mod_proxy
Posted: 2006-04-28 20:11
by Joe User
Probiere es mal mit einem passendem Eintrag in der /etc/hosts...
Re: mod_proxy
Posted: 2006-04-28 21:19
by duergner
Kannst du vielleicht mal dein angedachtes Setup irgendwo aufzeigen?
Re: mod_proxy
Posted: 2006-04-28 22:22
by a-n
duergner wrote:Kannst du vielleicht mal dein angedachtes Setup irgendwo aufzeigen?
Hier klicken für die kleine Skizze
@Joe User
http://www.test.de zeigt schon auf die richtige IP via DNS. Problem ist eigentlich simple, nicht allzu kompliziert denken, mod_proxy arbeitet irgendwie per default nur mit eth0 wie ping etc ...
Frage ist halt, wie ich mod_proxy bringe mit der angesprochenen IP auch die Anfragen weiterzuleiten ... (siehe skizze)[/url]
Re: mod_proxy
Posted: 2006-04-28 22:26
by duergner
Setz einfach die route korrekt und gut is. Das hat nix mit mod_proxy zu tun IMHO. Wenn du deinem Kernel sagst wie er welche Packete routen soll dann sollte er das auch so machen.
Re: mod_proxy
Posted: 2006-04-28 22:40
by a-n
Wenn ich auf dem privaten Netzwerk bin und
http://www.test.de im Browser eingebe, dann sehe ich via netstat -a das ich mit der IP 217.100.0.20 verbunden bin. Somit bedeutet das das der Apache mit der richtigen IP angesprochen wird.
Aber bevor wir hier alles zerkauen, wäre es doch nett wenn du mir sagen könntest wie die richtige route aussehen sollte? Würde es dann mal am Dienstag ausprobieren und berichten. Danke!
Re: mod_proxy
Posted: 2006-04-28 23:27
by duergner
Dazu müsstest du mal die bisher immer noch fehlende Ausgabe von
liefern.
Re: mod_proxy
Posted: 2006-04-29 12:20
by a-n
duergner wrote:Dazu müsstest du mal die bisher immer noch fehlende Ausgabe von
liefern.
Code: Select all
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
217.100.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 217.100.0.1 0.0.0.0 UG 0 0 0 eth0