Linux.named: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(46 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
<h>lokaler DNS Forwarder</h><br>
== Überblick: eigener lokaler DNS Server (via bind) ==
<br>
<br>
DNS-Adressen wechseln ganz im Gegensatz zu HTML-Inhalten nicht so
DNS-Adressen wechseln ganz im Gegensatz zu HTML-Inhalten nicht so häufig. Deshalb will ich einen Caching-BIND Server einsetzten. Ich
h䵦ig. Deshalb will ich keinen vollst䮤igen Proxy einsetzten. Aber ich
will nicht, dass jede (wiederholte) DNS Anfrage ins Internet rausgepustet wird! Bis sich alle Datenbanken weltweit angeglichen haben kann schon mal ein halber Tag vergehen, also können wir auch mit gutem Gewissen DNS-Anfragen cachen, etwa mit der Haltbarkeit die zu dem Namen vorgesehn ist. Deshalb ist ein Caching unbedenklich, und auch besonders lohnend, da einige TCP:53
will nicht, dass jede (wiederholte) DNS Anfrage ins Internet rausgepustet
Verbindungsaufbau-Vorgänge (Phase der Namensauflösung) nun lokal abgewickelt werden können!
wird! Bis sich alle Datenbanken weltweit angeglichen haben kann schon mal
Die Idee liegt nahe, hey man könnte den Linux-Server doch auch als Name-Server (DNS-relay) einsetzen. Egal welcher Provider dann angewählt ist
ein halber Tag vergehen, also k?n wir auch guten gewissens DNS anfragen
(=welcher nameserver auch immer angegeben werden muss) der lokale DNS-Server leitet alle Anfragen immer  an die richtige Adresse (nämlich an den Nameserver draussen im Internet) weiter. Wie die jeweiligen Namenserver heissen steht ja
cache, etwa mit einer Haltbarkeit der cache inhalte von 10 min ?!. Deshalb
in der forwarders-Sektion der named.conf. Die Clients müssen nix mehr umstellen (im Feld
ist ein Caching unbedenklich, und auch besonders lohnend, da einige UDP/TCP
Nameserver) da "Gateway" UND "Nameserver" die gleiche Zieladresse haben. Hier ist die Lösung:
Verbindungsaufbau-Vorg䮧e lokal abgewickelt werden k?n!
 
Die Idee liegt nahe, hey man k?e den Linux-Server doch auch als
== Hostnamen ==
Name-Server (DNS-relay) einsetzen. Egal welcher Provider dann angew䨬t ist
 
(=welcher nameserver auch immer angegeben werden muss) der lokale DNS-Server
Ein Hostname (üblicherweise kleine Buchstaben in der Linux Welt - grosse in der MS-DOS-, LANMANAGER-, Windows- Welt) ist ein Text-String beginnend mit einem Buchstaben, danach Buchstaben oder Ziffern oder ein "-".
leitet alle Anfragen immer  an die richtige Adresse (nä­¬ich an den Nameserver
 
draussen im INternet) weiter. Wie die jeweiligen namenserver heissen steht ja
"a"-"z" { "0"-"9" | "a"-"z" | "-" } !"-"
in der /etc/resolv.conf. Die Clients m?nix mehr umstellen (im Feld
 
Nameserver)! Gateway UND Nameserver haben dann die gleiche Zieladresse. Hier ist die L?g:  
Am Ende darf kein Minus sein.
 
* Punkte im Hostnamen sind möglich aber eine ganz schlechte Idee! Punkte im Domain-Namen hingegen sind OK!
* Blank oder Underscore sind verboten
 
== Voraussetzungen ==
 
<b>Eine eigene Domäne</b>
 
Überlege Dir, wie dein PC Netz heissen soll. Dieser Name wird auch als Arbeitsgruppen-Namen bei den Windows PC Verwendung finden. In allen folgenden Beispielen verwende ich
 
pcworld
 
als Domänennamen. Sinnvollere Domänennamen / Arbeitsgruppennamen sind Firmennamen oder Abteilungsnamen. Unter Linux UND Windows hat die Domäne folgenden Sinn: Innerhalb der eigene Domäne können lokale, kurze Hostnamen verwendet werden (wie "SAM", "TINA", "DRESDEN"), die versteht dann auch jeder.
 
<b>Bei dem DNS Server selbst</b>
 
* Eigener Hostname ...
 
a) yast->network services->hostnames
b) yast->netword devices->networksettings->Hostnames
 
* ... und zugehörige Domäne muss gesetzt sein. Hostname ist nach der Standardinstallation "linux" und sollte auf einen sinnvollen Wert geändert werden.
* Nameserver Eintrag muss leer bleiben!
 
<b>Bei den Clients</b>
 
* Hostname und Domäne setzen.
* Zusätzlich die IP des Nameservers angeben. Rechts daneben steht auch eine Nameserver Domain. Auch diese muss auf "pcworld" gesetzt werden. Damit der client weiss, wie er lokale Namen auflösen soll. Die Internet Namensauflösung würde auch ohne Domain Eintrag klappen.
 
== Konfiguration ==


Zuerst werden die Pakete [bind9] aus der Serie [n] sowie die [bind9-utils]  
Zuerst werden die Pakete [bind9] aus der Serie [n] sowie die [bind9-utils]  
installiert.  
installiert.  


  chkconfig --add named  
  chkconfig --add named
 
Um so ab und an mal einen "reload" der zonen zu erwingen muss nicht unbedingt der nameserver mit
 
  rcnamed restart
 
Neu gestartet werden. Es reicht eigentlich mit
 
rndc reload
 
dem Nameserver einen freundlichen Hinweis zu geben.
 
== /etc/named.conf ==
   
   
Danach in der Datei "/etc/named.conf" folgende, mit den Pfeilen markierten  
Danach in der Datei "/etc/named.conf" folgende, mit den Pfeilen markierten  
Anpassungen eintragen:
Anpassungen eintragen:<br>
<b>ACHTUNG:</b> Bei meinem System wird "named.conf" automatisiert erzeugt. Dazu wird als Vorlage "named.conf.saved.by.dsl0" oder so benutzt. In diesem Fall muss man dort seinen Änderungen machen, da sonst bei ip-up oder ip-down alle wieder überschrieben wird. Lustig oder. Fraglich ist das verhalten natürlich im Zusammenhang mit einer ISDN ausfallverbindung, die über ein andere Interface läuft! Wird dann die Anlage einer "named.config.saved.by.ippp0" oder so nötig??


  -------------------------------------------------------------------------
  -------------------------------------------------------------------------
Zeile 44: Zeile 87:
               # forwarders { 194.25.2.129; 212.185.248.148; };
               # forwarders { 194.25.2.129; 212.185.248.148; };
                
                
              # nur Suse < 11.1
       ->      forwarders { 217.237.151.161; 217.237.151.33; };  
       ->      forwarders { 217.237.151.161; 217.237.151.33; };  
              # nur SuSe > 11.0
      ->      include "/etc/named.d/forwarders.conf";
    
    
               # Enable the next entry to prefer usage of the name
               # Enable the next entry to prefer usage of the name
Zeile 117: Zeile 164:
  -> type master;
  -> type master;
  -> file "pcworld.zone";
  -> file "pcworld.zone";
  -> allow-query {192.168.100/24; };
  -> allow-query {127.0.0.1; 192.168.100/24; };
  -> allow-transfer { none; };
  -> allow-transfer { none; };
  ->  };
  ->  };
Zeile 127: Zeile 174:
  ---------------------------------------------------------------------
  ---------------------------------------------------------------------


== /var/lib/named/~domäne~.zone ==


* Anlegen der Zonendateien:
* Anlegen der Zonendateien:


Das Verzeichnis, in dem die Zonendateien angelegt werden, wird in der
Das Verzeichnis, in dem die Zonendateien angelegt werden, wird in der
Datei "/etc/named.conf" in der Sektion "options" mit dem Schlüssel  
Datei "/etc/named.conf" in der Sektion "options" mit dem Schlüssel  
"directory" (Standardmäßig ist dies "/var/lib/named/") angegeben
"directory" (Standardmäßig ist dies "/var/lib/named/") angegeben


/var/lib/named/pcworld.zone<br>
/var/lib/named/pcworld.zone<br>
Zeile 151: Zeile 197:
 
 
  localhost      IN A  127.0.0.1
  localhost      IN A  127.0.0.1
  Thorsten       IN A  192.168.100.11
  *.Thorsten     IN A  192.168.100.11
BDB_Bucerius    IN A  192.168.100.12
 
Hanne          IN A  192.168.100.16
* Änderungen in der Zonen Datei
Norbert_Braun  IN A  192.168.100.17
 
Christian      IN A  192.168.100.18
Nach einfügen des neuen Rechners (nicht vergessen, den serial um eines zu erhöhen) oder Änderungen müssen leider die betroffenen systeme named und nmb von den Änderungen benachrichtigt werden (das sollte in Zukunft der keepcon sebst-tätig machen):
HeBu-Messe      IN A  192.168.100.20
 
Musikduerr      IN A  192.168.100.21
  rndc reload
Alexander      IN A  192.168.100.22
  rcnmb restart
;Apple1        IN A  192.168.100.23
;Apple2        IN A  192.168.100.24
SHARP_AR-235    IN A  192.168.100.30
SHARP_AR-407    IN A  192.168.100.35
Konica          IN A  192.168.100.32
Linus          IN A  192.168.100.72
Gates          IN A  192.168.100.180
raib181        IN A  192.168.100.181
  raib182        IN A  192.168.100.182
   


== /var/lib/named/~SubNetz~.zone ==


/var/lib/named/192.168.100.zone<br>
/var/lib/named/192.168.100.zone<br>
Vor den Rechnernummern (Letzter Teil der IP-Adresse) dürfen sich keine Leerzeichen befinden.
Vor den Rechnernummern (Letzter Teil der IP-Adresse) dürfen sich keine Leerzeichen befinden.


  $TTL 2D
  $TTL 2D
  @  IN SOA  raib181.world.  root.pcworld. (
  @  IN SOA  raib181.pcworld.  root.pcworld. (
  2005080303 ; serial
  2005080303 ; serial
  2D ; refresh
  2D ; refresh
Zeile 184: Zeile 220:
   
   
  100.168.192.in-addr.arpa. IN NS localhost.
  100.168.192.in-addr.arpa. IN NS localhost.
  11 IN PTR Thorsten.pcworld.
  11 IN PTR *.Thorsten.pcworld.
12 IN PTR BDB_Bucerius.pcworld.
16 IN PTR Hanne.pcworld.
17 IN PTR Norbert_Braun.pcworld.
18 IN PTR Christian.pcworld.
20 IN PTR HeBu-Messe.pcworld.
21 IN PTR Musikduerr.pcworld.
22 IN PTR Alexander.pcworld.
;23 IN PTR Apple1.pcworld.
;24 IN PTR Apple2.pcworld.
30 IN PTR SHARP_AR-235.pcworld.
32 IN PTR Konica.pcworld.
35 IN PTR SHARP_AR-407.pcworld.
72 IN PTR Linus.pcworld.
180 IN PTR Gates.pcworld.
181 IN PTR raib181.pcworld.
182 IN PTR raib182.pcworld.


Nun wird mit dem Befehl ''rcnamed restart'' die neue DNS-Konfiguration eingelesen und aktiviert
Nun wird mit dem Befehl ''rcnamed restart'' die neue DNS-Konfiguration eingelesen und aktiviert


== /etc/resolf.conf ==


Jetzt ist noch in der Datei "/etc/resolv.conf" anzugeben, dass man zur
Namensauflösung den lokalen DNS-Server benutzt. Alle bisherigen Einträge am besten löschen.


* resolv.conf


Jetzt ist noch in der Datei "/etc/resolv.conf" anzugeben, dass man zur
  #
Namensaufl?g den lokalen DNS-Server benutzt.
 
  ------------------------------------------------------------------------
   
   
    search
domain pcworld
    nameserver 127.0.0.1
search pcworld
nameserver 127.0.0.1
   
   
  ------------------------------------------------------------------------
  #


* sysconfig/network/config
== /etc/sysconfig/network/config ==
 
=== SuSE<11.0 ===
   
   
Damit die "/etc/resolv.conf" nicht bei jeder Einwahl wieder ?hrieben
Damit die "/etc/resolv.conf" nicht bei jeder Einwahl wieder ?überschrieben
wird muss der Parameter  
wird muss der Parameter  


  joe /etc/sysconfig/network/config
  joe /etc/sysconfig/network/config
    
    
  MODIFY_RESOLV_CONF_DYNAMICALLY=no
  MODIFY_RESOLV_CONF_DYNAMICALLY="no"
  MODIFY_NAMED_CONF_DYNAMICALLY=yes      # Dadurch werden die "forwarders" in der"/etc/named.conf" bei jeder Einwahl aktualisiert
  MODIFY_NAMED_CONF_DYNAMICALLY="yes"     # Dadurch werden die "forwarders" in der"/etc/named.conf" bei jeder Einwahl aktualisiert
 
Damit wieder alles seine Richtigkeit hat muss nun SuSEconfig ausgeführt werden (nicht sicher, ob das notwendig ist)
 
SuSEconfig
 
=== SuSE>11.0 ===
 
 
AppAmour muss deaktiviert werden, sonst segfault!


joe /etc/sysconfig/network/config
# die "auto" Policy ermöglicht überhaupt erst Änderungen von Dateien
# durch netconfig
#
NETCONFIG_DNS_POLICY="auto"


Damit wieder alles seine Richtigkeit hat muss nun SuSEconfig ausgef?erden (nicht sicher, ob das notwendig ist)
# wir wollen, dass /etc/name.d/forwarders.conf automatisch geschrieben
# wird.
# Nicht vergessen: in named.conf bei den forwardern include "/etc/named.d/forwarders.conf"
#
NETCONFIG_DNS_FORWARDER="bind"


SuSEconfig


* and-firewall
== Internet-Server auch im lokalen Netz direkt erreichbar ==
 
Durch meinen Internet Provider habe ich eine feste IP-Adresse zugeteilt bekommen. Durch einen weiteren Dienstleister wurde ein Domain-Namen darauf gebunden. Auch ein MX Eintrag gehört dazu. Ähm, der Server steht aber bei "mir" in meinem Netzwerk. Alle sollen jedoch ganz transparent dies durch die Namensauflösung mitgeteilt bekommen.
* Würde eine normalen Anfrage:
 
<b>host orgamon.org</b>
orgamon.org has address 217.91.31.84
orgamon.org mail is handled by 10 mx.orgamon.org.
 
ergeben, ist das in unserem Fall ja Unsinn, ein Routing raus und dann wieder rein ist Stromverschwendung: Der Server steht doch im lokalen Netz um die Ecke! 2. Schritte sind dazu nötig:
 
=== neue Zone ===
 
* in /etc/resolv.conf erweitern
 
zone "orgamon.org." {
  type master;
  file "orgamon.org.zone";
};


Nun m?die neuen Gegebenheiten der Firewall mitgeteilt werden. Folgende
Zeilen werden im Script "/root/fwdsl.start" nach der Sektion


"# E-Mail zum relayen"
=== neue Zonen-Datei ===


hinzugef?  --------------------------------------------------------------------------------
* in /var/lib/named eine neue Datei "orgamon.org.zone" erstellen
  # DNS-Forwarding


     $IPTABLES -A INPUT -i $DEV_INT -s $INT_NET -p TCP --sport $HIGH_PORT --dport 53 -m state --state NEW,ESTABLISHED,RELATED -j
$TTL    604800
     $IPTABLES -A INPUT -i $DEV_INT -s $INT_NET -p UDP --sport $HIGH_PORT --dport 53 -m state --state NEW,ESTABLISHED,RELATED -j
@      IN      SOA    localhost. root.localhost. (
                              4        ; Serial
                          604800        ; Refresh
                          86400        ; Retry
                        2419200        ; Expire
                          604800 )      ; Negative Cache TTL
;
@      IN      NS      localhost.
orgamon.org.    IN     A       192.168.115.25
  *.orgamon.org. IN     A       192.168.115.25
  @      IN      MX    10 mx.orgamon.org.


    $IPTABLES -A OUTPUT -o $DEV_ISDN -p TCP --sport $HIGH_PORT --dport 53 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
=== Ziel erreicht? ===
    $IPTABLES -A OUTPUT -o $DEV_ISDN -p UDP --sport $HIGH_PORT --dport 53 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
  ------------------------------------------------------------------------


<b>host orgamon.org</b>
orgamon.org has address 192.168.115.25
orgamon.org mail is handled by 10 mx.orgamon.org.


  Zum Abschluß werden auf den Windows-Clients in den Netzwerkeinstellungen bei den
* Gut, jetzt hat er verstanden dass dieser Rechner in meinen Netz steht (quasi lokal)
  TCP/IP-Eigenschaften unter Gateway und DNS die IP-Adresse des LINUX-Servers
  angegeben.

Aktuelle Version vom 8. November 2017, 11:19 Uhr

Überblick: eigener lokaler DNS Server (via bind)


DNS-Adressen wechseln ganz im Gegensatz zu HTML-Inhalten nicht so häufig. Deshalb will ich einen Caching-BIND Server einsetzten. Ich will nicht, dass jede (wiederholte) DNS Anfrage ins Internet rausgepustet wird! Bis sich alle Datenbanken weltweit angeglichen haben kann schon mal ein halber Tag vergehen, also können wir auch mit gutem Gewissen DNS-Anfragen cachen, etwa mit der Haltbarkeit die zu dem Namen vorgesehn ist. Deshalb ist ein Caching unbedenklich, und auch besonders lohnend, da einige TCP:53 Verbindungsaufbau-Vorgänge (Phase der Namensauflösung) nun lokal abgewickelt werden können! Die Idee liegt nahe, hey man könnte den Linux-Server doch auch als Name-Server (DNS-relay) einsetzen. Egal welcher Provider dann angewählt ist (=welcher nameserver auch immer angegeben werden muss) der lokale DNS-Server leitet alle Anfragen immer an die richtige Adresse (nämlich an den Nameserver draussen im Internet) weiter. Wie die jeweiligen Namenserver heissen steht ja in der forwarders-Sektion der named.conf. Die Clients müssen nix mehr umstellen (im Feld Nameserver) da "Gateway" UND "Nameserver" die gleiche Zieladresse haben. Hier ist die Lösung:

Hostnamen

Ein Hostname (üblicherweise kleine Buchstaben in der Linux Welt - grosse in der MS-DOS-, LANMANAGER-, Windows- Welt) ist ein Text-String beginnend mit einem Buchstaben, danach Buchstaben oder Ziffern oder ein "-".

"a"-"z" { "0"-"9" | "a"-"z" | "-" } !"-"

Am Ende darf kein Minus sein.

  • Punkte im Hostnamen sind möglich aber eine ganz schlechte Idee! Punkte im Domain-Namen hingegen sind OK!
  • Blank oder Underscore sind verboten

Voraussetzungen

Eine eigene Domäne

Überlege Dir, wie dein PC Netz heissen soll. Dieser Name wird auch als Arbeitsgruppen-Namen bei den Windows PC Verwendung finden. In allen folgenden Beispielen verwende ich

pcworld

als Domänennamen. Sinnvollere Domänennamen / Arbeitsgruppennamen sind Firmennamen oder Abteilungsnamen. Unter Linux UND Windows hat die Domäne folgenden Sinn: Innerhalb der eigene Domäne können lokale, kurze Hostnamen verwendet werden (wie "SAM", "TINA", "DRESDEN"), die versteht dann auch jeder.

Bei dem DNS Server selbst

  • Eigener Hostname ...
a) yast->network services->hostnames
b) yast->netword devices->networksettings->Hostnames
  • ... und zugehörige Domäne muss gesetzt sein. Hostname ist nach der Standardinstallation "linux" und sollte auf einen sinnvollen Wert geändert werden.
  • Nameserver Eintrag muss leer bleiben!

Bei den Clients

  • Hostname und Domäne setzen.
  • Zusätzlich die IP des Nameservers angeben. Rechts daneben steht auch eine Nameserver Domain. Auch diese muss auf "pcworld" gesetzt werden. Damit der client weiss, wie er lokale Namen auflösen soll. Die Internet Namensauflösung würde auch ohne Domain Eintrag klappen.

Konfiguration

Zuerst werden die Pakete [bind9] aus der Serie [n] sowie die [bind9-utils] installiert.

chkconfig --add named

Um so ab und an mal einen "reload" der zonen zu erwingen muss nicht unbedingt der nameserver mit

 rcnamed restart

Neu gestartet werden. Es reicht eigentlich mit

rndc reload

dem Nameserver einen freundlichen Hinweis zu geben.

/etc/named.conf

Danach in der Datei "/etc/named.conf" folgende, mit den Pfeilen markierten Anpassungen eintragen:
ACHTUNG: Bei meinem System wird "named.conf" automatisiert erzeugt. Dazu wird als Vorlage "named.conf.saved.by.dsl0" oder so benutzt. In diesem Fall muss man dort seinen Änderungen machen, da sonst bei ip-up oder ip-down alle wieder überschrieben wird. Lustig oder. Fraglich ist das verhalten natürlich im Zusammenhang mit einer ISDN ausfallverbindung, die über ein andere Interface läuft! Wird dann die Anlage einer "named.config.saved.by.ippp0" oder so nötig??

-------------------------------------------------------------------------
 
      options {
 
       ->     auth-nxdomain no;

              # The directory statement defines the name server's
              # working directory

              directory "/var/lib/named";

              # 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 { 10.11.12.13; 10.11.12.14; };
              # forwarders { 194.25.2.129; 212.185.248.148; };
              
              # nur Suse < 11.1
      ->      forwarders { 217.237.151.161; 217.237.151.33; }; 

              # nur SuSe > 11.0
      ->      include "/etc/named.d/forwarders.conf";
 
              # 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; };

      ->      listen-on port 53 { 127.0.0.1; 192.168.100.181; };

              # The listen-on-v6 record enables or disables listening
              # on IPV6 interfaces. Allowed values are 'any' and 'none'
              # or a list of addresses. IPv6 can only be used with
              # kernel 2.4 in this release.

              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; };

    ->        allow-query { localnets; };     

              # 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 three zone definitions don't need any modification.
 # The first one defines localhost while the second defines the
 # reverse lookup for localhost. The last zone "." is the
 # definition of the root name servers.

  zone "localhost" in {
        type master;
        file "localhost.zone";
 };

 zone "0.0.127.in-addr.arpa" in {
        type master;
        file "127.0.0.zone";
 };

 zone "." in {
        type hint;
        file "root.hint";
 };

 # You can insert further zone records for your own domains below.

->  zone "pcworld" in {
->	notify no;
-> 	type master;
->	file "pcworld.zone";
->	allow-query {127.0.0.1; 192.168.100/24; };
->	allow-transfer { none; };
->  };

->    zone "100.168.192.in-addr.arpa" in {
->       type master;
->       file "192.168.100.zone";
->     };
---------------------------------------------------------------------

/var/lib/named/~domäne~.zone

  • Anlegen der Zonendateien:

Das Verzeichnis, in dem die Zonendateien angelegt werden, wird in der Datei "/etc/named.conf" in der Sektion "options" mit dem Schlüssel "directory" (Standardmäßig ist dies "/var/lib/named/") angegeben

/var/lib/named/pcworld.zone
Vor den Rechnernamen dürfen sich keine Leerzeichen befinden.

$TTL 2D
@ IN SOA  raib181.pcworld.  root.pcworld. (
				2005080303	; serial
				2D		; refresh
				4H		; retry
				6W		; expiry
				1W )		; minimum

		IN NS		raib181.pcworld.
		
		
localhost       IN A   127.0.0.1
*.Thorsten      IN A   192.168.100.11 	
  • Änderungen in der Zonen Datei

Nach einfügen des neuen Rechners (nicht vergessen, den serial um eines zu erhöhen) oder Änderungen müssen leider die betroffenen systeme named und nmb von den Änderungen benachrichtigt werden (das sollte in Zukunft der keepcon sebst-tätig machen):

rndc reload
rcnmb restart

/var/lib/named/~SubNetz~.zone

/var/lib/named/192.168.100.zone
Vor den Rechnernummern (Letzter Teil der IP-Adresse) dürfen sich keine Leerzeichen befinden.

$TTL 2D
@  IN SOA  raib181.pcworld.  root.pcworld. (
				2005080303	; serial
				2D		; refresh
				4H		; retry
				6W		; expiry
				1W )		; minimum

100.168.192.in-addr.arpa.	IN NS		localhost.
11	IN PTR		*.Thorsten.pcworld. 		

Nun wird mit dem Befehl rcnamed restart die neue DNS-Konfiguration eingelesen und aktiviert

/etc/resolf.conf

Jetzt ist noch in der Datei "/etc/resolv.conf" anzugeben, dass man zur Namensauflösung den lokalen DNS-Server benutzt. Alle bisherigen Einträge am besten löschen.


#

domain pcworld
search pcworld
nameserver 127.0.0.1

#

/etc/sysconfig/network/config

SuSE<11.0

Damit die "/etc/resolv.conf" nicht bei jeder Einwahl wieder ?überschrieben wird muss der Parameter

joe /etc/sysconfig/network/config
 
MODIFY_RESOLV_CONF_DYNAMICALLY="no"
MODIFY_NAMED_CONF_DYNAMICALLY="yes"      # Dadurch werden die "forwarders" in der"/etc/named.conf" bei jeder Einwahl aktualisiert

Damit wieder alles seine Richtigkeit hat muss nun SuSEconfig ausgeführt werden (nicht sicher, ob das notwendig ist)

SuSEconfig

SuSE>11.0

AppAmour muss deaktiviert werden, sonst segfault!

joe /etc/sysconfig/network/config

# die "auto" Policy ermöglicht überhaupt erst Änderungen von Dateien 
# durch netconfig
#
NETCONFIG_DNS_POLICY="auto"
# wir wollen, dass /etc/name.d/forwarders.conf automatisch geschrieben
# wird.
# Nicht vergessen: in named.conf bei den forwardern include "/etc/named.d/forwarders.conf"
#
NETCONFIG_DNS_FORWARDER="bind"


Internet-Server auch im lokalen Netz direkt erreichbar

Durch meinen Internet Provider habe ich eine feste IP-Adresse zugeteilt bekommen. Durch einen weiteren Dienstleister wurde ein Domain-Namen darauf gebunden. Auch ein MX Eintrag gehört dazu. Ähm, der Server steht aber bei "mir" in meinem Netzwerk. Alle sollen jedoch ganz transparent dies durch die Namensauflösung mitgeteilt bekommen.

  • Würde eine normalen Anfrage:
host orgamon.org

orgamon.org has address 217.91.31.84
orgamon.org mail is handled by 10 mx.orgamon.org.

ergeben, ist das in unserem Fall ja Unsinn, ein Routing raus und dann wieder rein ist Stromverschwendung: Der Server steht doch im lokalen Netz um die Ecke! 2. Schritte sind dazu nötig:

neue Zone

  • in /etc/resolv.conf erweitern
zone "orgamon.org." {
 type master;
 file "orgamon.org.zone";
};


neue Zonen-Datei

  • in /var/lib/named eine neue Datei "orgamon.org.zone" erstellen
$TTL    604800
@       IN      SOA     localhost. root.localhost. (
                              4         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      localhost.
orgamon.org.    IN     A       192.168.115.25
*.orgamon.org.  IN     A       192.168.115.25
@       IN      MX     10  mx.orgamon.org.

Ziel erreicht?

host orgamon.org

orgamon.org has address 192.168.115.25
orgamon.org mail is handled by 10 mx.orgamon.org.
  • Gut, jetzt hat er verstanden dass dieser Rechner in meinen Netz steht (quasi lokal)