Ubuntu-Version: Ubuntu
DNS Namensauflösung meiner DynDNS adresse
Status:
Ubuntu-Version: Ubuntu
Ubuntu-Version: Ubuntu
Daimonion![]() Anmeldungsdatum: 21.11.2005 Beiträge: 185 Wohnort: Fuwa |
Hallo. Ich hab ein relativ verzwicktes Thema hier. Als ich mein WG-Netz aufgebaut hab hab ich mittels Howtos und ähnlichem auch einen DHCP und einen Bind9 als DNS-Server auf meinem Router der unter SuSE Linux 8.x läuft aufgesetzt. Eigentlich ist ein Update auf ein aktuelles Linux längst überfällig, jedoch tu ich mich da noch ein wenig schwierig. Momentan hab ich eigentlich das Problem das ich von intern nicht über meine DynDNS, die auf die externe IP des Router gelinkt ist, zugreifen kann. Szenario: Intern läuft ein CVS-Server der über Port 2401 erreichbar ist. Dafür hab ich im Router den Port auf die IP des Server geforwardet. Wenn ich nun von extern auf diesen Server zugreifen will kann ich das ganz normal mittels DynDNS name machen. Will ich aber von intern drauf zugreifen, so kann ich nicht den DynDNS namen nehmen, sondern muß die interne IP angeben. Mein DHCP ist so konfiguriert das er als DNS den Router angibt. Soweit funktioniert der ja einwandfrei, jedoch wenn ich von einem Clienten von intern ein nslookup auf meine dyndns adresse mache liefert lookup mir folgendes Ergebnis: Code:> xxx.dyndns.org Server: ns.wgaral.home Address: 192.168.1.1 Nicht autorisierte Antwort: Name: xxx.dyndns.org Address: 217.80.83.7 Wie man sieht liefert der DNS mir als erstes seine eigene IP, die für mich aber nutzlos ist, da ich ja auf diese IP keinerlei Portforwardings oder ähnliches habe. Ich bräuchte genau die zweite Antwort, um rauszugehen und anschließend wieder von extern reinzukommen, und das Protforwarding auf den CVS zu nutzen. Meiner Meinung nach ist die config des DNS nicht richtig, aber ich hab von dem noch nicht wirklich viel Ahnung und richte mich somit an euch in der Hoffnung ihr könnt mir sagen was ich ändern müßt, damit ich die externe IP bekomme. Bin zwar kein Freund von langen Config files die man hier anhängt, aber ich denke in dem Falle ist es von Nöten das ihr diese seht. Code:[i]named.conf[/] options { # The directory statement defines the name server's working directory directory "/var/lib/named"; # Write dump and statistics file to the log subdirectory. The # pathenames are relative to the chroot jail. dump-file "/var/log/named_dump.db"; statistics-file "/var/log/named.stats"; # The forwarders record contains a list of servers to which queries # should be forwarded. Enable this line and modify the IP address to # your provider's name server. Up to three servers may be listed. forwarders { 194.25.2.129; 141.28.224.1; 195.85.254.254; }; # Enable the next entry to prefer usage of the name server declared in # the forwarders section. forward first; # The listen-on record contains a list of local network interfaces to # listen on. Optionally the port can be specified. Default is to # listen on all interfaces found on your system. The default port is # 53. #listen-on port 53 { 127.0.0.1; }; # The listen-on-v6 record enables or disables listening on IPv6 # interfaces. Allowed values are 'any' and 'none' or a list of # addresses. #listen-on-v6 { any; }; # The next three statements may be needed if a firewall stands between # the local server and the internet. #query-source address * port 53; #transfer-source * port 53; #notify-source * port 53; # The allow-query record contains a list of networks or IP addresses # to accept and deny queries from. The default is to allow queries # from all hosts. #allow-query { 127.0.0.1; }; # If notify is set to yes (default), notify messages are sent to other # name servers when the the zone data is changed. Instead of setting # a global 'notify' statement in the 'options' section, a separate # 'notify' can be added to each zone definition. notify no; }; # The following zone definitions don't need any modification. The first one # is the definition of the root name servers. The second one defines # localhost while the third defines the reverse lookup for localhost. zone "." in { type hint; file "root.hint"; }; zone "localhost" in { type master; file "localhost.zone"; }; zone "0.0.127.in-addr.arpa" in { type master; file "127.0.0.zone"; }; zone "wgaral.home" { notify no; type master; file "wgaral.home"; }; zone "1.168.192.in-addr.arpa" { notify no; type master; file "192.168.1.zone"; }; Code:[i]wgaral.home[/i] @ IN SOA ns.wgaral.home. hostamster.wgaral.home. ( 200509011 ; Serial 8H ; Refresh 2H ; Retry 1W ; Expire 1D) ; Minimum TTL NS ns.wgaral.home. ns A 192.168.1.1 router CNAME ns monster A 192.168.1.10 monster_static A 192.168.1.11 stefan A 192.168.1.12 Myogenic A 192.168.1.13 wgaralserver A 192.168.1.100 maximus A 192.168.1.20 sarah A 192.168.1.23 morphium A 192.168.1.33 berlin A 192.168.1.30 Tina A 192.168.1.31 dudu A 192.168.1.32 voip_eg A 192.168.1.252 AP A 192.168.1.253 |
ChrissssModerator![]() Anmeldungsdatum: 31.08.2005 Beiträge: 13244 Wohnort: Karlsruhe |
Biege doch einfach innerhalb des eigenen
Netzes mithilf der /etc/hosts die Domain auf ihre interene IP. Also
angekommen dein CVS Server hat die interne IP 192.168.0.10, dann trage
einfach in die /etc/hosts deines Client die Zeile Code:192.168.0.10 wasauchimmer.dyndns.org ein. Ist zwar Quick&Dirty, funktioniert aber Tschuess Christoph Zuletzt bearbeitet von Chrissss am 11.06.2006, 01:08, insgesamt einmal bearbeitet |
Daimonion![]() Anmeldungsdatum: 21.11.2005 Beiträge: 185 Wohnort: Fuwa |
Ja, finde auch dass das sehr Dirty ist. Problem ist da aber auch das der Client ein Laptop ist, und somit auch von extern zugreift |
otzenpunkModerator![]() Anmeldungsdatum: 17.10.2005 Beiträge: 4187 Wohnort: Hamburg-Altona |
Hatte dasselbe Problem. Ich hab's noch
dreckiger gelöst, indem mein eigener DNS-Server den externen Domain-Namen
auf die interne IP auflöst. Wenn ich wieder zu Hause bin, poste ich die
Konfig. |
otzenpunkModerator![]() Anmeldungsdatum: 17.10.2005 Beiträge: 4187 Wohnort: Hamburg-Altona |
example.dyndns.org.db: Code:$TTL 24h @ IN SOA server.lan. email.server.lan. ( 2005062800 ; Seriennummer 5h ; Refresh 1200 ; Retry 4w ; Expire 3600 ; Minimum ) example.dyndns.org. IN NS server.lan. example.dyndns.org. IN NS gateway.lan. example.dyndns.org. IN A 192.168.5.5 named.conf: Code:zone "example.dyndns.org" { type master; file "example.dyndns.org.db"; }; |
Daimonion![]() Anmeldungsdatum: 21.11.2005 Beiträge: 185 Wohnort: Fuwa |
Also ich weiß jetzt nicht ganz genau was du da
gemacht hast. So bin ich in der DNS Materie auch nicht drin Aber ich habs versucht anzupassen an meine Config, jedoch ohne erfolg. Immer noch kommt als erste Antwort die interne IP. |
otzenpunkModerator![]() Anmeldungsdatum: 17.10.2005 Beiträge: 4187 Wohnort: Hamburg-Altona |
Daimonion hat Folgendes geschrieben:
Das ist nur die Adresse des Nameservers, der gefragt wird, und der auf deinem Router läuft. Zitat:Also ich weiß jetzt nicht ganz genau was du da gemacht hast. Der DNS-Server fragt jetzt nicht mehr extern nach der Adresse von example.dyndns.org, sondern liefert gleich eine Antwort, nämlich die interne Adresse. (Weil er denkt, er wäre dafür zuständig.) D.h. example.dyndns.org wird intern und extern immer "richtig" aufgelöst. Dadurch kann ich von überall mit dem Notebook drauf zugreifen. host, nslookup und dig müssten dir in deinem internen Netz jetzt immer deine interne IP liefern, wenn du deine dyndns-Adresse aufrufst. |
Daimonion![]() Anmeldungsdatum: 21.11.2005 Beiträge: 185 Wohnort: Fuwa |
otzenpunk hat Folgendes geschrieben:
Mmh, okay verstanden, aber ich will ja von intern die externe IP haben, damit ich beim cvs-clienten immer dieselbe adresse wgaral.dyndns.org angeben kann. |
otzenpunkModerator![]() Anmeldungsdatum: 17.10.2005 Beiträge: 4187 Wohnort: Hamburg-Altona |
Daimonion hat Folgendes geschrieben:Mmh, okay verstanden, aber ich will ja von intern die externe IP haben, damit ich beim cvs-clienten immer dieselbe adresse wgaral.dyndns.org angeben kann. Ne, an die externe kommst du ja nicht ran. Deswegen willst du intern die interne IP haben. Egal, wo du bist, der Dyndns-Name funktioniert dann immer. |
Daimonion![]() Anmeldungsdatum: 21.11.2005 Beiträge: 185 Wohnort: Fuwa |
hmm, vielleicht erklär ich noch mal kurz warum
ich die externe brauch. Mein CVS-Server steht ganz normal hinter dem Router (DNS, DHCP). Wenn ich den von intern ansprechen will kann ich ja ganz normal die interne IP angeben. Ergo, funktioniert auch! Wenn ich von extern auf den CVS-Server zugreifen will, muß ich ja die Dyndns angeben. Funktioniert auch einwandfrei. Da mein CVS-Client aber die Links in Dateien ablegt (Tortoise CVS legt versteckte Verzeichnisse mit Files an wo die Informationen drinstehen) müßte ich jedes mal wenn ich mich mit dem CVS-Server connecten will entweder die interne oder die externe angeben, je nachdem ob ich in meinem Netz surfe, oder nicht. Da dies aber ein nicht zu haltender Aufwand wäre will ich alles über die externe IP erledigen. Bisher ist mir ja da immer das Problem dazwischen gekommen das ich von intern nicht die externe IP bekomme, sondern die interne des Routers. Und auf das interne Interface ist ja kein Forwarding eingetragen. Ergo: Wenn ich von intern über meine Dyndns auf den CVS zugreifen möchte, bekomm ich eine IP wo auf dem entsprechenden Port kein CVS zu finden ist. Würde ich die externe IP bekommen, so besteht in den iptables ein eintrag für ein Forwarding der dann auch genutzt wird und die Anfrage an meinen CVS-Server weiterleitet, oder? Bei nem Hardwarerouter gehts ja auch. Es kann ja auch sein das die Iptables nicht richtig eingestellt sind und so verliert sich das Paket irgendwo in meinem Netz. |
otzenpunkModerator![]() Anmeldungsdatum: 17.10.2005 Beiträge: 4187 Wohnort: Hamburg-Altona |
Hab ich schon verstanden, wofür du das
brauchst. Daimonion hat Folgendes geschrieben:Da mein CVS-Client aber die Links in Dateien ablegt (Tortoise CVS legt versteckte Verzeichnisse mit Files an wo die Informationen drinstehen) müßte ich jedes mal wenn ich mich mit dem CVS-Server connecten will entweder die interne oder die externe angeben, je nachdem ob ich in meinem Netz surfe, oder nicht. Und du willst da den Dyndns-Namen eintragen, so dass er immer auf den CVS-Server zeigt. Daimonion hat Folgendes geschrieben:Da dies aber ein nicht zu haltender Aufwand wäre will ich alles über die externe IP erledigen. Denkfehler. Du willst es über den Namen erreichen, die IP ist nicht wichtig. (Oder akzeptiert der Client keine DNS-Namen, sondern nur IPs? Wozu brauchst du dann überhaupt den Dyndns-Namen?) Daimonion hat Folgendes geschrieben:Bisher ist mir ja da immer das Problem dazwischen gekommen das ich von intern nicht die externe IP bekomme, sondern die interne des Routers. Und auf das interne Interface ist ja kein Forwarding eingetragen. Das wird sich auch nicht ändern. Daimonion hat Folgendes geschrieben:Ergo: Wenn ich von intern über meine Dyndns auf den CVS zugreifen möchte, bekomm ich eine IP wo auf dem entsprechenden Port kein CVS zu finden ist. Nicht, wenn der DNS-Server direkt die interne IP des CVS-Servers, nicht des Routers, rausgibt. Dann brauchst du gar kein Forwarding, sondern greifst direkt drauf zu, als wenn du die interne IP verwendest. Einziger Nachteil: Du kannst dann nicht mehr mit dem Dyndns-Namen auf den Router zugreifen. Wenn du das auch benötigst, kannst du bei Dyndns Wildcards einschalten, und intern nicht example.dyndns.org, sondern cvs.example.dyndns.org verbiegen. |
Daimonion![]() Anmeldungsdatum: 21.11.2005 Beiträge: 185 Wohnort: Fuwa |
otzenpunk hat Folgendes geschrieben:
Ja, du hast recht ich mein den Namen. bin grad nur so im Auflösen und nicht auflösen das ich IP geschrieben habe. otzenpunk hat Folgendes geschrieben:
Stimmt, soll sich ja eigentlich auch nicht. Bei Hardwareroutern funktioniert die ganze Geschichte ja. Dort kann ich ganz normal immer die Dyndns angeben und egal ob intern oder extern bekomme ich zugriff.Also muß es auch mit der richtigen Config bei nem Linux Router funktionieren. otzenpunk hat Folgendes geschrieben:[/quote] Ne, das ist mit meinen mitteln ja gar nicht so wirklich möglich. Die interne IP ist ja eine 192.168.x.x, also nicht routbar. |
Daimonion![]() Anmeldungsdatum: 21.11.2005 Beiträge: 185 Wohnort: Fuwa |
otzenpunk hat Folgendes geschrieben:
Ja, du hast recht ich mein den Namen. bin grad nur so im Auflösen und nicht auflösen das ich IP geschrieben habe. otzenpunk hat Folgendes geschrieben:
Stimmt, soll sich ja eigentlich auch nicht. Bei Hardwareroutern funktioniert die ganze Geschichte ja. Dort kann ich ganz normal immer die Dyndns angeben und egal ob intern oder extern bekomme ich zugriff.Also muß es auch mit der richtigen Config bei nem Linux Router funktionieren. otzenpunk hat Folgendes geschrieben:
Ne, das ist mit meinen mitteln ja gar nicht so wirklich möglich. Die interne IP ist ja eine 192.168.x.x, also nicht routbar. Mittlerweile tunnele ich halt jedesmal vorher den Port auf den Router. Geht auch aber wär natürlich schön wenns auch "normal" gehen würde Zuletzt bearbeitet von Daimonion am 11.06.2006, 19:38, insgesamt einmal bearbeitet |
seth2k1![]() Anmeldungsdatum: 07.06.2006 Beiträge: 124 Wohnort: Hanau |
otzenpunk hat Folgendes geschrieben:Hatte dasselbe Problem. Ich hab's noch dreckiger gelöst, indem mein eigener DNS-Server den externen Domain-Namen auf die interne IP auflöst. Wenn ich wieder zu Hause bin, poste ich die Konfig. Ich glaube ihr redet ein wenig aneinander vorbei. So wie ich Daimonion verstanden habe, möchte er mit seinem Laptop vom LAN aus seinen CVS Server mit der DynDNS-Adresse erreichen, aber auch vom WAN aus. Wenn er das so durchzieht wie du es geschildert hast, kann er vom WAN aus die DynDNS-Adresse vergessen, oder müsste seinen DNS umkonfigurieren. Und das ist genau der Aufwand den Daimonion zu verhindern versucht. Leider kann ich bei dem Problem direkt nicht helfen - sorry. |
otzenpunkModerator![]() Anmeldungsdatum: 17.10.2005 Beiträge: 4187 Wohnort: Hamburg-Altona |
Bei mir sieht das so aus: Mein Server hat intern die Adresse 192.168.5.5. Notebook im LAN will auf example.dyndns.org zugreifen und fragt meinen Nameserver nach der Adresse. Nameserver antwortet: 192.168.5.5. Notebook verbindet zu 192.168.5.5. Notebook woanders will auf example.dyndns.org zugreifen und fragt einen anderen über DHCP zugewiesenen Nameserver nach der Adresse. Nameserver fragt bei dyndns.org nach und antwortet dann: 82.83.100.111. (Nur Beispiel für externe Adresse.) Notebook verbindet zu 82.83.100.111. -> Port-Weiterleitung vom Router. Daimonion hat Folgendes geschrieben:Bei Hardwareroutern funktioniert die ganze Geschichte ja. Dort kann ich ganz normal immer die Dyndns angeben und egal ob intern oder extern bekomme ich zugriff.Also muß es auch mit der richtigen Config bei nem Linux Router funktionieren. Vielleicht geht das auch, wenn du auch für das interne Interface (z.B. eth0) eine Umleitung erstellst: Code:iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 22 -j
DNAT --to-destination 192.168.5.5 Hab ich bei mir aber nicht getestet, weil ich das wie oben gelöst hab. Weiß nicht mehr warum, aber gab 'nen Grund. |
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten.
Du kannst Dateien in diesem Forum herunterladen.






2001, 2005 phpBB Group