From: Martin Haller (dielheim_at_martin-haller.de)
Date: 12. Jan 2000
Hi Christian,
On Wed, 12 Jan 2000, you wrote:
> > > Wie hatten wir eigentlich letztes Mal Nameservice? UDP über NAT -
> > > so ganz von allein geht das ja nicht.
> >
> > Wir haben die DNS der Uni direkt benutzt, via NAT ... ohne Probleme,
> > ohne weiteres Zutun.
>
> Das muss mir jemand erklären.
> - Der Host schickt eine Resolverabfrage über UDP (host:n,
> nameserver:domain).
> - Das NAT-Gateway macht daraus (gateway:m,nameserver:domain).
> - Der Nameserver antwortet (nameserver:domain,gateway:m).
>
> Wie kommt jetzt die Assoziation (gateway:m,host:n) zustande? UDP
> ist verbindungslos. Du bist sicher, dass da nicht irgendwo ein
> kleiner DNS-Proxy gesessen hat?
>
Soweit ich weiss, geht das so:
- Client will UDP schicken von 192.168.0.2:1026 zu x.x.x.x:53
- das Masquerading-Gateway ersetzt die 192.168.0.2 durch seine eigene (y.y.y.y)
und merkt sich alle Infos (192.168.0.2:1026->x.x.x.x:53)
- dann nimmt er einen hohen Port von sich (z.B. 1078) und traegt ihn als
Absenderport ein; diesen Port speichert er zusammen mit den oben genannten
Infos. - er schickt das UDP-Paket weg.
- Nun kommt von x.x.x.x:53 ein Paket zurück und geht zu ihm auf Port 1078. Er
schaut in seiner Tabelle nach (alle Datensaetze haben da so Timeouts) und findet
folgende Infos:
Sein Port: 1078
Server: x.x.x.x:53
Client: 192.168.0.2 Port 1026
- dann veraendert er den Zielport (1078) auf 1026, die ZielIP auf 192.168.0.2
und lässt die AbsenderIP gleich.
- Nun schickt er das Paket zum Client.
Dieser Mechanismus funktioniert halt nur für ausgehende "Verbindungen", d.h.
z.B. kann ein Rechner extern keinen internen ansprechen, weil in der Tabelle
vom Gateway kein ausgehendes Paket vermerkt ist.
(Sollte da was nicht ganz korrekt sein, belehrt mich!)
Tschüss Martin
Dieses Archiv wurde generiert von hypermail 2.1.2 : 11. Mar 2002 CET