[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
|
||||
|
||||
try:
|
||||
any
|
||||
except NameError:
|
||||
def any(iterable):
|
||||
for item in iterable:
|
||||
if item:
|
||||
return True
|
||||
return False
|
||||
|
||||
class switch(gen_config) :
|
||||
# Répertoire ou écire les fichiers de conf
|
||||
CONF_REP='/tmp/' # avec un / derrière
|
||||
|
@ -133,7 +142,7 @@ no stack
|
|||
interface_template = """interface %(prise)i
|
||||
enable
|
||||
name "%(nom)s"
|
||||
flow-control%(speed)s
|
||||
%(no_flowcontrol)sflow-control%(speed)s
|
||||
no lacp
|
||||
exit
|
||||
"""
|
||||
|
@ -338,12 +347,13 @@ exit
|
|||
|
||||
# Conf par défaut : activée, autonégociation
|
||||
prise_params = { 'prise' : prise , 'speed' : '',
|
||||
'etat' : '' }
|
||||
'etat' : '', 'no_flowcontrol': '' }
|
||||
annu_prise = '%i%02i' % (sw_num, prise) # prise telle que notée dans l'annuaire
|
||||
|
||||
if uplink_prises[bat].has_key(int(annu_prise)) :
|
||||
### Prise d'uplink
|
||||
prise_params['nom'] = uplink_prises[bat][int(annu_prise)]
|
||||
prise_params['no_flowcontrol'] = 'no '
|
||||
params['uplinks'].append(prise)
|
||||
vlans['default'].append(prise)
|
||||
vlans['adm_tagged'].append(prise)
|
||||
|
@ -403,10 +413,12 @@ exit
|
|||
# chambres.
|
||||
chbres = prise_chbres.get(annu_prise, [])
|
||||
|
||||
# "unauth-vid" est le vlan sur lequel sont envoyés les machines
|
||||
# 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
|
||||
# Authentification RADIUS, pas pour les clubs...
|
||||
if not any("cl" in chbre.lower() for chbre in chbres):
|
||||
# "unauth-vid" est le vlan sur lequel sont envoyés les machines
|
||||
# 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 logoff-period 3600
|
||||
aaa port-access mac-based %(prise)s unauth-vid 1
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue