mirror of
https://github.com/eworm-de/routeros-scripts.git
synced 2024-05-11 05:55:19 +00:00
collect-wireless-mac: always select first lease from dhcp-server
The script fails at setting the hostname when there are multiple leases for a mac address. In line 36 and 37 the hostname gets set from the data the lease. When there is more than one lease for a specific mac address this fails with the message "invalid internal item number". More than one lease for a mac address is possible, if you have more than one SSID on a capsman and a single device can login into more than one SSID. Fixes #10 Signed-off-by: Christian Hesse <mail@eworm.de>
This commit is contained in:
Daniel Ziegenberg
committed by
Christian Hesse
parent
97ade535d9
commit
ca6668950b
@ -31,7 +31,7 @@ $ScriptLock "collect-wireless-mac.capsman";
|
||||
:local Address "no dhcp lease";
|
||||
:local DnsName "no dhcp lease";
|
||||
:local HostName "no dhcp lease";
|
||||
:local Lease [ / ip dhcp-server lease find where mac-address=$Mac dynamic=yes status=bound ];
|
||||
:local Lease ([ / ip dhcp-server lease find where mac-address=$Mac dynamic=yes status=bound ]->0);
|
||||
:if ([ :len $Lease ] > 0) do={
|
||||
:set Address [ / ip dhcp-server lease get $Lease address ];
|
||||
:set HostName [ / ip dhcp-server lease get $Lease host-name ];
|
||||
|
@ -31,7 +31,7 @@ $ScriptLock "collect-wireless-mac.local";
|
||||
:local Address "no dhcp lease";
|
||||
:local DnsName "no dhcp lease";
|
||||
:local HostName "no dhcp lease";
|
||||
:local Lease [ / ip dhcp-server lease find where mac-address=$Mac dynamic=yes status=bound ];
|
||||
:local Lease ([ / ip dhcp-server lease find where mac-address=$Mac dynamic=yes status=bound ]->0);
|
||||
:if ([ :len $Lease ] > 0) do={
|
||||
:set Address [ / ip dhcp-server lease get $Lease address ];
|
||||
:set HostName [ / ip dhcp-server lease get $Lease host-name ];
|
||||
|
@ -32,7 +32,7 @@ $ScriptLock "collect-wireless-mac%TEMPL%";
|
||||
:local Address "no dhcp lease";
|
||||
:local DnsName "no dhcp lease";
|
||||
:local HostName "no dhcp lease";
|
||||
:local Lease [ / ip dhcp-server lease find where mac-address=$Mac dynamic=yes status=bound ];
|
||||
:local Lease ([ / ip dhcp-server lease find where mac-address=$Mac dynamic=yes status=bound ]->0);
|
||||
:if ([ :len $Lease ] > 0) do={
|
||||
:set Address [ / ip dhcp-server lease get $Lease address ];
|
||||
:set HostName [ / ip dhcp-server lease get $Lease host-name ];
|
||||
|
Reference in New Issue
Block a user