Avatar billede killstun Nybegynder
26. maj 2006 - 12:35 Der er 15 kommentarer

NAT web-adresse

Kan nedenstående eksempel lade sig gøre:

Jeg har en firewall til et LAN netværk. Lad os sige at WAN (eth0) ip'en hedder 150.150.150.150. På LAN siden (eth1/192.168.0.1) findes 2 webservere, med adresserne 192.168.0.2 og 192.168.0.3. Jeg har så købt web adresserne www.lan1.dk og www.lan2.dk som henviser til IP'en 150.150.150.150.

Nu vil jeg gerne have en NAT regel, som siger:

1. Kommer der http trafik på adressen www.lan1.dk, skal den videre dirigere til 192.168.0.2

2. Kommer der http trafik på adressen www.lan2.dk, skal den videre dirigere til 192.168.0.3

- Kan dette lade sig gøre, og i så fald, hvorledes ser NAT reglen ud?
Avatar billede leif Seniormester
26. maj 2006 - 12:40 #1
Hvilken firewall/router software kører du med ?
Avatar billede killstun Nybegynder
26. maj 2006 - 12:43 #2
iptables
Avatar billede venturer Nybegynder
26. maj 2006 - 14:26 #3
Umiddelbart kan det ikke lade sig gøre rent NAT mæssigt. NAT kigger jo alene på IP headeren (IP adresse og port).
Det kan måske gøres ved at bruge string match funktionen i iptables (mener det er dét den hedder). Men dét er ikke noget jeg selv har prøvet at rode med.
Avatar billede killstun Nybegynder
26. maj 2006 - 23:44 #4
Ok, vil prøve at lure på detså. Vender lige tilbage uanset om jeg finder løsning eller ej.
Avatar billede langbein Nybegynder
27. maj 2006 - 14:36 #5
I prinsipp så skulle man jo kunne bruke string match funksjonen i iptables, men har aldri hørt om noen som har gjennomført dette. (Mon ikke ytelse/troughput ville bli alt for liten ??)

Tror "fasitsvaret" er at man kan bruke Squid som "frontcache", men dette har jeg aldri testet selv. Mener å huske at det har vært lagt litt utførlige svar på eksperten om dette før (så litt søking ..)

Det ville være interessant med en tilbakemelding om hvordan dette event fungerte. (Med nat eller på annen måte.)
Avatar billede langbein Nybegynder
27. maj 2006 - 14:51 #6
Synes dette ser forholdvis komplisert ut, mon det kan gjøres enklere ?
http://ezine.daemonnews.org/200202/multiweb.html
Avatar billede langbein Nybegynder
27. maj 2006 - 14:58 #7
Den helt enkele måten å gjøre dette på det er jo å la de to webserverne kjøre hver sin port, for eksempel 80 og 81 og så adressere server 2 slik: http://domene.dk:81
Går ut fra at dette har vært vurdert og at det ikke vil fungere godt nok. Nevner det allikevell. Begge kan jo for så vidt kjøre port 80, mens den ene kan gjøres eksternt tilgjengelig via port 81 (Og redirecting vha iptables til port 80 server 2.)
Avatar billede killstun Nybegynder
28. maj 2006 - 13:09 #8
Hmmm, ja. Det siger noget (sidste svar). Jeg lover at vende tilbage når løsningen/eller ej er fundet. Tror jeg vil kører videre med dit sidste forslag.
Avatar billede langbein Nybegynder
28. maj 2006 - 23:14 #9
Jo, den er meget enkel og jeg bruker den stadig vekk. Ingen problemer hvis bare løsningen er god nok.
Avatar billede keld_simonsen Nybegynder
03. juni 2006 - 18:34 #10
Det du skal gøre er at køre virtuele hosts, dvs

www.lan1.dk og www.lan2.dk skal pege til sammme adresse 150.150.150.150

og så skal du i din apache opsætning lave to virtual hosts, fx i filen /etc/httpd/conf/vhosts.d/vhosts.conf :


<VirtualHost *>
  ServerAdmin webmaster@lan1.dk
  DocumentRoot /var/www/html/www.lan1.dk
  ServerName www.lan1.dk
  ServerAlias lan1.dk
  ErrorLog /var/log/httpd/lan1.dk/error_log
  CustomLog /var/log/httpd/lan1.dk/access_log combined
</VirtualHost>

<VirtualHost *>
  ServerAdmin webmaster@lan2.dk
  DocumentRoot /var/www/html/www.lan2.dk
  ServerName www.lan2.dk
  ServerAlias lan2.dk
  ErrorLog /var/log/httpd/lan2.dk/error_log
  CustomLog /var/log/httpd/lan2.dk/access_log combined
</VirtualHost>
Avatar billede leif Seniormester
03. juni 2006 - 19:10 #11
keld_simonsen -> Hvordan vil du det når det er på 2 forskellige servere på LAN ? Men at hun kun har 1 WAN IP. Hun kan jo ikke forwarde port 80 2 gange på 1 WAN IP.
Avatar billede keld_simonsen Nybegynder
04. juni 2006 - 10:14 #12
Prøv en redirect i http på den maskine som din router natter til,
i /etc/httpd/conf/httpd.conf på 192.168.1.2:

redirect /var/www/html/lan2.dk http://192.168.1.3/

Har ikke prøvet det selv... Er lidt usikker på den første sti om den er absolut for filsystemet eller relativ til document root. Men du kan nok fiddle med det, evt lav et katalog /var/www/html/lan1.dk/lan2.dk og redirect dette.

Andre idéer: mount via NFS kataloget for lan2.dk på lan1.dk maskinen
Avatar billede langbein Nybegynder
06. juni 2006 - 16:51 #13
Nei Virtual hosts er noe helt annet og det har lite å gjøre med den aktuelle problemstilling å gjøre. Alle Apache servere med mer enn ett domene kjører virtual hosts.
Avatar billede keld_simonsen Nybegynder
06. juni 2006 - 17:31 #14
Problemet er at leif har to maskiner kørende bag sin nattede ruter, og at ruteren kun kan forwarde en port til en enkelt maskine. Dette er typisk 192.168.1.2 . Tricket er så at få denne maskine til at behandle de data der ligger på den anden maskine. Det kunne laves ved enten at lave redirect (men som jeg ikke véd om virker) eller at køre det fra maskine 1 også. Med en NFS mount bringer man data fra maskine 2 til at være til stede på maskine 1.
Avatar billede langbein Nybegynder
07. juni 2006 - 14:01 #15
Jo det kunne vel kanskje (moske) ha fungert men det er vel stadig vekk ikke et svar på det opprinnelige spørsmål ? Den helt enkle løsning som kan settes opp på 1 minutt det er vel å la de to serverne kjøre med hver sin eksterne port. Har selv testet det mange ganger. Tror at den mer profesjoenlle løsning vil være å bruke en Squid front cache (men det har jeg aldri testet.)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester