%s/mid/rig/g
Parce que j'avais oublié.
This commit is contained in:
parent
5a1a445411
commit
fcafdbff28
1 changed files with 19 additions and 19 deletions
|
@ -34,48 +34,48 @@ sys.path.append('/usr/scripts/gestion')
|
|||
import config
|
||||
from unicodedata import normalize
|
||||
|
||||
def ip4_of_mid(mid):
|
||||
"""Convertit un mid en son IP associée"""
|
||||
for net, plage in config.mid.items():
|
||||
if mid >= plage[0] and mid <= plage[1]:
|
||||
def ip4_of_rid(rid):
|
||||
"""Convertit un rid en son IP associée"""
|
||||
for net, plage in config.rid.items():
|
||||
if rid >= plage[0] and rid <= plage[1]:
|
||||
break
|
||||
else:
|
||||
raise ValueError("Mid dans aucune plage: %d" % mid)
|
||||
raise ValueError("Rid dans aucune plage: %d" % rid)
|
||||
|
||||
if net == 'special':
|
||||
try:
|
||||
return netaddr.IPAddress(config.mid_machines_speciales[mid])
|
||||
return netaddr.IPAddress(config.rid_machines_speciales[rid])
|
||||
except KeyError:
|
||||
return ValueError(u"Machine speciale inconnue: %d" % mid)
|
||||
return ValueError(u"Machine speciale inconnue: %d" % rid)
|
||||
|
||||
return netaddr.IPAddress(netaddr.IPNetwork(config.NETs[net][0]).first + mid - plage[0])
|
||||
return netaddr.IPAddress(netaddr.IPNetwork(config.NETs[net][0]).first + rid - plage[0])
|
||||
|
||||
def prefixev6_of_mid(mid):
|
||||
def prefixev6_of_rid(rid):
|
||||
"""
|
||||
L'ip de sous-réseau privé d'une machine. L'adhérent en fait ce qu'il veut, mais c'est la machine
|
||||
associée au mid qui est responsable du traffic.
|
||||
associée au rid qui est responsable du traffic.
|
||||
|
||||
Cette fonction retourne l'ip de début de ce sous-réseau.
|
||||
"""
|
||||
for net, plage in config.mid.items():
|
||||
if mid >= plage[0] and mid <= plage[1]:
|
||||
for net, plage in config.rid.items():
|
||||
if rid >= plage[0] and rid <= plage[1]:
|
||||
break
|
||||
else:
|
||||
raise ValueError("Mid dans aucune plage: %d" % mid)
|
||||
raise ValueError("Rid dans aucune plage: %d" % rid)
|
||||
|
||||
# fil-v6 ou wifi-v6, we don't care
|
||||
return netaddr.IPAddress(netaddr.IPNetwork(config.prefix['fil-v6'][0]).first + 2**64*mid)
|
||||
return netaddr.IPAddress(netaddr.IPNetwork(config.prefix['fil-v6'][0]).first + 2**64*rid)
|
||||
|
||||
def ip6_of_mac(mac, mid):
|
||||
def ip6_of_mac(mac, rid):
|
||||
"""
|
||||
Retourne la bonne ipv6 de la machine en fonction de sa mac et de son mid.
|
||||
Retourne la bonne ipv6 de la machine en fonction de sa mac et de son rid.
|
||||
"""
|
||||
|
||||
for net, plage in config.mid.items():
|
||||
if mid >= plage[0] and mid <= plage[1]:
|
||||
for net, plage in config.rid.items():
|
||||
if rid >= plage[0] and rid <= plage[1]:
|
||||
break
|
||||
else:
|
||||
raise ValueError("Mid dans aucune plage: %d" % mid)
|
||||
raise ValueError("Rid dans aucune plage: %d" % rid)
|
||||
|
||||
print net
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue