Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 01/03/2011, à 15:22

canard-gras

comment nommer une machine ou récupérer son nom avec bind et dhcp

Bonjour,

Voilà le problème. Bénévolement votre, nous disposons d'une salle pour l'initiation à l'informatique et linux avec une dizaine de machines. Un serveur samba, nfs, dhcp et dns a été installé. Jusque là, il n'y a pas de problème et tout fonctionne.

Au moment de l'installation de ubuntu sur chaque machine, un nom différent a été donné, du style pc-tres-joli pc-pas-beau pc-cote-porte pc-fond pc-fenetre etc...

Quand nous allumons les pc, les stations récupèrent une adresse ip dynamique, la passerelle pour aller sur internet.

Mais, d'une machine quelconque, si je veux pinguer pc-tres-joli , naturellement il ne me la trouve pas.

J'aurai voulu que le dns (bind9) marche avec le dhcp, et fasse la chose suivante, avec dhcp :
station pc : "coucou, je veux m'inscrire sur le réseau"
serveur : peux-tu me donner ton adresse mac ?
station pc : oui, voilà FFDFGZHJAJHCJ
serveur : as tu un nom ?
station pc : oui, je m'appelle joli-pc
serveur : bien, je note. je te donne ce numéro ip et tu vas garder ton nom de "joli-pc", cela te va ?
station : merci, bien reçu, c'est ok.

voilà le contenu de dhcpd.conf

ddns-update-style none;
option subnet-mask 255.255.255.0;
option ntp-servers 192.168.1.1;
option domain-name "magnifique.fr";
option domain-name-servers 192.168.1.1;
default-lease-time 600;
max-lease-time 7200;
option netbios-name-servers 192.168.1.1;
authoritative;
log-facility local7;
subnet 192.168.1.0 netmask 255.255.255.0 {
    option routers 192.168.1.100;
   host trestresbeaupc {
        hardware ethernet 00:18:4d:8D:fe:A6;
        fixed-address 192.168.1.2;
    option host-name "trestresbeaupc";
    }
  range 192.168.1.40 192.168.1.41;
  range 192.168.1.140 192.168.1.141; }

Si quelqu'un a une idée ?

Dernière modification par canard-gras (Le 01/03/2011, à 23:38)


Bravo à Linux, les logiciels libres et Ubuntu !
PS : Ne pas oublier de poster ses expériences pour aider les autres.

Hors ligne

#2 Le 01/03/2011, à 16:49

jrev

Re : comment nommer une machine ou récupérer son nom avec bind et dhcp

Il suffit de donner des IP fixes à tous les ordinateurs enregistrés dans le modem routeur ADSLpour pouvoir pinger un PC à partir d'un autre


Mal nommer les choses, c'est ajouter au malheur du monde

Hors ligne

#3 Le 01/03/2011, à 18:58

canard-gras

Re : comment nommer une machine ou récupérer son nom avec bind et dhcp

Merci et mais ce n'est pas cela mon problème.

Dans un premier temps, à la lecture du fichier dhcpd.conf vous avez surement compris que ce n'est pas le modem routeur adsl qui fait office de serveur de dhcp. Ensuite, ce n'est pas parce que l'on utlise le modem routeur en tant que serveur dhcp, et que l'on met en adresse fixe selon l'adresse mac que l'on peut pinguer la machine avec son nom.

Je le dis autrement :
sur la machine qui s'appelle pc-tres-joli (je le sais en tapant dans une console hostname, et il me renvoie pc-tres-joli smile ) le serveur dhcp lui donne une adresse ip 192.168.1.51 par exemple.

Effectivement, d'une autre machine, si je pingue 192.168.1.51 elle répond
mais si je ping pc-tres-joli il n'y a rien. Et je peux pinguer avec pc-tres-joli (pourquoi ? parce que c'est plus joli big_smile )

Le problème est donc de faire marcher le serveur bind et dhcp ensemble. Et bind doit accepter les données de dhcp. Avant cela, si j'en crois un lien que l'on m'a refilé http://leroy-dubois.name/index.php/arti … t-dns.html
il faut d'abord dire au client de donner quelques infos au serveur.

voilà maintenant mon name.conf.local

controls {
inet 127.0.0.1 allow {localhost;} keys {"rndc-key";};
};
include "/etc/bind/rndc.key";
zone "opengaix.fr" {
    type master;
    file "/etc/bind/db.opengaix.fr";
    allow-update {key "rndc-key";};
    notify no;
};
zone "1.168.192.in-addr.arpa" {
    type master;
    file "/etc/bind/db.192";
    allow-update {key "rndc-key";};
    notify no;
};

et le dhcpd.conf (un extrait uniquement)
include "/etc/bind/rndc.key";
ddns-updates on;
ddns-update-style interim;
ddns-domainname "opengaix.fr.";
ddns-rev-domainname "1.168.192.in-addr.arpa.";
#ignore client-updates;
zone opengaix.fr. {primary 127.0.0.1;key rndc-key;}
zone 1.168.192.in-addr.arpa. {primary 127.0.0.1;key rndc-key;}
## Masque de sous-réseau
option subnet-mask 255.255.255.0;
## serveur ntp
option ntp-servers 192.168.1.1;
# option definitions common to all supported networks...
option domain-name "opengaix.fr";
# a remplacer par l ip de votre serveur dns ou par celle de votre fai
option domain-name-servers 192.168.1.1;
default-lease-time 600;
max-lease-time 7200;
option netbios-name-servers 192.168.1.1;

mais cela ne marche toujours pas :
/etc/init.d/dhcp3-server restart
dhcpd self-test failed. Please fix the config file. The error was: Internet Systems Consortium DHCP Server V3.1.3
Copyright 2004-2009 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/
Can't open /etc/bind/rndc.key: Permission denied

J'ai naturellement tenté de voir en donnant tous les droits sur /etc/bind/rndc.key avec chmod 0777  mais rien n'y fait.
ce qui m'agace, c'est le stickybit que je ne peux enlever à des fins de test exclusivement.
drwxrwsrwx 2 bind bind    4096 2011-03-01 17:10 bind


Bravo à Linux, les logiciels libres et Ubuntu !
PS : Ne pas oublier de poster ses expériences pour aider les autres.

Hors ligne

#4 Le 01/03/2011, à 19:09

canard-gras

Re : comment nommer une machine ou récupérer son nom avec bind et dhcp

J'avance un peu

Si je mets dans le dhcpd.conf le contenu de etc/bind/rndc.key et que j'enlève le include
#include "/etc/bind/rndc.key";
key "rndc-key" {
    algorithm hmac-md5;
    secret "XXXXXXXXX";
};

je n'ai plus le message d'erreur
/etc/init.d/dhcp3-server restart
* Stopping DHCP server dhcpd3                                                                                                                                      [fail]
* Starting DHCP server dhcpd3                                                                                                                                      [ OK ]

mais le bind ne prend quand même pas les noms des machines, la preuve en-dessous
tail -n 20 /var/log/syslog
dhcpd: DHCPDISCOVER from 00:03:0d:26:74:60 via eth0
dhcpd: DHCPOFFER on 192.168.1.19 to 00:03:0d:26:74:60 via eth0
dhcpd: DHCPREQUEST for 192.168.1.19 (192.168.1.1) from 00:03:0d:26:74:60 via eth0
dhcpd: DHCPACK on 192.168.1.19 to 00:03:0d:26:74:60 via eth0

une idée ?


Bravo à Linux, les logiciels libres et Ubuntu !
PS : Ne pas oublier de poster ses expériences pour aider les autres.

Hors ligne

#5 Le 01/03/2011, à 23:36

canard-gras

Re : comment nommer une machine ou récupérer son nom avec bind et dhcp

Un petit up

J'ai compris qu'il aurait été plus simple d'utiliser dnmasq qui fait le couplage dns dhcp
http://doc.ubuntu-fr.org/configuration_serveur_dns_dhcp
mais j'ai un serveur de mail avec postfix, courier-imap. Je ne suis pas rassuré de tout changer !

Je crois que j'aurai peut être dû utiliser une debian ?

Quoi qu'il en soit, voilà le dernier message de la config lorsque je demande à une machine de solliciter dhcp. Le noyau s'en mêle !

tail /var/log/messages
Mar  1 21:55:37 srv dhcpd: Internet Systems Consortium DHCP Server V3.1.3
Mar  1 21:55:37 srv dhcpd: Copyright 2004-2009 Internet Systems Consortium.
Mar  1 21:55:37 srv dhcpd: All rights reserved.
Mar  1 21:55:37 srv dhcpd: For info, please visit https://www.isc.org/software/dhcp/
Mar  1 21:55:37 srv dhcpd: Wrote 0 deleted host decls to leases file.
Mar  1 21:55:37 srv dhcpd: Wrote 0 new dynamic host decls to leases file.
Mar  1 21:55:37 srv dhcpd: Wrote 4 leases to leases file.
Mar  1 21:56:28 srv dhcpd: DHCPREQUEST for 192.168.1.20 from e0:cb:4e:9b:ef:f5 via eth0
Mar  1 21:56:28 srv dhcpd: DHCPACK on 192.168.1.20 to e0:cb:4e:9b:ef:f5 via eth0
Mar  1 21:56:28 srv kernel: [15506.318403] type=1503 audit(1299012988.421:57):  operation="mknod" pid=3306 parent=1 profile="/usr/sbin/named" requested_mask="c::" denied_mask="c::" fsuid=105 ouid=105 name="/etc/bind/db.192.jnl"


Il semble que cela ne veut pas mettre à jour le fichier.  help !!!!

Dernière modification par canard-gras (Le 01/03/2011, à 23:40)


Bravo à Linux, les logiciels libres et Ubuntu !
PS : Ne pas oublier de poster ses expériences pour aider les autres.

Hors ligne

#6 Le 01/03/2011, à 23:56

canard-gras

Re : comment nommer une machine ou récupérer son nom avec bind et dhcp

Bon, j'ai résolu mon message d'erreur en faisant un
chown -R bind:bind /etc/bind

mais il ne prend toujours pas les noms hostname des machines du réseau
root@toto:/etc# tail /var/log/messages
Mar  1 22:49:45 toto dhcpd: For info, please visit https://www.isc.org/software/dhcp/
Mar  1 22:49:45 toto dhcpd: Internet Systems Consortium DHCP Server V3.1.3
Mar  1 22:49:45 toto dhcpd: Copyright 2004-2009 Internet Systems Consortium.
Mar  1 22:49:45 toto dhcpd: All rights reserved.
Mar  1 22:49:45 toto dhcpd: For info, please visit https://www.isc.org/software/dhcp/
Mar  1 22:49:45 toto dhcpd: Wrote 0 deleted host decls to leases file.
Mar  1 22:49:45 toto: Wrote 0 new dynamic host decls to leases file.
Mar  1 22:49:45 toto dhcpd: Wrote 4 leases to leases file.
Mar  1 22:50:58 toto dhcpd: DHCPREQUEST for 192.168.1.19 from 00:03:0d:26:74:60 via eth0
Mar  1 22:50:58 toto dhcpd: DHCPACK on 192.168.1.19 to 00:03:0d:26:74:60 via eth0
root@toto:/etc#


Bravo à Linux, les logiciels libres et Ubuntu !
PS : Ne pas oublier de poster ses expériences pour aider les autres.

Hors ligne

#7 Le 02/03/2011, à 10:43

bilbertrand

Re : comment nommer une machine ou récupérer son nom avec bind et dhcp

Bonjour,

Quelle est la distrib de Linux que tu utilise?
Ton problème sans toutefois être forcement lié à une distrib n'est pas du de ne pas attribuer des @ fixes à tes machines, en principe pour adressage dynamique comme tu l'as constaté il faut que le serveur DHCP mette à jour le DNS à chaque nouvelle attribution d'adresse. Au moment où j'ai resolu mon problème j'ai utilisé le tuto que tu as cité http://doc.ubuntu-fr.org/configuration_serveur_dns_dhcp mais je prefere avoir Bind et vrai serveur dhcp.

Donc ce que tu fais tu t'assure d'avoir une version récente de bind (Bind9) et version de dhcpd (au moins la 3) après tu essayes d'adapter ces config à ton contexte:

dhcpd.conf

# dhcpd.conf ddns-update-style interim;
#Spécifie le type de mise ` a jour du DNS (Il existe
#2 modes de mise ` a jour: le ad-hoc qui est
#maintenant déclaré obsolète et l'intérim que
#nous utilisons
ignore client-updates; #On bloque la mise à jour du DNS directement par
#les clients
log-facility local7;
key "rndc-key" #On déclare une clé pour les transactions entre
{ #DHCP et DNS pour plus de sécurité
algorithm hmac-md5; secret "RcGBoblablablabla"; #Cette clé est générée automatiquement par
#certaines distributions lors de l'installation. };
zone domain.home. { #Nous déclarons ici la zone sur laquelle le DHCP
#pourra demander une mise à jour
}
primary 192.168.0.1; #on spécifie le DNS primaire
key rndc-key;
#et la clé à utiliser pour les transactions
zone 0.168.192.in-addr.arpa. { #La zone de reverse
primary 192.168.0.1;
key rndc-key;
}
#Ici commence la configuration proprement dite du DHCP
subnet 192.168.0.0 netmask 255.255.255.0 { #On déclare notre sous réseau
}
authoritative; #Permet de spécifier que le server est
#"maitre" du sous réseau
range 192.168.0.10 192.168.0.20; #La plage d'adresse à distribuer
option domain-name-servers 192.168.0.1;
#L'adresse du DNS
option domain-name "domain.home";
#Le nom du domaine
option routers 192.168.0.1;
#La passerelle par défaut
option broadcast-address 192.168.0.255; #L'adresse de broadcast
default-lease-time 600; #Le temps des baux par défaut
max-lease-time 7200; #et maximum




named.conf

#named.conf options {
};
directory "/var/bind"; #Le repertoire d' execution de bind
pid-file "/var/run/named/named.pid";
key "rndc-key" {
};
algorithm hmac-md5; secret "RcGBoeTblablabla";
zone "." IN { #Cette zone est définie par défaut, elle #permet la r ´ esolution vers les adresses #internet
};
type hint; file "named.ca"; #Ce fichier est déjà crée par défaut
zone "localhost" IN { #La zone pour résoudre localhost type master;
file "pri/localhost";
allow-update { none; }; #Cette zone n'a pas a être modifiée
notify no;
};
zone "127.in-addr.arpa" IN { #La zone de reverse du localhost
};
type master; file "pri/127"; allow-update { none; }; notify no;
zone "domain.home" #La zone de notre domaine {
type master;
file "pri/domain.home";
allow-update { 192.168.0.1;key rndc-key; }; #On autorise la mise à jour par le serveur #lui même avec la clé};
zone "0.168.192.in-addr.arpa" #La zone de reverse de notre domaine {
type master; file "pri/192.168.0";
allow-update { 192.168.0.1;
key rndc-key; }; };


Après y a des trucs dont pas forcement besoins là dedans mais en principe ça devrait aller.

Hors ligne

#8 Le 02/03/2011, à 10:53

canard-gras

Re : comment nommer une machine ou récupérer son nom avec bind et dhcp

Bonjour Bilbertrand.

Merci pour ta réponse. Je vais lire en détail et naturellement tenter de comprendre ta config. et je teste.

root@toto:/etc/bind# uname -a
Linux toto 2.6.32-28-generic-pae #55-Ubuntu SMP Mon Jan 10 22:34:08 UTC 2011 i686 GNU/Linux

root@toto:/etc/bind# cat /etc/issue
Ubuntu 10.04.2 LTS \n \l

Dernière modification par canard-gras (Le 02/03/2011, à 10:57)


Bravo à Linux, les logiciels libres et Ubuntu !
PS : Ne pas oublier de poster ses expériences pour aider les autres.

Hors ligne

#9 Le 02/03/2011, à 12:19

bilbertrand

Re : comment nommer une machine ou récupérer son nom avec bind et dhcp

Ok ça marche canard-gras.

Hors ligne

#10 Le 02/03/2011, à 12:25

canard-gras

Re : comment nommer une machine ou récupérer son nom avec bind et dhcp

Bon, pas terrible, même pas terrible du tout. Je ne sais plus par quelle façon aborder le problème.

J'ai donc modifié au mieux les fichiers

dhcpd.conf

#include "/etc/bind/rndc.key";
key "rndc-key" {
    algorithm hmac-md5;
    secret "secrettoto";
};
ddns-updates on;
ddns-update-style interim; 
ddns-domainname "opengaix.fr.";
ddns-rev-domainname "1.168.192.in-addr.arpa.";
ignore client-updates; 

et le reste...

le named.conf.option

options {
directory "/var/cache/bind";
forwarders {80.10.246.2;80.10.246.129;};
auth-nxdomain no;    # conform to RFC1035
listen-on-v6 { any; };
};

le named.conf.local

controls {
inet 127.0.0.1 allow {localhost;192.168.1.1;} keys {"rndc-key";};
};
include "/etc/bind/rndc.key";
zone "toto.fr" {
    type master;
    file "/var/cache/bind/db.toto.fr";
    allow-update {192.168.1.1;key "rndc-key";};
    notify no;
};
zone "1.168.192.in-addr.arpa" {
    type master;
    file "/var/cache/bind/db.192";
    allow-update {192.168.1.1;key "rndc-key";};
    notify no;
};

Le named.conf.default-zones

zone "." {
    type hint;
    file "/etc/bind/db.root";
};
zone "localhost" {
    type master;
    file "/etc/bind/db.local";
};
zone "127.in-addr.arpa" {
    type master;
    file "/etc/bind/db.127";
};
zone "0.in-addr.arpa" {
    type master;
    file "/etc/bind/db.0";
};
zone "255.in-addr.arpa" {
    type master;
    file "/etc/bind/db.255";
};

Et toujours rien, pire, je n'ai plus aucun message d'erreur sauf peut être

tail /var/log/kern.log
Mar  2 05:58:49 srv kernel: [44447.613506] type=1503 audit(1299041929.717:79):  operation="mknod" pid=4144 parent=1 profile="/usr/sbin/named" requested_mask="c::" denied_mask="c::" fsuid=105 ouid=105 name="/etc/bind/db.toto.fr.jnl"
Mar  2 07:07:04 srv kernel: [48542.632707] type=1503 audit(1299046024.736:80):  operation="mknod" pid=4145 parent=1 profile="/usr/sbin/named" requested_mask="c::" denied_mask="c::" fsuid=105 ouid=105 name="/etc/bind/db.toto.fr.jnl"
Mar  2 08:08:24 srv kernel: [52222.782140] type=1503 audit(1299049704.885:81):  operation="mknod" pid=4145 parent=1 profile="/usr/sbin/named" requested_mask="c::" denied_mask="c::" fsuid=105 ouid=105 name="/etc/bind/db.toto.fr.jnl"

help !


Bravo à Linux, les logiciels libres et Ubuntu !
PS : Ne pas oublier de poster ses expériences pour aider les autres.

Hors ligne

#11 Le 31/12/2016, à 16:54

mpuech

Re : comment nommer une machine ou récupérer son nom avec bind et dhcp

Bonjour,

Et si tu pingues pc-tres-joli.local ça ne marche pas ?
Il faut juste que avahi-daemon soit lancé, ce qui est le cas par défaut avec Ubuntu 14 ou 16.
Des fois il est lancé mais ça ne marche pas. Il faut le relancer. Pour le 14 "sudo service avahi-daemon restart", pour le 16: "sudo /etc/init.d/avahi-daemon restart".

@+


Ubuntu 23.04 sur mini-tour Amd Ryzen 5 3400G
Ubuntu 22.04 sur barebone Zotac de 2014, i5-4570, vidéo Intel

Hors ligne

#12 Le 31/12/2016, à 17:12

michel_04

Re : comment nommer une machine ou récupérer son nom avec bind et dhcp

Bonjour,

Sur mon PC principal qui accère aux autres PC (en IP fixes) par leur nom, j'ai modifié le fichier /etc/hosts :

127.0.0.1	localhost Michel-E320
127.0.1.1	Michel-E320
192.168.0.40        Michel-SERVER
192.168.0.13        Michel-NANO
192.168.0.12        Michel-XPS

]

A+

Dernière modification par michel_04 (Le 31/12/2016, à 17:13)

Hors ligne