Questo forum fa uso dei cookie
Questo forum utilizza i cookie per memorizzare i dettagli del tuo login o della tua ultima visita. I cookie sono piccoli files di testo salvati nel computer; i cookie da noi utilizzati sono relativi unicamente ai servizi da noi forniti direttamente o dai banner pubblicitari. I cookie su questo forum salvano inoltre i dettagli relativi alle discussioni lette e alle tue preferenze personali. Sei pregato di selezionare il tasto OKAY se sei consapevole della presenza di questi files e ci autorizzi ad utilizarli per le informazioni specificate.

Indipendentemente dalla tua scelta un cookie verrà salvato per memorizzare nel tuo pc la risposta a questo form. Puoi modificare le impostazioni relative ai cookie nelle preferenze del tuo browser.

  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
[Mikrotik] Add Static DHCP Leases to ARP List

#1
Information 
This script will update the ARP List with all static, enabled leases. It makes the changes in place (i.e. it doesn't delete all the ARP entries first) to minimize disruptions. Limitation of the script is that the interface for the ARP entry needs to be hardcoded for now. 
Codice:
:local wanInterfaceName "ether1_wan";


Codice:
# Remove ARP entries that do not have static DHCP leases or are disabled


Codice:
:foreach arpId in=[/ip arp find] do={


Codice:
#Don't remove the dynamic entry on the WAN side

Codice:
 :if ([/ip arp get $arpId interface] != $wanInterfaceName) do={



Codice:
#If there is no matching entry in the lease table remove it

Codice:
   :local mac [/ip arp get $arpId mac-address];

Codice:
   :local leaseId [/ip dhcp-server lease find where mac-address=$mac];

Codice:
   :if ($leaseId="") do={

Codice:
     /ip arp remove $arpId;

Codice:
     :log info ("Removing old ARP entry");


Codice:
     } else={


Codice:
       :if ([/ip dhcp-server lease get $leaseId disabled]) do={

Codice:
        /ip arp remove $arpId;log info ("Removing disabled ARP entry");



Codice:
       }

Codice:
      }

Codice:
   }

Codice:
 }


Codice:
:foreach leaseId in=[/ip dhcp-server lease find where !dynamic] do={

Codice:
 :local mac  [/ip dhcp-server lease get $leaseId mac-address];

Codice:
 :local arpId [/ip arp find where mac-address=$mac];


Codice:
 :if ($arpId="" && ![/ip dhcp-server lease get $leaseId disabled]) do={

Codice:
   :local ip [/ip dhcp-server lease get $leaseId address];

Codice:
   :local comment  [/ip dhcp-server lease get $leaseId comment];

Codice:
#interface should not be hard coded but couldn't figure out what to do

Codice:
   :local interface lan_wlan_bridge;

Codice:
   /ip arp add address= $ip mac-address= $mac comment= $comment interface= $interface;

Codice:
  :log info ("Adding new ARP entry");

Cita messaggio


Discussioni simili
Discussione Autore Risposte Letto Ultimo messaggio
Information [Mikrotik] Sync Address List from DNS Lookup Results - CNAME and A Records berryberry 0 1'494 17-06-2015, 11:44
Ultimo messaggio: berryberry
Information [Mikrotik] Sync Address List with DNS Cache berryberry 0 1'928 17-06-2015, 11:42
Ultimo messaggio: berryberry
Information [Mikrotik] Routing via a DHCP allocated gateway berryberry 0 836 11-06-2015, 10:11
Ultimo messaggio: berryberry
Information [Mikrotik] Setting static DNS record for each DHCP lease berryberry 0 953 09-06-2015, 10:51
Ultimo messaggio: berryberry

Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  


Utenti che stanno guardando questa discussione:
1 Ospite(i)


Powered by MyBB, © 2002-2020 MyBB Group.