Zone adm.crans.org
darcs-hash:20050514110606-41617-4d13b3e28e0736eccdb5b40e7a2a3234830b04fe.gz
This commit is contained in:
parent
e8c6e4eda3
commit
9b82ccfe75
1 changed files with 5 additions and 40 deletions
|
@ -35,7 +35,7 @@ la base LDAP
|
||||||
|
|
||||||
### Sur quelles zones on a autorité ?
|
### Sur quelles zones on a autorité ?
|
||||||
# Résolution directe
|
# Résolution directe
|
||||||
zones_direct = [ 'crans.org' , 'crans.ens-cachan.fr', 'wifi.crans.org' , 'ferme.crans.org' , 'clubs.ens-cachan.fr' ]
|
zones_direct = [ 'crans.org' , 'crans.ens-cachan.fr', 'wifi.crans.org' , 'ferme.crans.org' , 'clubs.ens-cachan.fr', 'adm.crans.org' ]
|
||||||
# Résolution inverse
|
# Résolution inverse
|
||||||
zones_reverse = [ '138.231.136.0/21', '138.231.148.0/22' ]
|
zones_reverse = [ '138.231.136.0/21', '138.231.148.0/22' ]
|
||||||
|
|
||||||
|
@ -111,8 +111,8 @@ zone "%(NOM_zone)s" {
|
||||||
for zone in zones :
|
for zone in zones :
|
||||||
fd.write(self.zone_template_slave % { 'NOM_zone' : zone,
|
fd.write(self.zone_template_slave % { 'NOM_zone' : zone,
|
||||||
'FICHIER_zone' : self.DNS_DIR + 'db.' + zone })
|
'FICHIER_zone' : self.DNS_DIR + 'db.' + zone })
|
||||||
fd.close()
|
|
||||||
|
|
||||||
|
fd.close()
|
||||||
|
|
||||||
def _gen(self) :
|
def _gen(self) :
|
||||||
### Génération du numéro de série
|
### Génération du numéro de série
|
||||||
|
@ -135,7 +135,6 @@ zone "%(NOM_zone)s" {
|
||||||
|
|
||||||
### Tri des machines
|
### Tri des machines
|
||||||
direct = {} # format : { zone : [ lignes correspondantes] }
|
direct = {} # format : { zone : [ lignes correspondantes] }
|
||||||
direct['ariane'] = "" # Pour Ariane
|
|
||||||
reverse = {}
|
reverse = {}
|
||||||
warnings = ''
|
warnings = ''
|
||||||
|
|
||||||
|
@ -156,9 +155,6 @@ zone "%(NOM_zone)s" {
|
||||||
ligne = "%s\tIN\tA\t%s\n" % ( nom, machine.ip() )
|
ligne = "%s\tIN\tA\t%s\n" % ( nom, machine.ip() )
|
||||||
try : direct[zone] += ligne
|
try : direct[zone] += ligne
|
||||||
except : direct[zone] = ligne
|
except : direct[zone] = ligne
|
||||||
if zone[-9:] == "crans.org":
|
|
||||||
direct['ariane'] += ("%s\tIN\tA\t%s\n" % ((nom + "." + zone)[:-10],
|
|
||||||
machine.ip() )).encode('iso-8859-15')
|
|
||||||
elif self.verbose :
|
elif self.verbose :
|
||||||
warnings += u'Résolution directe ignorée (mid=%s) : zone non autoritaire (%s)\n' % ( machine.id().encode('iso-8859-1'), zone.encode('iso-8859-1') )
|
warnings += u'Résolution directe ignorée (mid=%s) : zone non autoritaire (%s)\n' % ( machine.id().encode('iso-8859-1'), zone.encode('iso-8859-1') )
|
||||||
|
|
||||||
|
@ -171,10 +167,6 @@ zone "%(NOM_zone)s" {
|
||||||
alias = alias.encode('iso-8859-1')
|
alias = alias.encode('iso-8859-1')
|
||||||
try : direct[alias] += ligne
|
try : direct[alias] += ligne
|
||||||
except : direct[alias] = ligne
|
except : direct[alias] = ligne
|
||||||
if alias == "crans.org":
|
|
||||||
direct['ariane'] += ("@\tIN\tA\t%s\n" % machine.ip()).encode('iso-8859-15')
|
|
||||||
elif alias[-9:] == "crans.org":
|
|
||||||
direct['ariane'] += ("%s\tIN\tA\t%s\n" % (alias[:-10], machine.ip())).encode('iso-8859-15')
|
|
||||||
continue
|
continue
|
||||||
|
|
||||||
# Bon format ?
|
# Bon format ?
|
||||||
|
@ -196,9 +188,6 @@ zone "%(NOM_zone)s" {
|
||||||
ligne = "%s\tIN\tCNAME\t%s.\n" % ( nom, machine.nom() )
|
ligne = "%s\tIN\tCNAME\t%s.\n" % ( nom, machine.nom() )
|
||||||
try : direct[zone] += ligne
|
try : direct[zone] += ligne
|
||||||
except : direct[zone] = ligne
|
except : direct[zone] = ligne
|
||||||
if zone[-9:] == "crans.org":
|
|
||||||
direct['ariane'] += ("%s\tIN\tCNAME\t%s.\n" % ((nom + "." + zone)[:-10],
|
|
||||||
machine.nom() )).encode('iso-8859-15')
|
|
||||||
|
|
||||||
# Le reverse
|
# Le reverse
|
||||||
if AddrInNets(machine.ip(), self.zones_reverse) :
|
if AddrInNets(machine.ip(), self.zones_reverse) :
|
||||||
|
@ -213,27 +202,17 @@ zone "%(NOM_zone)s" {
|
||||||
warnings += u'Résolution inverse ignorée (mid=%s) : ip sur zone non autoritaire (%s)\n' % ( machine.id().encode('iso-8859-1'), machine.ip().encode('iso-8859-1') )
|
warnings += u'Résolution inverse ignorée (mid=%s) : ip sur zone non autoritaire (%s)\n' % ( machine.id().encode('iso-8859-1'), machine.ip().encode('iso-8859-1') )
|
||||||
|
|
||||||
### Ajouts pour les fichiers de résolution directs
|
### Ajouts pour les fichiers de résolution directs
|
||||||
for zone in filter(lambda x: x != 'ariane', direct.keys()) :
|
for zone in direct.keys() :
|
||||||
# MXs
|
# MXs
|
||||||
direct[zone] = MX % { 'zone' : zone } + direct[zone]
|
direct[zone] = MX % { 'zone' : zone } + direct[zone]
|
||||||
if zone[-9:] == "crans.org":
|
|
||||||
direct['ariane'] = MX % { 'zone' : zone } + direct['ariane']
|
|
||||||
|
|
||||||
### Ecriture des fichiers de zone et préparation du fichier de définition
|
### Ecriture des fichiers de zone et préparation du fichier de définition
|
||||||
f = ''
|
f = ''
|
||||||
for zone, lignes in direct.items() + reverse.items() :
|
for zone, lignes in direct.items() + reverse.items() :
|
||||||
if zone == 'ariane':
|
|
||||||
continue
|
|
||||||
file = self.DNS_DIR + 'db.' + zone
|
file = self.DNS_DIR + 'db.' + zone
|
||||||
fd = self._open_conf(file,';')
|
fd = self._open_conf(file,';')
|
||||||
if zone != 'ariane':
|
|
||||||
fd.write(self.zone_entete % \
|
fd.write(self.zone_entete % \
|
||||||
{ 'zone' : zone, 'serveur_autoritaire' : self.DNSs[0] ,
|
{ 'zone' : zone, 'serveur_autoritaire' : self.DNSs[0] , 'serial' : serial } )
|
||||||
'serial' : serial } )
|
|
||||||
else:
|
|
||||||
fd.write(self.zone_entete % \
|
|
||||||
{ 'zone' : 'crans.org', 'serveur_autoritaire' : self.DNSs[0] ,
|
|
||||||
'serial' : serial } )
|
|
||||||
fd.write('\n')
|
fd.write('\n')
|
||||||
fd.write(DNS)
|
fd.write(DNS)
|
||||||
fd.write(lignes)
|
fd.write(lignes)
|
||||||
|
@ -245,20 +224,6 @@ zone "%(NOM_zone)s" {
|
||||||
fd.write(f)
|
fd.write(f)
|
||||||
fd.close()
|
fd.close()
|
||||||
|
|
||||||
# Pour ariane
|
|
||||||
fd = self._open_conf("%s.ariane" % self.DNS_CONF, '//')
|
|
||||||
for zone in filter(lambda x: x!= 'ariane', direct):
|
|
||||||
if zone == "crans.org":
|
|
||||||
fd.write(self.zone_template % { 'NOM_zone' : zone,
|
|
||||||
'FICHIER_zone' : self.DNS_DIR + 'db.ariane' })
|
|
||||||
elif zone[-9:] != "crans.org":
|
|
||||||
fd.write(self.zone_template % { 'NOM_zone' : zone,
|
|
||||||
'FICHIER_zone' : self.DNS_DIR + 'db.' + zone })
|
|
||||||
for zone in reverse :
|
|
||||||
fd.write(self.zone_template % { 'NOM_zone' : zone,
|
|
||||||
'FICHIER_zone' : self.DNS_DIR + 'db.' + zone })
|
|
||||||
fd.close()
|
|
||||||
|
|
||||||
return warnings
|
return warnings
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue