MikroTik-Skripte: Benachrichtigung, wenn sich die externe IP-Adresse des Routers ändert

Benachrichtigung, wenn sich die externe IP-Adresse des MikroTik-Routers ändert. Senden einer Nachricht an E-Mail oder Telegram.

Das Skript erstellt eine globale Variable CurrentIP, um die aktuelle externe IP-Adresse des MikroTik-Routers zu speichern.

Das Skript verwendet die API des Dienstes ipify.org, um eine externe IP-Adresse abzurufen.

Verwenden Sie die folgende Funktion, um eine E-Mail-Nachricht zu senden: MikroTik-Skripte: Senden von benachrichtigungen und daten an E-mails (funktion)

Um eine Telegram Nachricht zu senden, wird die Funktion verwendet: MikroTik-Skripte: Senden einer Nachricht an Telegram (funktion)

Beispiel einer E-Mail-Benachrichtigung über eine Änderung der externen IP-Adresse
Beispiel einer E-Mail-Benachrichtigung über eine Änderung der externen IP-Adresse

Artikel in anderen Sprachen:
?? – MikroTik Scripts: Notification when the external IP address of the router changes
?? – MikroTik Scripts: notificación cuando cambia la dirección IP externa del enrutador
?? – MikroTik Скрипты: Уведомление при изменении внешнего IP адреса роутера
?? – Scripts MikroTik: Notification lorsque l’adresse IP externe du routeur change
?? – MikroTik-scripts: Melding wanneer het externe IP-adres van de router verandert

Skript erstellen

[System] -> [Scripts] -> [+] -> [Name: CheckChangeExternalAdress] -> [Policy: read, write, policy, test]

Script code

:global CurrentIP;
:local NewIP ([/tool fetch url=http://api.ipify.org/ as-value output=user] -> "data")

:if ($NewIP != $CurrentIP) do={
    # Variables
    :local Time [/system clock get time];
    :local Date [/system clock get date];
    :local DeviceName [/system identity get name];
    :local Text "New IP: $NewIP, Previous IP: $CurrentIP";
    :set CurrentIP $NewIP;

    # START Send Telegram Module
    :local MessageText "\F0\9F\9F\A2 <b>$DeviceName: External IP address has changed.</b> $Text";
    :local SendTelegramMessage [:parse [/system script  get MyTGBotSendMessage source]]; 
    $SendTelegramMessage MessageText=$MessageText;
    #END Send Telegram Module

    # START Send Email Module
    :local SendTo "test@mhelp.pro";
    :local Subject "\F0\9F\9F\A2 INFO: $DeviceName [$Date $Time] External IP address has changed.";
    :local MessageText $Text;
    :local FileName "";
    :local SendEmail [:parse [/system script get SendEmailFunction source]];
    $SendEmail SendTo=$SendTo TextMail=$MessageText Subject=$Subject FileName=$FileName;
    # END Send Email Module
};

Skript zum MikroTik Scheduler hinzufügen

Damit das Skript funktioniert, müssen Sie die folgenden Berechtigungen festlegen: read, write, policy, test.

[System] -> [Schedule] -> [+] -> [Name:CheckChangeExternalAdress] - > [Interval: 00:05:00] -> [Policy: read, write, policy, test]

Script code:

/system script run CheckChangeExternalAdress;
MicroTik Script Notification when the external IP address of the router changes

? Das Mikrotik-Skript „Benachrichtigung über eine Änderung der externen IP-Adresse des Routers“ wurde in diesem Artikel erläutert. Ich hoffe, dass das Ändern der externen IP-Adresse von MikroTik jetzt nicht unerwartet ist. Wenn Sie jedoch beim Stimmen auf Probleme stoßen, können Sie gerne in Stein schreiben. Ich werde versuchen zu helfen.

Das Skript wird überprüft: hAP ac lite [RouterBOARD 952Ui-5ac2nD], RouterOS 6.47.8 (stable).

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert