[switchs] Pas de flow control sur les uplinks, pas de aaa pour les clubs
darcs-hash:20100120215637-ffbb2-d33a8aacb69630061e6e2431deab029f99623679.gz
This commit is contained in:
parent
7dda9b3a84
commit
3a5791cc46
1 changed files with 18 additions and 6 deletions
|
@ -27,6 +27,15 @@ import config
|
||||||
|
|
||||||
from annuaires import bat_switchs
|
from annuaires import bat_switchs
|
||||||
|
|
||||||
|
try:
|
||||||
|
any
|
||||||
|
except NameError:
|
||||||
|
def any(iterable):
|
||||||
|
for item in iterable:
|
||||||
|
if item:
|
||||||
|
return True
|
||||||
|
return False
|
||||||
|
|
||||||
class switch(gen_config) :
|
class switch(gen_config) :
|
||||||
# Répertoire ou écire les fichiers de conf
|
# Répertoire ou écire les fichiers de conf
|
||||||
CONF_REP='/tmp/' # avec un / derrière
|
CONF_REP='/tmp/' # avec un / derrière
|
||||||
|
@ -133,7 +142,7 @@ no stack
|
||||||
interface_template = """interface %(prise)i
|
interface_template = """interface %(prise)i
|
||||||
enable
|
enable
|
||||||
name "%(nom)s"
|
name "%(nom)s"
|
||||||
flow-control%(speed)s
|
%(no_flowcontrol)sflow-control%(speed)s
|
||||||
no lacp
|
no lacp
|
||||||
exit
|
exit
|
||||||
"""
|
"""
|
||||||
|
@ -338,12 +347,13 @@ exit
|
||||||
|
|
||||||
# Conf par défaut : activée, autonégociation
|
# Conf par défaut : activée, autonégociation
|
||||||
prise_params = { 'prise' : prise , 'speed' : '',
|
prise_params = { 'prise' : prise , 'speed' : '',
|
||||||
'etat' : '' }
|
'etat' : '', 'no_flowcontrol': '' }
|
||||||
annu_prise = '%i%02i' % (sw_num, prise) # prise telle que notée dans l'annuaire
|
annu_prise = '%i%02i' % (sw_num, prise) # prise telle que notée dans l'annuaire
|
||||||
|
|
||||||
if uplink_prises[bat].has_key(int(annu_prise)) :
|
if uplink_prises[bat].has_key(int(annu_prise)) :
|
||||||
### Prise d'uplink
|
### Prise d'uplink
|
||||||
prise_params['nom'] = uplink_prises[bat][int(annu_prise)]
|
prise_params['nom'] = uplink_prises[bat][int(annu_prise)]
|
||||||
|
prise_params['no_flowcontrol'] = 'no '
|
||||||
params['uplinks'].append(prise)
|
params['uplinks'].append(prise)
|
||||||
vlans['default'].append(prise)
|
vlans['default'].append(prise)
|
||||||
vlans['adm_tagged'].append(prise)
|
vlans['adm_tagged'].append(prise)
|
||||||
|
@ -403,10 +413,12 @@ exit
|
||||||
# chambres.
|
# chambres.
|
||||||
chbres = prise_chbres.get(annu_prise, [])
|
chbres = prise_chbres.get(annu_prise, [])
|
||||||
|
|
||||||
# "unauth-vid" est le vlan sur lequel sont envoyés les machines
|
# Authentification RADIUS, pas pour les clubs...
|
||||||
# quand l'authentification RADIUS échoue. On met le VLAN 1 pour
|
if not any("cl" in chbre.lower() for chbre in chbres):
|
||||||
# éviter les problèmes quand LDAP se ch@#! dessus sur pegase.
|
# "unauth-vid" est le vlan sur lequel sont envoyés les machines
|
||||||
params['INTERFACES_CONF'] += """aaa port-access mac-based %(prise)s
|
# quand l'authentification RADIUS échoue. On met le VLAN 1 pour
|
||||||
|
# éviter les problèmes quand LDAP se ch@#! dessus sur pegase.
|
||||||
|
params['INTERFACES_CONF'] += """aaa port-access mac-based %(prise)s
|
||||||
aaa port-access mac-based %(prise)s addr-limit %(nbmac)s
|
aaa port-access mac-based %(prise)s addr-limit %(nbmac)s
|
||||||
aaa port-access mac-based %(prise)s logoff-period 3600
|
aaa port-access mac-based %(prise)s logoff-period 3600
|
||||||
aaa port-access mac-based %(prise)s unauth-vid 1
|
aaa port-access mac-based %(prise)s unauth-vid 1
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue