diff --git a/docs/raspberry_pi.md b/docs/raspberry_pi.md index 4aa57c7..a9588b0 100644 --- a/docs/raspberry_pi.md +++ b/docs/raspberry_pi.md @@ -102,7 +102,7 @@ La reserva DHCP conserva la IP actual de cada lease y mantiene las reservas prev ## 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 | |---|---|---| diff --git a/vigilancia/router_control.py b/vigilancia/router_control.py index 5bd0e17..2f7796d 100644 --- a/vigilancia/router_control.py +++ b/vigilancia/router_control.py @@ -17,6 +17,13 @@ SSH_BASE = [ 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): try: @@ -69,6 +76,8 @@ def _inventario(): leases = _run("cat /var/lib/misc/dnsmasq.leases") reservas = _reservas_actuales(_run("nvram get dhcp_staticlist")) by_mac = {mac.upper(): ip for mac, ip in reservas} + for mac, ip in LEGACY_RESERVATIONS.items(): + by_mac.setdefault(mac, ip) devices = [] for line in leases.splitlines(): fields = line.split()