Gå til innhold
Trenger du hjelp med internett og nettverk? Still spørsmål her ×

Dynamisk/statisk NAT'ing utifra port og hostname


Anbefalte innlegg

Har laget et slags forslag til hvordan du kan løse saker og ting med SSH. Det er relativt tungvint. Jeg bruker et program som heter entunnel fra vandyke som jeg synes er meget bra. Fordelen med dette programmet er at brutte forbindelser automatisk blir forsøkt gjenopprettet og at det er enkelt å binde port-forwardinger til gitte interfacer (dvs ikke bare 127.0.0.1 eller 0.0.0.0, men til en vilkårlig ip på din maskin.

 

Har laget en liten skisse som ligger her

 

Så tanken er: Dere er 3 venner som har hvert deres subnet lokalt. I eksempelet har jeg valgt 192.168.1.0, 192.168.2.0, 192.168.3.0 med mask 255.255.255.0.

 

Det er totalt 7 PCer (se fig), der PC1, PC4 og PC6 fungerer som "SSH-gateways" i mangel av et bedre ord... (dvs kjører ssh klient softwaren, f.eks Entunnel)

 

La os si at Venn1 ønsker SMTP forwarding til både Venn2 og Venn3. Da ville det jo være greit om begge disse gikk på port 25. La oss videre si at Venn2 kjører SMTP serveren sin på PC5.domain.net og at Venn3 kjører sin SMTP server på PC6. Venn1 kan da sette opp to port-forwardinger. 1) på ssh-connection til Venn2: fra port 25 bundet til ip 192.168.1.105 til port 25 på PC5.domain.net 2) på ssh-connection til Venn3: fra port 25 bundet til ip 192.168.1.106 til port 25 på PC6.domain.net

 

Det som vil skje nå er at dersom Venn1 forsøker å nå port 25 på PC5.domain.net fra f.eks PC2.domain.net er at PC2 vil gjøre DNS oppslag på PC5.domain.net. Den vil da få til svar at det er 192.168.1.105 og forsøker da å opprette connection til den ip'en. Siden det er definert en portforwarding på denne vil den bli forwardet til Venn2 sin PC5.domain.net som jo er 192.168.2.3. Legg merke til at dette DNS oppslaget blir gjort av Venn2 sin "SSH-gateway" og dermed resolver til riktig IP. (192.168.2.3)

 

Trixet er altså å sette opp flere ip-adresser på klient-maskinen ("SSH-gatewayen") og lage ssh-tunneller som bindes til de ulike ip-adressene.

 

domain.net trenger jo ikke å være noe reelt domene. Venn1, Venn2 og Venn3 kan jo i tillegg ha sine egene domener. Men å ha et felles navnsett forenkler iallefall ting ørlitegrann.

 

Ingen god forklaring kanskje, men det var et forsøk... :)

Lenke til kommentar
Videoannonse
Annonse

Ingenting er umulig. Ingen som har slått spikeren på hodet og sagt at dette er et problem relatert til the OSI model

 

Hostnavn har ikke noe med ipadresser å gjøre, det er en lue som vi trer nedover ørene på dem, ovenfra og ned. En ipadresse kan umulig vite hvilke hostnavn den har. Den vet hvor den muligens kan slå opp ett, men kan umulig vite hva hvermansen har av lugubre navnedefinisjoner som har ført til at han kom til akkurat din ip.

 

Det du ønsker å gjøre, er å bruke informasjon iform av hostnavn (høyt oppe i OSI) for å ta avgjørelser på IPnivå (lavt nede i OSI). En enkel ruter vet ikke om stort annet enn ipadresser, mac adresser og tcp/udp protokoller.

 

En slik løsning som du skisserer må derfor per def. implementere de protokollene du ønsker å bruke, og er avhengig av at klienten sender med et hostname (som f.eks Host: foobar.com i HTTP) i de kallene den gjør.

 

det er en iptables modul på sourceforge som kan filtrere på application nivå. denne kan muligens brukes til det du ønsker for et par utvalgte protokoller.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...