MikroTik: Comment désactiver (activer) l’interface selon un calendrier

Nous analyserons plusieurs façons de désactiver (activer) l’interface réseau MikroTik ou de désactiver Internet, selon un calendrier: règle de pare-feu, NAT, planificateur de tâches MikroTik ou script MikroTik.

Contenu

  1. Règle de pare-feu: comment désactiver (activer) une interface selon un calendrier
  2. NAT: comment autoriser (refuser) Internet selon un calendrier
  3. Sheduler: désactiver (activer) l’interface selon un calendrier
  4. Script MikroTik: comment désactiver (activer) l’interface

Règle de pare-feu: comment désactiver (activer) une interface selon un calendrier

Pour désactiver ou désactiver l’interface selon une planification, vous pouvez utiliser le paramètre de règle de Firewall dans l’onglet Extra.

⚠️ Pour que la règle fonctionne, l’interface doit être l’interface principale (main).

Par exemple: nous limiterons le fonctionnement de l’interface WiFi (wlan2-5GHz) pendant les heures creuses, de 19:00 à 07:00.

Créez une règle:

[IP] -> [Firewall] -> [Filter Rules] -> [+] -> [General: Chain=forward, In. interface=wlan2-5GHz; Extra: Time=19:00:00-07:00:00; Comment="Blocking traffic on the interface, according to the schedule."]

dans le terminal:

/ip firewall filter add action=reject chain=forward in-interface=wlan2-5GHz reject-with=icmp-network-unreachable time=9h-7h,sun,mon,tue,wed,thu,fri,sat comment="Blocking traffic on the interface, according to the schedule."

If you want to disable the operation of the interface on Saturday and Sunday (full day), set the time values:

[IP] -> [Firewall] -> [Filter Rules] -> [+] -> [General: Chain=forward, In. interface=wlan2-5GHz; Extra: Time=00:00:00-1d 00:00:00, Days=sun, sat; Comment="Blocking traffic on the interface, according to the schedule."]

dans le terminal:

/ip firewall filter add action=drop chain=forward in-interface=wlan2-5GHz time=0s-1d,sun,sat comment="Blocking traffic on the interface, according to the schedule."
MikroTik: Comment désactiver (activer) l'interface selon un calendrier

NAT: comment autoriser (refuser) Internet selon un calendrier

Vous pouvez refuser (ou autoriser) l’accès à Internet par heure à l’aide d’un paramètre de règle de masquage (NAT).

Modifiez la règle de mascarade, sous l’onglet Extra:

[IP] -> [Firewall] -> [NAT] -> [Extra: Time=19:00:00-07:00:00, Days: mon,tue,wed,thu,fri; Comment="Rule runs on schedule."]

dans le terminal:

/ip firewall nat add action=masquerade chain=srcnat out-interface-list=ExternalInterfaces time=8h-20h,mon,tue,wed,thu,fri comment="Rule runs on schedule."
NAT: Comment autoriser (refuser) Internet selon un calendrier

Sheduler: désactiver (activer) l’interface selon un calendrier

Désactivez l’interface WiFi wlan2-5GHz après 20:00:00 à l’aide de MikroTik Scheduler:

[System] -> [Schedule] -> [+] -> [Name: "Interface: Disable WiFi"; Start Time: 20:00:00; Interval: 1d 00:00:00; Policy: read, write, policy, test; text: "[/interface set wlan2-5GHz disabled=yes]"; Comment: Disable the interface at the specified time]

dans le terminal:

/system scheduler add name="Interface: Disable WiFi" start-date=feb/22/2021 start-time=20:00:00 interval=1d on-event="[/interface set wlan2-5GHz disabled=yes]" policy=read,write,policy,test comment="Disable the interface at the specified time"

Activez l’interface WiFi wlan2-5GHz à partir de 08:00:00 en utilisant MikroTik Scheduler:

[System] -> [Schedule] -> [+] -> [Name: "Interface: Enable WiFi"; Start Time: 20:00:00; Interval: 1d 00:00:00; Policy: read, write, policy, test; text: "[/interface set wlan2-5GHz disabled=no]"; Comment: Disable the interface at the specified time]

