ubuntuusers.de

BIND9 + DYNDNS = lokal funktioniert, extern nicht mehr

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

ViiJay

Anmeldungsdatum:
17. Februar 2007

Beiträge: 33

Hallo zusammen,

vorab gesagt, ich bin kein DNS-Spezialist und habe mich, bis zu einem gewissen Punkt zumindest, durchgeschlagen. Ab diesem Punkt jedoch bin ich mit meinem Wissen am Ende und hoffe, dass mir hier jemand helfen kann.

Folgende Ausgangssituation: Ich habe einen lokalen DNS Server eingerichtet, der als Caching-Server funktioniert (DNS Server ist bind9, Forwarders sind entsprechend eingerichtet). Einige lokale Systeme sind darin konfiguriert, die entsprechend lokal aufgelöst werden. Jetzt nutze ich zusätzlich noch DYNDNS zur Auflösung der externen IP zu einem Namen auf verschiedenen Domains (dyndns.org, homedns.org und blogdns.org - allesamt gehostet von dyndns.org). Jetzt habe ich es geschafft, dass die Namen der dynamischen Domains im lokalen Netz entsprechend mit der lokalen IP aufgelöst werden. Soweit so gut. Dumm ist nur, dass ich andere dynamische Domains leider nicht mehr angezeigt bekomme, da diese nicht aufgelöst werden.

Frage: Wie muss ich den DNS Server konfigurieren, damit ich meine eigenen dynamischen Domains als lokale IP aufgelöst bekomme, alle anderen aber über die Forwarder aufgelöst werden? Was funktioniert ist die Auflösung von xyz.dyndns.org auf 10.a.b.c allerdings funktioniert die Auflösung von anderen dynamischen Domains z.B. sunshine.dyndns.org (ist nicht meine) nicht mehr.

Ich hoffe, ich habe es einigermaßen verständlich erklärt und ihr wißt, was ich meine. Unten finden sich dann noch ein Zone-File am Beispiel von dyndns.org des DNS Servers.

Vielen Dank schon mal für eure Ideen.

Datei "db.dyndns.org":

$TTL    86400
@                               IN      SOA     localhost.myprivate.domain. mail.myprivate.domain. (
                                              2009062703                ; Serial
                                                   18000                ; Refresh
                                                    1200                ; Retry
                                                 2419200                ; Expire
                                                   86400 )              ; Negative Cache TTL
;
                                        NS      localhost.myprivate.domain.

abcdef.dyndns.org.                     A       10.xx.xx.1

Datei "named.conf.local"

//
// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";

zone "myprivate.domain" {
type master;
file "/etc/bind/db.myprivate.domain";
};

zone "dyndns.org" {
type master;
file "/etc/bind/db.dyndns.org";
};

[...]

harry123

Avatar von harry123

Anmeldungsdatum:
3. Mai 2006

Beiträge: 3188

Wohnort: Leipzig

Das kann nicht gehen, die Rechner müssen so in etwa heißen:

Rechner1.mein_dyndns_name.dyndns.org

So eine Art Subdomain, glaube ich. Bin aber auch kein Experte. Ich denke aber, das du so Erfolg haben könntest.

Grüße

Odin_the_God

Anmeldungsdatum:
5. März 2008

Beiträge: Zähle...

Du willst die INTERNEN IP's mit dyndns auflösen?!? Wozu soll das gut sein. Du hast einen lokalen DNS-Server, der soll doch die Hosts auflösen.

Mit DynDNS kannst du deiner externen IP einen Hostname geben, damit du von extern auf z.B. deinen internen Webserver zugreifen kannst. Das ist zum Beispiel nützlich, wenn du vom Internet-Provider eine dynamische IP erhälst, oder wenn du dir die IP einfach nicht merken willst.

Von extern kannst du nicht direkt auf die internen IPs in deinem Netz (10.X.X.X, 172.16.X.X-172.31.X.X, 192.168.X.X) zugreifen, ausser mit NAT und so. Da du nur eine externe IP hast, brauchst du also sowieso nur ein DynDNS Host.

ViiJay

(Themenstarter)

Anmeldungsdatum:
17. Februar 2007

Beiträge: 33

Hallo zusammen,

