[iptables] Poort doorsturen naar andere machine

Pagina: 1
Acties:
  • 145 views sinds 30-01-2008
  • Reageer

  • _JGC_
  • Registratie: Juli 2000
  • Laatst online: 23:58
Lijkt misschien heel erg eenvoudig, maar DNAT werkt niet echt zonder routering. Situatie is als volgt:

Server 1: 10.0.0.1, deze draait sinds vandaag Cyrus IMAP, alle nieuwe mail wordt hierin gedrukt

Server 2: 10.0.0.253, deze is tijdelijk, en draait nog Courier IMAP. Alle mail hiervan is geconverteerd.

Alle clients staan ingesteld om met "server" te communiceren voor mail. Je raadt het al: dat gaat fout :P

Wat ik wil gaan doen is alle inkomende connecties op server2 te redirecten naar server1 als het op poort 143 binnenkomt. Evt een ICMP-redirect message mag ook, dan weet de client ook waar ie moet zijn.

Zal je denken: wrom ben je niet slim en zet je de hostname om in DNS: kan niet, want er draait onder meer ook nog Samba op die disk. Wegens tijdgebrek kan ik de 20GB aan data die nu op de tijdelijke server staat vandaag niet overzetten op de andere machine. Als ik DNS ga veranderen, denk ik dat er snel machines zullen zijn die niets meer met samba kunnen.

Ik heb al diverse voorbeelden gezien, deze gaan echter allemaal met NAT en de PREROUTING chain, maar dat is lastig als je clients in hetzelfde subnet zitten als je servers.

Verwijderd

Kun je eventueel een IMAP proxy opzetten op die tijdelijke IMAP server waar courier draait? Bijvoorbeeld met delegate: http://www.delegate.org/delegate/

Oh, en die clients die connecten, zitten die in hetzelfde subnet of niet? En waar wijst je default gateway heen?

[ Voor 37% gewijzigd door Verwijderd op 21-06-2004 21:13 ]


  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Desnoods een tunnel tussen die twee machines met andere subnets zodat er alsnog wat te routen valt. Vieze oplossing, maar goed ;)

All my posts are provided as-is. They come with NO WARRANTY at all.


Verwijderd

Zoek eens naar het programmatje 'portfwd' heel eenvoudig.

Basic configuratie is als volgt:

code:
1
2
3
4
5
/* forwarden van imap */
bind-address 10.10.3.1
tcp {
        143 { => 10.10.3.2:143 }
}


Evt. wil ik je het progje wel mailen. Het doet overigens niets met routing, maar is een tcp proxy.

  • _JGC_
  • Registratie: Juli 2000
  • Laatst online: 23:58
Woei, die portfwd zocht ik. Kan ik voortaan ook mysql mee naar de juiste server slepen als ik weer es aan't loadbalancen ben met 3 SMP bakken omdat 1 het niet trekt met JSP pagina's :P

Heb dit nml al eens eerder geprobeerd, en toen maar opgegeven in dat geval.

Verwijderd

Ik hoop dat het werkt, want generieke TCP proxies kunnen over het algemeen niet zo goed overweg met het IMAP protocol. Het gevolg is vaak timeouts in de verbinding.

Maar als je de vraag in mijn vorige post beantwoordt heb ik misschien nog wel een alternatieve oplossing voor je.

Verwijderd

Ik werk er al jaren mee voor telnet-like verkeer. Nog nooit problemen mee gehad.

[ Voor 4% gewijzigd door Verwijderd op 21-06-2004 21:39 ]


  • _JGC_
  • Registratie: Juli 2000
  • Laatst online: 23:58
balou:
dit portfwd progsel werkt perfect, heb er 10 IMAP connecties aangehangen, ding liep gewoon goed, je merkt er nix van. Meer dan 10 connecties gaat ie ook niet krijgen denk ik, met het vooruitzicht dat er volgende week een SCSI disk inkomt en samba ook overgezet wordt :)

Wat betreft subnetten en gateways:
10.0.0.1 is zowel de nieuwe cyrus server als de gateway. Alle clients, en ook de tijdelijke server gebruiken dit ding om buiten hun subnet te komen.

Verwijderd

Ok, het gaat er dus om dat je default gateway de "verkeerde kant" op wijst. Als je alleen DNAT toepast gaan je replies rechtstreeks naar de clients ipv. van via 10.0.0.2, vanwege de default gateway. Wat je ook zou kunnen doen is zowel DNAT als SNAT toepassen. Voor 10.0.0.1 lijkt al het verkeer dan van 10.0.0.2 af te komen en gaat de routering wel goed.

Ik heb dit trucje al eens toegepast met een IPsec VPN server waar de default gateway ook niet naar de VPN server wees.

Maar goed, dit is meer wat extra info, mooi dat je IMAP proxy wel werkt ;)
Pagina: 1