dans le terminal:

/system scheduler add name="Interface: Enable WiFi" start-date=feb/22/2021 start-time=08:00:00 interval=1d on-event="[/interface set wlan2-5GHz disabled=no]" policy=read,write,policy,test comment="Enable the interface at the specified time"
MikroTik Scheduler: désactiver (activer) l'interface par heure

Script MikroTik: comment désactiver (activer) l’interface

Vous pouvez également désactiver (ou activer) l’interface à l’aide du script MikroTik et du planificateur de tâches.

Créer un script

Spécifiez les variables suivantes dans le script:

  1. InterfaceName – nom de l’interface (dans l’exemple wlan2-5GHz);
  2. StartEnableTime – heure à partir de laquelle l’interface doit être activée (dans l’exemple 08:00:00);
  3. EndEnableTime – heure, après laquelle l’interface doit être désactivée (dans l’exemple 20:00:00).
[System] -> [Scripts] -> [+] -> [Name: WorkTimeInterface] -> [Policy: read, write, test, policy]

Script code:

# Name: WorkTimeInterface v1
# Description: Enable or disable the selected interface on a schedule.
# Author: Yun Sergey [MHelp.pro] © 2021
# License: GPL-3.0 License
# Description, purpose and questions: https://mhelp.pro/mikrotik-how-to-disable-enable-the-interface-on-a-schedule/
# More scripts Mikrotik: https://mhelp.pro/tag/mikrotik-scripts/
# Verified: RouterBOARD 952Ui-5ac2nD, RouterOS 6.48.1 (stable)

:local InterfaceName wlan2-5GHz;
:local StartEnableTime [:totime "08:00:00"];
:local EndEnableTime [:totime "20:00:00"];

:local StatusInterface [/interface get $InterfaceName disabled];
:local CurrenTime [/system clock get time];

#:log info "Script WorkTimeInterface running. Interface $InterfaceName disabled: $StatusInterface.";

:if ( $StartEnableTime < $CurrenTime and $CurrenTime < $EndEnableTime) do={
    #:log info "Script WorkTimeInterface: work time.";
    :if  ($StatusInterface) do={
        [/interface set $InterfaceName disabled=no];
        :log info "Script WorkTimeInterface: interface $InterfaceName was disabled, enabled the interface.";
    } else={
        #:log info "Script WorkTimeInterface: skip enable interface, $InterfaceName already enabled.";
    };

} else={
    #:log info "Script WorkTimeInterface: not work time";
    :if  (!$StatusInterface) do={
        [/interface set $InterfaceName disabled=yes];
        :log info "Script WorkTimeInterface: interface $InterfaceName was enabled, disabled the interface."
    }
}
#:log info "Script WorkTimeInterface finished. Interface $InterfaceName disabled: $StatusInterface.";

Si le script ne fonctionne pas ou ne fonctionne pas correctement, supprimez les commentaires des lignes :log (supprimez le symbole # devant le début de la ligne) et vérifiez le journal MikroTik au démarrage du script.

Ajouter un script au Scheduler

Pour exécuter le script, vous avez besoin d’une autorisation: read, write, test, policy.

[System] -> [Schedule] -> [+] -> [Name: "Interface: Enable/Disable WiFi"; Start Time: 00:00:50; Interval: 00:15:00; Policy: read, write, policy, test; text: "[/system script run WorkTimeInterface]"; Comment: "Run script Enable/Disable interface"]
MikroTik Script: Comment désactiver (activer) l'interface

? Comment désactiver (activer) l’interface MikroTik selon un calendrier ou autoriser (refuser) l’accès à Internet à temps a été discuté dans cet article. J’espère que vous avez choisi une manière appropriée de gérer l’état de l’interface. Cependant, si vous rencontrez des problèmes lors de la configuration, n’hésitez pas à écrire dans les commentaires. J’essaierai d’aider.

Le script est vérifié: hAP ac lite [RouterBOARD 952Ui-5ac2nD], RouterOS 6.48.1 (stable).

Laisser un commentaire