Erstmal was generelles. Ich fürchte nämlich, ich wurde leicht falsch verstanden. Was ich möchte ist, dass ich z.B. mit meinem Laptop, mit dem ich mich in mein internes Netzwerk hänge, automatisch die interne IP für abcde.dyndns.org aufgelöst bekomme, wenn ich aber extern bin, z.B. bei einem Freund oder an einem öffentlichen WLAN Zugang, dann soll er (ohne Umstellung) die externe IP bekommen (da ja auch ein anderer DNS Server konfiguriert ist, durch den anderen Provider). Vielleicht wird jetzt einiges klarer. Sprich, so lange ich im internen Netz hänge, soll ich bitteschön auch die interne IP erhalten (10.x.y.z) und wenn ich in einem anderen Netz bin, soll er die öffentliche auflösen (z.B. 1.2.3.4).

Generell: Ja, mir ist bewußt, dass man solche Einstellungen auch per /etc/hosts machen kann, das ist aber lästig, wenn man häufig mal in anderen Netzen eingeloggt ist und dann wieder nach Hause kommt. Dann muss man nämlich die Einträge in der /etc/hosts wieder ändern, oder sich ein Skript schreiben, mit dem man die hosts Dateien umkopiert. Ziel ist es lediglich, dass jeder Rechner, der z.B. hier ins Netz kommt, automatisch alle Namen richtig (sprich mit internen IPs) aufgelöst bekommt. So, ich hoffe, das war etwas klarer.

Zu dir harry123: Ich weiss was du meinst, aber ich wollte nicht extra jeden Rechner in meinem Netz einen eigenen Namen geben, wie das wahrscheinlich über die Subdomain möglich gewesen wäre, was ich wollte, habe ich ja oben bereits versucht nochmals genauer zu beschreiben.

Zu dir Odin_the_God: Mir ist klar, was der Sinn eines dynamischen DNS Dienstes ist und das es darum geht, die (wechselnde) externe IP durch einen Namen leichter merkbar zu machen. Das Problem war jedoch der Wechsel intern / extern, wie ich oben ja nochmals geschrieben habe, diesmal hoffentlich verständlicher. Ausserdem wollte ich nicht die internen IPs per dyndns auflösen, sondern nur, dass der DYNDNS name: abcde.dyndns.org im intern Netz auch die interne IP zugewiesen bekommt, während wenn ich mich anderweitig aufhalte und einwähle, somit auch nicht den internen DNS Server nutze, logischer Weise die öffentliche IP erhalten, da anderer DNS Server. Das würde so oder so funktionieren, allerdings klappt das über die interne Schiene momentan noch nicht. Momentan werden alle anderen Namen, die ich über dyndns.org auflösen möchte, nicht gefunden, logisch, da mein Zonen-File ja nur einen Namen kennt, nämlich abcde.dyndns.org! Möchte ich aber sunshine.dyndns.org auflösen, findet er das nicht.

Ich weiss, alles was kompliziert, aber ich dachte, ich wäre nicht der einzige, der sowas schon mal versucht hat. Danke trotzdem für eure Tipps!

Gruß ViiJay.

Odin_the_God

Anmeldungsdatum:
5. März 2008

Beiträge: 46

Dein SOA-Eintrag ist falsch, den musst du anpassen.

Nimm doch einfach deinen internen Nameserver als DNS1 und den normalen als DNS2. Wenn du nicht im internen Netz bist, wird der DNS1 nicht gefunden, und er löst die IP für extern auf.

Den DNS testen kannst du mit dem Tool nslookup. wenn dein dns korrekt konfiguriert ist sollte der deine Namen auflösen.

ViiJay

(Themenstarter)

Anmeldungsdatum:
17. Februar 2007

Beiträge: 33

Hallo Odin_the_God,

danke für die Antwort, aber weißt du auch zufällig, wie genau man den SOA Eintrag anpassen muss?

Was den Hinweis mit DNS1 und DNS2 angeht, kann das natürlich helfen, allerdings verstehe ich nicht so ganz, wo der Sinn darin besteht. Wenn ich woanders als zu Hause bin, bekomme ich doch sowieso von dem anderen Anbieter (sei es der Freund, in dessen Netz ich mich verbinde oder ein HotSpot am Flughafen oder ähnliches) sowieso völlig andere IPs und DNS Server übermittelt. Insofern ist es doch egal, was ich in meinem lokalen Netz als zweiten DNS Server erhalte oder nicht?

