05-sep: [dhcp] conservar reservas historicas
This commit is contained in:
@@ -102,7 +102,7 @@ La reserva DHCP conserva la IP actual de cada lease y mantiene las reservas prev
|
|||||||
|
|
||||||
## Inventario DHCP actual del ASUS
|
## Inventario DHCP actual del ASUS
|
||||||
|
|
||||||
Reservas aplicadas para los 39 leases actuales. Los nombres marcados como `pendiente-identificar` son provisionales.
|
Reservas aplicadas para los 39 leases actuales y 3 reservas historicas conservadas. Los nombres marcados como `pendiente-identificar` son provisionales.
|
||||||
|
|
||||||
| IP | MAC | Nombre actual |
|
| IP | MAC | Nombre actual |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
|
|||||||
@@ -17,6 +17,13 @@ SSH_BASE = [
|
|||||||
ROUTER,
|
ROUTER,
|
||||||
]
|
]
|
||||||
|
|
||||||
|
# Reservas que ya existian antes de reconstruir la lista desde los leases.
|
||||||
|
LEGACY_RESERVATIONS = {
|
||||||
|
"82:CC:3C:7D:0F:41": "192.168.50.194",
|
||||||
|
"72:2A:0C:FE:5F:04": "192.168.50.158",
|
||||||
|
"E0:1F:FC:A9:DC:73": "192.168.50.107",
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
def _run(command):
|
def _run(command):
|
||||||
try:
|
try:
|
||||||
@@ -69,6 +76,8 @@ def _inventario():
|
|||||||
leases = _run("cat /var/lib/misc/dnsmasq.leases")
|
leases = _run("cat /var/lib/misc/dnsmasq.leases")
|
||||||
reservas = _reservas_actuales(_run("nvram get dhcp_staticlist"))
|
reservas = _reservas_actuales(_run("nvram get dhcp_staticlist"))
|
||||||
by_mac = {mac.upper(): ip for mac, ip in reservas}
|
by_mac = {mac.upper(): ip for mac, ip in reservas}
|
||||||
|
for mac, ip in LEGACY_RESERVATIONS.items():
|
||||||
|
by_mac.setdefault(mac, ip)
|
||||||
devices = []
|
devices = []
|
||||||
for line in leases.splitlines():
|
for line in leases.splitlines():
|
||||||
fields = line.split()
|
fields = line.split()
|
||||||
|
|||||||
Reference in New Issue
Block a user