Jump to content

[Résolu] Problème avec named. Lancement


Recommended Posts

Bonjour,

J'ai un peu chercher partout mais je n'ai rien trouvé à propos...

J'ai un petit problème, j'ai mis named en suivant un article de lea http://lea-linux.org/reseau/dns1.html , qui a l'air de marcher...

(Par contre, quand je tape nslookup, je n'ai pas de "Default Server: localhost" mais j'ai :

Server: 127.0.0.1 
Address: 127.0.0.1#53 

quand je demande de résoudre une url et j'ai aussi directement "Non-authoritative answer:" alors que l'adresse n'a jamais été demandé jusqu'à présent... C'est grave ?)

Le problème actuelle, c'est que named démarre tout seul au boot, mais il est incappable de trouvé la moindre IP et bien sur n'accède donc pas aux sites (j'ai pas essayé directement avec l'IP par contre) voilà ce qu'il me dit quand je fait nslookup :

[root@webcenter ~]# nslookup pcinpact.com

;; connection timed out; no servers could be reached

Alors je tape named (sous root, j'ai pas essayé en user) et ça marche !

Voici mes fichiers de conf :

/etc/named.conf

key "key" {
       algorithm       hmac-md5;
       secret "c3Ryb25nIGVub3VnaCBmb3IgYSBtYW4gYnV0IG1hZGUgZm9yIGEgd29tYW4K";
};

controls {
       inet 127.0.0.1 allow { localhost; } keys { "key"; };
};

options {
       directory "/var/named";
       version "SECRET";
};

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

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

/var/named/root

.                        3600000  IN  NS    A.ROOT-SERVERS.NET.
A.ROOT-SERVERS.NET.      3600000      A     198.41.0.4
.                        3600000      NS    B.ROOT-SERVERS.NET.
B.ROOT-SERVERS.NET.      3600000      A     192.228.79.201
.                        3600000      NS    C.ROOT-SERVERS.NET.
C.ROOT-SERVERS.NET.      3600000      A     192.33.4.12
.                        3600000      NS    D.ROOT-SERVERS.NET.
D.ROOT-SERVERS.NET.      3600000      A     128.8.10.90
.                        3600000      NS    E.ROOT-SERVERS.NET.
E.ROOT-SERVERS.NET.      3600000      A     192.203.230.10
.                        3600000      NS    F.ROOT-SERVERS.NET.
F.ROOT-SERVERS.NET.      3600000      A     192.5.5.241
.                        3600000      NS    G.ROOT-SERVERS.NET.
G.ROOT-SERVERS.NET.      3600000      A     192.112.36.4
.                        3600000      NS    H.ROOT-SERVERS.NET.
H.ROOT-SERVERS.NET.      3600000      A     128.63.2.53
.                        3600000      NS    I.ROOT-SERVERS.NET.
I.ROOT-SERVERS.NET.      3600000      A     192.36.148.17
.                        3600000      NS    J.ROOT-SERVERS.NET.
J.ROOT-SERVERS.NET.      3600000      A     192.58.128.30
.                        3600000      NS    K.ROOT-SERVERS.NET.
K.ROOT-SERVERS.NET.      3600000      A     193.0.14.129
.                        3600000      NS    L.ROOT-SERVERS.NET.
L.ROOT-SERVERS.NET.      3600000      A     198.32.64.12
.                        3600000      NS    M.ROOT-SERVERS.NET.
M.ROOT-SERVERS.NET.      3600000      A     202.12.27.33

/var/named/zone/127.0.0

$TTL 3D
@       IN      SOA     localhost.root.localhost.  (
                       1              ; Serial
                       28800          ; Refresh
                       6400          ; Retry
                       604800        ; Expire
                       86400)        ; Minimum TTL
               NS      localhost.root.localhost.
1               PTR     localhost.

Named est lancé par init.d et je suis sous Mandrake 10.1 Community !

D'où ça peut venir et comment résoudre le problème ?

Merci par avance.

Edit :

Voici donc la solution à mon problème :

J'obtenais ce message d'erreur (du kernel) au démarrage :

Mar 7 12:18:27 webcenter named[3186]: couldn't open pid file '/var/run/named.pid': Permission denied

Mar 7 12:18:27 webcenter named[3186]: exiting (due to early fatal error)

Il suffit donc tout simplement de rajouter

pid-file "/var/run/named/named.pid"

Dans la partie option du fichier named.conf !

Link to comment
Share on other sites

bon j'ai lu en diagonal (désolé j'ai les yeux pas trop ouverts, rentré de boite à 7h ...)

mais IMHO il te manque un forwarder, c'est à dire un dns à interroager autre que les ROOT dns. Pointe déjà sur celui de ton ISP ...

Link to comment
Share on other sites

Ecrit le 06-03-2005 20:14:10

Euh comment je les marques aussi et où stp ?

(Je débute hein. :chinois:)

Je précise qu'une fois relancer, il marche très bien !

Enfin relancer... En tout cas, au boot il me dit named [ OK ] mais comment voir si il ne s'est pas fermer ensuite ?

---

Ecrit le 07-03-2005 13:47:21 :

Bon... Au boot, il me mets [ OK ] mais quand je tape ensuite

ps -A | grep named

, il ne me trouve rien donc apparemment, il s'ouvre mais se referme ?! Pourtant quand je lance drakxservices, il me dit que named est actif !

Link to comment
Share on other sites

Encore du nouveau !

J'ai regardé le log du kernel et Oh ! stupeur, j'ai une erreur...

Mar  7 12:18:26 webcenter named[3186]: starting BIND 9.3.0rc4 -u named

Mar  7 12:18:26 webcenter named[3186]: found 1 CPU, using 1 worker thread

Mar  7 12:18:26 webcenter named: Démarrage de named succeeded

Mar  7 12:18:27 webcenter named[3186]: loading configuration from '/etc/named.conf'

Mar  7 12:18:27 webcenter named[3186]: listening on IPv4 interface lo, 127.0.0.1#53

Mar  7 12:18:27 webcenter named[3186]: listening on IPv4 interface eth0, 192.168.0.21#53

Mar  7 12:18:27 webcenter named[3186]: command channel listening on 127.0.0.1#953

Mar  7 12:18:27 webcenter named[3186]: couldn't open pid file '/var/run/named.pid': Permission denied

Mar  7 12:18:27 webcenter named[3186]: exiting (due to early fatal error)

Donc apparemment c'est /var/run/named.pid le fautif... Un problème de chmod ?

Link to comment
Share on other sites

Cool tu es sur la bonne piste du gars qui fouille dans les logs pour trouver des réponses à ses questions :)

vérifie que le fichier existe, si oui -> rm

ensuite il faut voir avec quels droits tu lance le programme ... si c'est pas root, il faudra donner les droits en écriture sur le répertoire, ce qui peut être casse-gueule ;:)

Link to comment
Share on other sites

c'est même sûrement pas root!!!

lancer un DNS en root, pas super sécure, ça, non?

vérifie bien les droits en écriture dans /var/run/ pour le groupe auquel apartient named. sinon, ajoute le au groupe proprio de ce rep (sauf si c'est root!) ou bien creer un groupe spécialement pour ça et ajoute y tous ceux qui ont besoin d'écrire dedans (devrais pas y en avoir beaucoup, c'est souvent root qui écrit la dedans).

sinon, solution ultime : named en chrooter, comme ça il n'emmerde personne, et en plus il est mieux protegé :francais:

Link to comment
Share on other sites

Ah, tu lances named sous un user simple (c'est bien). J'ai fait ça récemment, et la solution la plus simple à mon sens est de créer un répertoire dans /var/run, genre /var/run/named, de le donner à ton user, et de dire à named de mettre son pid dedans (directive pid-file "/var/run/named/named.pid"; dans named.conf)

Link to comment
Share on other sites

Tout d'abord, merci de votre aide ! :fumer::rhooo::transpi:

@Sandeman, non, le fichier n'existe pas !

Après, je ne sais malheureusement pas comment avec quel(s) droits se lance le programme, tout ce que je sais, c'est que c'est avec init.d !

Dans /var/run, j'ai un repertoire named, voici ce que me donne ls -l :

drwxr-xr-x  2 named named 4096 mar  1 15:27 named/

@lorinc, tu dis que lancer le programme en root, c'est pas très sécure ?

Alors avoir ça :

localhost.root.localhost.

dans /zone/127.0.0, c'est sécure ou pas ?

Ca veut dire quoi chrooter ;) (pas taper, je débute :yes:) ?

@Gauret, bah je ne sais pas à quel user précis le donner le problème. ;(

Encore merci.

Link to comment
Share on other sites

options {

        directory "/var/cache/bind";

        // If there is a firewall between you and nameservers you want

        // to talk to, you might need to uncomment the query-source

        // directive below.  Previous versions of BIND always asked

        // questions using port 53, but BIND 8.1 and later use an unprivilege

d

        // port by default.

        // query-source address * port 53;

        query-source address * port 53;

        // If your ISP provided one or more IP addresses for stable

        // nameservers, you probably want to use them as forwarders.

        // Uncomment the following block, and insert the addresses replacing

        // the all-0's placeholder.

        forwarders {

                80.118.192.100;

                80.118.196.36;

        };

        // forwarders {

        //      0.0.0.0;

        // };

        auth-nxdomain no;    # conform to RFC1035

};

voila mon fichier de config des options de named

il fat juste mettre les forwardersb ( ici dns de 9 online )

Link to comment
Share on other sites

Autre que ton problème au démarrage avec named qui ne veut pas s'exécuter à cause d'une permission sur le pid (qui peut être contourné temporairement en tapant la commande qui l'exécute dans /etc/rc.d/rc.local), les liens ci-dessous peuvent t'aider à configurer ton deamon. En tout cas c'est de cette manière que j'en suis venu à bout !

http://www.tldp.org/HOWTO/DNS-HOWTO-5.html

http://www.egs-howto.com/fr/systemes/linux..._configurer.php

http://www.lea-linux.org/reseau/dns1.php3

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...