Falls ich mit meinen Überlegungen völlig falsch liege, korregiert mich. Ich bin kein DNS Guru, insofern...

Gruß ViiJay.

Odin_the_God

Anmeldungsdatum:
5. März 2008

Beiträge: 46

Ja, du hast recht, mit DHCP ist das natürlich so, sorry

Vieleicht hilft dir das bei der Konfiguration weiter: http://www.cargal.org/drupal/node.php?id=328

beim soa ist das erste dein nameserver, das zweite die mailadresse des admins(einfach mit . statt @, da @ eine sonderfunktion hat). den punkt dahinter solltest du jeweils nicht vergessen.

ViiJay

(Themenstarter)

Anmeldungsdatum:
17. Februar 2007

Beiträge: 33

Hallo Odin_the_God,

ich habe erst jetzt wieder den Thread entdeckt. Das kommt davon, wenn man keine Email-Benachrichtigung bekommt.

Den Link habe ich mir angeschaut und leider hat auch das keine Lösung erbracht. Ich bin mittlerweile dazu übergegangen, dass ich den "unschönen" Weg gehen werde, da mir wohl nichts anderes übrig bleibt. Sprich, ich werde die externen Hostnames einfach in die lokale /etc/hosts eintragen, womit sich die Sache dann erledigt hat. Alle Clients im lokalen Netz werden dann entsprechend über den DNS aufgelöst, was ohne Probleme funktioniert.

Trotzdem danke für die Anregungen. Ich werde den Thread mal als "Gelöst" markieren, auch wenn die Lösung heißt: Es gibt keine Lösung. 😉

ViiJay

Odin_the_God

Anmeldungsdatum:
5. März 2008

Beiträge: 46

Es kann schon gelöst werden.

Extern kriegst du sowieso die externe IP, da dein DNS nicht dreinfunkt, oder? Intern musst du nur den BIND zum laufen bringen und als deinen DNS angeben. Du machst eine Forwardlookup-Masterzone dyndns.org, und leitest alles andere weiter an einen anderen DNS. Dein interner DNS weiss ja dann nur die daten deiner eigenen zonen (dyndns.org) und bei allem anderen fragt er weiter.

ViiJay

(Themenstarter)

Anmeldungsdatum:
17. Februar 2007

Beiträge: 33

Da bin ich mir eben nicht sicher. Der ursprüngliche Grund dafür war ja, dass ich intern den namen abcdef.dyndns.org auf die lokale IP Adresse (10.xx.xx.xx) aufgelöst bekommen wollte und nicht die externe.

Aktuell ist es so, dass das Kabelmodem die externe IP direkt an die zweite Netzwerkkarte weiterleitet (eth1) und die Karte die externe IP hat. Der DNS ist so konfiguriert, dass für die lokale Zone er selbst zuständig ist und alles andere per Forward an andere, öffentliche DNS Server weiterleitet.

Wenn ich dich falsch verstanden habe, würde es dir was ausmachen, ein Beispiel zu posten?

ViiJay

MTemp

Anmeldungsdatum:
14. April 2009

Beiträge: 27

Hallo, ich stehe exakt vor dem gleichen Problem und find leider auch im Internet nix dazu.

Hat irgendwer auf dem Gebiet schon Fortschritte gemacht? Atm steh ich vor dem Problem, dass ich zwar "meine" dyndns.org-Addresse umgeleitet bekomme, dafür aber alle anderen (checkip.dyndns.org, anderer_user.dyndns.org) nicht.

Du machst eine Forwardlookup-Masterzone dyndns.org, und leitest alles andere weiter an einen anderen DNS. Dein interner DNS weiss ja dann nur die daten deiner eigenen zonen (dyndns.org) und bei allem anderen fragt er weiter.

Genau das funktioniert leider nicht, bzw. ich stelle mich zu dumm an. Was er in der dyndns.org-Zone nicht findet, wird bei mir gar nicht aufgelöst...

Alternativ: Weiß wer, wie ich bind beibringe genau eine Domain besonders aufzulösen und alles andere unberührt zu lassen?

Grüße Michael P.S. Ich hoffe es kein Problem diesen alten Thread wieder hochzuholen..

Antworten |