From b6ddc5968e7a3393bb6e9b0c0ccf96379efc62b4 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:42:44 +0200 Subject: README: RouterOS v7 path syntax --- README.d/01-download-certs.avif | Bin 2115 -> 2105 bytes README.d/02-import-certs.avif | Bin 2356 -> 2266 bytes README.d/03-check-certs.avif | Bin 5059 -> 4850 bytes README.d/04-import-scripts.avif | Bin 4599 -> 3782 bytes README.d/05-edit-global-config-overlay.avif | Bin 6600 -> 6602 bytes README.d/06-run-and-schedule-scripts.avif | Bin 2994 -> 1946 bytes README.d/07-schedule-update.avif | Bin 2312 -> 2200 bytes README.d/08-update-scripts.avif | Bin 1917 -> 1733 bytes README.d/09-install-scripts.avif | Bin 2493 -> 2423 bytes README.d/10-schedule-script.avif | Bin 2009 -> 1847 bytes README.d/11-setup-lease-script.avif | Bin 3712 -> 1686 bytes README.d/12-install-custom-script.avif | Bin 2349 -> 2242 bytes README.d/hello-world.rsc | 2 +- README.md | 47 ++++++++++------------------ global-config.changes | 4 +-- 15 files changed, 20 insertions(+), 33 deletions(-) diff --git a/README.d/01-download-certs.avif b/README.d/01-download-certs.avif index 41fa5ca..4da73fa 100644 Binary files a/README.d/01-download-certs.avif and b/README.d/01-download-certs.avif differ diff --git a/README.d/02-import-certs.avif b/README.d/02-import-certs.avif index 09fe586..308be5b 100644 Binary files a/README.d/02-import-certs.avif and b/README.d/02-import-certs.avif differ diff --git a/README.d/03-check-certs.avif b/README.d/03-check-certs.avif index 52c4df8..adf1161 100644 Binary files a/README.d/03-check-certs.avif and b/README.d/03-check-certs.avif differ diff --git a/README.d/04-import-scripts.avif b/README.d/04-import-scripts.avif index c86a5c8..53439e4 100644 Binary files a/README.d/04-import-scripts.avif and b/README.d/04-import-scripts.avif differ diff --git a/README.d/05-edit-global-config-overlay.avif b/README.d/05-edit-global-config-overlay.avif index 8a8a173..e08fde8 100644 Binary files a/README.d/05-edit-global-config-overlay.avif and b/README.d/05-edit-global-config-overlay.avif differ diff --git a/README.d/06-run-and-schedule-scripts.avif b/README.d/06-run-and-schedule-scripts.avif index b59c2cb..37e1173 100644 Binary files a/README.d/06-run-and-schedule-scripts.avif and b/README.d/06-run-and-schedule-scripts.avif differ diff --git a/README.d/07-schedule-update.avif b/README.d/07-schedule-update.avif index cb43b48..7c96f3a 100644 Binary files a/README.d/07-schedule-update.avif and b/README.d/07-schedule-update.avif differ diff --git a/README.d/08-update-scripts.avif b/README.d/08-update-scripts.avif index 434bc84..f549fef 100644 Binary files a/README.d/08-update-scripts.avif and b/README.d/08-update-scripts.avif differ diff --git a/README.d/09-install-scripts.avif b/README.d/09-install-scripts.avif index 467b9e4..00225b1 100644 Binary files a/README.d/09-install-scripts.avif and b/README.d/09-install-scripts.avif differ diff --git a/README.d/10-schedule-script.avif b/README.d/10-schedule-script.avif index 945a7df..27541b7 100644 Binary files a/README.d/10-schedule-script.avif and b/README.d/10-schedule-script.avif differ diff --git a/README.d/11-setup-lease-script.avif b/README.d/11-setup-lease-script.avif index 168481b..365e0e8 100644 Binary files a/README.d/11-setup-lease-script.avif and b/README.d/11-setup-lease-script.avif differ diff --git a/README.d/12-install-custom-script.avif b/README.d/12-install-custom-script.avif index fb53606..c27408f 100644 Binary files a/README.d/12-install-custom-script.avif and b/README.d/12-install-custom-script.avif differ diff --git a/README.d/hello-world.rsc b/README.d/hello-world.rsc index 17ec575..6404781 100644 --- a/README.d/hello-world.rsc +++ b/README.d/hello-world.rsc @@ -1,3 +1,3 @@ #!rsc by RouterOS -:put ("Hello World from " . [ / system identity get name ] . "!"); +:put ("Hello World from " . [ /system/identity/get name ] . "!"); diff --git a/README.md b/README.md index 23d1254..df3cb9e 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,9 @@ Make sure to install latest updates before you begin. Specific scripts may require even newer RouterOS version. +> ℹ️ **Info**: The `main` branch is now RouterOS v7 only. If you are still +> running RouterOS v6 switch to `routeros-v6` branch! + Initial setup ------------- @@ -50,7 +53,7 @@ download the certificates. If you intend to download the scripts from a different location (for example from github.com) install the corresponding certificate chain. - / tool fetch "https://git.eworm.de/cgit/routeros-scripts/plain/certs/R3.pem" dst-path="letsencrypt-R3.pem"; + /tool/fetch "https://git.eworm.de/cgit/routeros-scripts/plain/certs/R3.pem" dst-path="letsencrypt-R3.pem"; ![screenshot: download certs](README.d/01-download-certs.avif) @@ -63,16 +66,16 @@ files to your MikroTik device. Then we import the certificates. - / certificate import file-name=letsencrypt-R3.pem passphrase=""; + /certificate/import file-name=letsencrypt-R3.pem passphrase=""; ![screenshot: import certs](README.d/02-import-certs.avif) For basic verification we rename the certificates and print their count. Make sure the certificate count is **two**. - / certificate set name="R3" [ find where fingerprint="67add1166b020ae61b8f5fc96813c04c2aa589960796865572a3c7e737613dfd" ]; - / certificate set name="ISRG-Root-X1" [ find where fingerprint="96bcec06264976f37460779acf28c5a7cfe8a3c0aae11a8ffcee05c0bddf08c6" ]; - / certificate print count-only where fingerprint="67add1166b020ae61b8f5fc96813c04c2aa589960796865572a3c7e737613dfd" or fingerprint="96bcec06264976f37460779acf28c5a7cfe8a3c0aae11a8ffcee05c0bddf08c6"; + /certificate/set name="R3" [ find where fingerprint="67add1166b020ae61b8f5fc96813c04c2aa589960796865572a3c7e737613dfd" ]; + /certificate/set name="ISRG-Root-X1" [ find where fingerprint="96bcec06264976f37460779acf28c5a7cfe8a3c0aae11a8ffcee05c0bddf08c6" ]; + /certificate/print count-only where fingerprint="67add1166b020ae61b8f5fc96813c04c2aa589960796865572a3c7e737613dfd" or fingerprint="96bcec06264976f37460779acf28c5a7cfe8a3c0aae11a8ffcee05c0bddf08c6"; ![screenshot: check certs](README.d/03-check-certs.avif) @@ -82,14 +85,9 @@ All following commands will verify the server certificate. For validity the certificate's lifetime is checked with local time, so make sure the device's date and time is set correctly! -One extra step is required if you run RouterOS v6: - - :global ScriptUpdatesUrlSuffix "\?h=routeros-v6"; - Now let's download the main scripts and add them in configuration on the fly. - :global ScriptUpdatesUrlSuffix; - :foreach Script in={ "global-config"; "global-config-overlay"; "global-functions" } do={ / system script add name=$Script source=([ / tool fetch check-certificate=yes-without-crl ("https://git.eworm.de/cgit/routeros-scripts/plain/" . $Script . $ScriptUpdatesUrlSuffix) output=user as-value]->"data"); }; + :foreach Script in={ "global-config"; "global-config-overlay"; "global-functions" } do={ /system/script/add name=$Script source=([ /tool/fetch check-certificate=yes-without-crl ("https://git.eworm.de/cgit/routeros-scripts/plain/" . $Script) output=user as-value]->"data"); }; ![screenshot: import scripts](README.d/04-import-scripts.avif) @@ -98,35 +96,24 @@ The configuration needs to be tweaked for your needs. Edit [`global-config`](global-config) (the one without `-overlay`). Save changes and exit with `Ctrl-o`. - / system script edit global-config-overlay source; + /system/script edit global-config-overlay source; ![screenshot: edit global-config-overlay](README.d/05-edit-global-config-overlay.avif) And finally load configuration and functions and add the scheduler. - / system script { run global-config; run global-functions; }; - / system scheduler add name="global-scripts" start-time=startup on-event="/ system script { run global-config; run global-functions; }"; + /system/script { run global-config; run global-functions; }; + /system/scheduler/add name="global-scripts" start-time=startup on-event="/system/script { run global-config; run global-functions; }"; ![screenshot: run and schedule scripts](README.d/06-run-and-schedule-scripts.avif) The last step is optional: Add this scheduler **only** if you want the scripts to be updated automatically! - / system scheduler add name="ScriptInstallUpdate" start-time=startup interval=1d on-event=":global ScriptInstallUpdate; \$ScriptInstallUpdate;"; + /system/scheduler/add name="ScriptInstallUpdate" start-time=startup interval=1d on-event=":global ScriptInstallUpdate; \$ScriptInstallUpdate;"; ![screenshot: schedule update](README.d/07-schedule-update.avif) -### Changes for RouterOS v6 - -RouterOS v7 is the way to go, let's consider RouterOS v6 deprecated. -If you want to stay with RouterOS v6 for some time add these lines -to your `global-config-overlay`, if missing: - - # Use branch routeros-v6 with RouterOS v6: - :global ScriptUpdatesUrlSuffix "\?h=routeros-v6"; - -Then reload the configuration. - Updating scripts ---------------- @@ -155,7 +142,7 @@ Most scripts are designed to run regularly from added `check-routeros-update`, so let's run it every hour to make sure not to miss an update. - / system scheduler add name="check-routeros-update" interval=1h on-event="/ system script run check-routeros-update;"; + /system/scheduler/add name="check-routeros-update" interval=1h on-event="/system/script/run check-routeros-update;"; ![screenshot: schedule script](README.d/10-schedule-script.avif) @@ -164,8 +151,8 @@ in DNS use `dhcp-to-dns` with the events from dhcp server. For a regular cleanup add a scheduler entry. $ScriptInstallUpdate dhcp-to-dns,lease-script; - / ip dhcp-server set lease-script=lease-script [ find ]; - / system scheduler add name="dhcp-to-dns" interval=5m on-event="/ system script run dhcp-to-dns;"; + /ip/dhcp-server/set lease-script=lease-script [ find ]; + /system/scheduler/add name="dhcp-to-dns" interval=5m on-event="/system/script/run dhcp-to-dns;"; ![screenshot: setup lease script](README.d/11-setup-lease-script.avif) @@ -240,7 +227,7 @@ still use my scripts to manage and deploy yours, by specifying `base-url` This will fetch and install a script `hello-world.rsc` from the given url: - $ScriptInstallUpdate hello-world.rsc "base-url=https://git.eworm.de/cgit/routeros-scripts/plain/README.d/" + $ScriptInstallUpdate hello-world.rsc "base-url=https://git.eworm.de/cgit/routeros-scripts/plain/README.d/"; ![screenshot: install custom script](README.d/12-install-custom-script.avif) diff --git a/global-config.changes b/global-config.changes index 0ee4eba..4bb87a9 100644 --- a/global-config.changes +++ b/global-config.changes @@ -77,13 +77,13 @@ 68="Reintroduced 'global-wait' for functions in scheduler."; 69="Support hard lower limit for voltage in 'check-health'."; 70="MikroTik started pushing RouterOS v7. Changes are no longer required."; - 71="MikroTik is pushing RouterOS v7 even more, in parallel branches. If you want to keep RouterOS v6 for some time see https://git.eworm.de/cgit/routeros-scripts/about/#changes-for-routeros-v6"; + 71="MikroTik is pushing RouterOS v7 even more, in parallel branches. If you want to keep RouterOS v6 for some time see https://git.eworm.de/cgit/routeros-scripts/about/#requirements"; 72="Introduced new script 'netwatch-dns' to manage DNS and DoH servers from netwatch."; 73="Renamed backup scripts ('cloud-backup' -> 'backup-cloud', 'email-backup' -> 'backup-email', 'upload-backup' -> 'backup-upload')."; 74="Extended 'hotspot-to-wpa', it can now read additional configuration from templates and hotspot users."; 75=("Finally merged the RouterOS v7 code into the main branch. " . [ $IfThenElse ([ $RequiredRouterOS "global-config.changes" "7.0" false ] = true) \ ("You may now drop '\$ScriptUpdatesUrlSuffix' from 'global-config-overlay'.") \ - ("Still running RouterOS v6, so last reminder to see https://git.eworm.de/cgit/routeros-scripts/about/#changes-for-routeros-v6") ]); + ("Still running RouterOS v6, so last reminder to see https://git.eworm.de/cgit/routeros-scripts/about/#requirements") ]); 76="Added an option to suppress notifications on host down with 'netwatch-notify'."; 77="Introduced new script 'firmware-upgrade-reboot'. Handle with care!"; 78="New documentation is online for notifications via Telegram & Matrix, variable inspection, ip address calculation and running scripts once."; -- cgit v1.2.3-54-g00ecf From 44c7d56858da3a10ec9f990a499ec3339394da20 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:43:14 +0200 Subject: INITIAL-COMMANDS: RouterOS v7 path syntax --- INITIAL-COMMANDS.md | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/INITIAL-COMMANDS.md b/INITIAL-COMMANDS.md index 66db40c..e8be3e1 100644 --- a/INITIAL-COMMANDS.md +++ b/INITIAL-COMMANDS.md @@ -7,35 +7,30 @@ Initial commands > not aware of the procedure please follow > [the long way in detail](README.md#the-long-way-in-detail). -One extra step is required if you run RouterOS v6: - - :global ScriptUpdatesUrlSuffix "\?h=routeros-v6"; - -Then run the complete base installation: +Run the complete base installation: { - :global ScriptUpdatesUrlSuffix; - / tool fetch "https://git.eworm.de/cgit/routeros-scripts/plain/certs/R3.pem" dst-path="letsencrypt-R3.pem" as-value; + /tool/fetch "https://git.eworm.de/cgit/routeros-scripts/plain/certs/R3.pem" dst-path="letsencrypt-R3.pem" as-value; :delay 1s; - / certificate import file-name=letsencrypt-R3.pem passphrase=""; - :if ([ :len [ / certificate find where fingerprint="67add1166b020ae61b8f5fc96813c04c2aa589960796865572a3c7e737613dfd" or fingerprint="96bcec06264976f37460779acf28c5a7cfe8a3c0aae11a8ffcee05c0bddf08c6" ] ] != 2) do={ + /certificate/import file-name=letsencrypt-R3.pem passphrase=""; + :if ([ :len [ /certificate/find where fingerprint="67add1166b020ae61b8f5fc96813c04c2aa589960796865572a3c7e737613dfd" or fingerprint="96bcec06264976f37460779acf28c5a7cfe8a3c0aae11a8ffcee05c0bddf08c6" ] ] != 2) do={ :error "Something is wrong with your certificates!"; }; - / file remove "letsencrypt-R3.pem"; + /file/remove "letsencrypt-R3.pem"; :delay 1s; :foreach Script in={ "global-config"; "global-config-overlay"; "global-functions" } do={ - / system script add name=$Script source=([ / tool fetch check-certificate=yes-without-crl ("https://git.eworm.de/cgit/routeros-scripts/plain/" . $Script . $ScriptUpdatesUrlSuffix) output=user as-value]->"data"); + /system/script/add name=$Script source=([ /tool/fetch check-certificate=yes-without-crl ("https://git.eworm.de/cgit/routeros-scripts/plain/" . $Script) output=user as-value]->"data"); }; - / system script { run global-config; run global-functions; }; - / system scheduler add name="global-scripts" start-time=startup on-event="/ system script { run global-config; run global-functions; }"; + /system/script { run global-config; run global-functions; }; + /system/scheduler/add name="global-scripts" start-time=startup on-event="/system/script { run global-config; run global-functions; }"; :global CertificateNameByCN; $CertificateNameByCN "R3"; $CertificateNameByCN "ISRG Root X1"; - } + }; Optional to update the scripts automatically: - / system scheduler add name="ScriptInstallUpdate" start-time=startup interval=1d on-event=":global ScriptInstallUpdate; \$ScriptInstallUpdate;"; + /system/scheduler/add name="ScriptInstallUpdate" start-time=startup interval=1d on-event=":global ScriptInstallUpdate; \$ScriptInstallUpdate;"; --- [◀ Go back to main README](README.md) -- cgit v1.2.3-54-g00ecf From 6c2a7faedd0de6e01b0a4b9df078978722506b98 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:49:19 +0200 Subject: doc/accesslist-duplicates: RouterOS v7 path syntax --- doc/accesslist-duplicates.d/01-example.avif | Bin 5172 -> 5208 bytes doc/accesslist-duplicates.md | 6 +++--- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/accesslist-duplicates.d/01-example.avif b/doc/accesslist-duplicates.d/01-example.avif index 9b26451..11b3fc5 100644 Binary files a/doc/accesslist-duplicates.d/01-example.avif and b/doc/accesslist-duplicates.d/01-example.avif differ diff --git a/doc/accesslist-duplicates.md b/doc/accesslist-duplicates.md index db1e00a..50720b1 100644 --- a/doc/accesslist-duplicates.md +++ b/doc/accesslist-duplicates.md @@ -15,8 +15,8 @@ entries in wireless access list. Requirements and installation ----------------------------- -Depending on whether you use CAPsMAN (`/ caps-man`) or local wireless -interface (`/ interface wireless`) you need to install a different script. +Depending on whether you use CAPsMAN (`/caps-man`) or local wireless +interface (`/interface/wireless`) you need to install a different script. For CAPsMAN: @@ -31,7 +31,7 @@ Usage and invocation Run this script from a terminal: - / system script run accesslist-duplicates.local; + /system/script/run accesslist-duplicates.local; ![screenshot: example](accesslist-duplicates.d/01-example.avif) -- cgit v1.2.3-54-g00ecf From 71680aa1b8e57e621eb7f37467f1cf6d0c72af4d Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:50:23 +0200 Subject: doc/backup-cloud: RouterOS v7 path syntax --- doc/backup-cloud.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/backup-cloud.md b/doc/backup-cloud.md index 6a15688..b0dc3ef 100644 --- a/doc/backup-cloud.md +++ b/doc/backup-cloud.md @@ -45,11 +45,11 @@ Usage and invocation Just run the script: - / system script run backup-cloud; + /system/script/run backup-cloud; Creating a scheduler may be an option: - / system scheduler add interval=1w name=backup-cloud on-event="/ system script run backup-cloud;" start-time=09:20:00; + /system/scheduler/add interval=1w name=backup-cloud on-event="/system/script/run backup-cloud;" start-time=09:20:00; See also -------- -- cgit v1.2.3-54-g00ecf From 81b0ed6675e153c70f5acbcc02f6412cadcc0e7b Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:51:23 +0200 Subject: doc/backup-email: RouterOS v7 path syntax --- doc/backup-email.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/backup-email.md b/doc/backup-email.md index 701f10a..e04a988 100644 --- a/doc/backup-email.md +++ b/doc/backup-email.md @@ -9,8 +9,8 @@ Send backup via e-mail Description ----------- -This script sends binary backup (`/ system backup save`) and complete -configuration export (`/ export terse show-sensitive`) via e-mail. +This script sends binary backup (`/system/backup/save`) and complete +configuration export (`/export terse show-sensitive`) via e-mail. Requirements and installation ----------------------------- @@ -36,11 +36,11 @@ Usage and invocation Just run the script: - / system script run backup-email; + /system/script/run backup-email; Creating a scheduler may be an option: - / system scheduler add interval=1w name=backup-email on-event="/ system script run backup-email;" start-time=09:15:00; + /system/scheduler/add interval=1w name=backup-email on-event="/system/script/run backup-email;" start-time=09:15:00; See also -------- -- cgit v1.2.3-54-g00ecf From d4df7467b3c38cb9a9f8cc6b9d06ea5f54f986dd Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:52:07 +0200 Subject: doc/backup-partition: RouterOS v7 path syntax --- doc/backup-partition.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/backup-partition.md b/doc/backup-partition.md index c31c780..b502330 100644 --- a/doc/backup-partition.md +++ b/doc/backup-partition.md @@ -27,11 +27,11 @@ Usage and invocation Just run the script: - / system script run backup-partition; + /system/script/run backup-partition; Creating a scheduler may be an option: - / system scheduler add interval=1w name=backup-partition on-event="/ system script run backup-partition;" start-time=09:30:00; + /system/scheduler/add interval=1w name=backup-partition on-event="/system/script/run backup-partition;" start-time=09:30:00; See also -------- -- cgit v1.2.3-54-g00ecf From fedf74300d53896dfa6614a73d4200b3c9584597 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:54:12 +0200 Subject: doc/backup-upload: RouterOS v7 path syntax --- doc/backup-upload.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/backup-upload.md b/doc/backup-upload.md index a3620c4..58c1e56 100644 --- a/doc/backup-upload.md +++ b/doc/backup-upload.md @@ -9,8 +9,8 @@ Upload backup to server Description ----------- -This script uploads binary backup (`/ system backup save`) and complete -configuration export (`/ export terse show-sensitive`) to external server. +This script uploads binary backup (`/system/backup/save`) and complete +configuration export (`/export terse show-sensitive`) to external server. > ⚠️ **Warning**: The used command can hit errors that a script can not handle. > This may result in script termination (where no notification is sent) or @@ -60,11 +60,11 @@ Usage and invocation Just run the script: - / system script run backup-upload; + /system/script/run backup-upload; Creating a scheduler may be an option: - / system scheduler add interval=1w name=backup-upload on-event="/ system script run backup-upload;" start-time=09:25:00; + /system/scheduler/add interval=1w name=backup-upload on-event="/system/script/run backup-upload;" start-time=09:25:00; See also -------- -- cgit v1.2.3-54-g00ecf From fe88af2d5f265631932058e6ea32cff3f96b511e Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:54:24 +0200 Subject: doc/capsman-download-packages: RouterOS v7 path syntax --- doc/capsman-download-packages.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/capsman-download-packages.md b/doc/capsman-download-packages.md index bac8a3c..0fdd6cb 100644 --- a/doc/capsman-download-packages.md +++ b/doc/capsman-download-packages.md @@ -24,7 +24,7 @@ Just install the script on CAPsMAN device: Optionally add a scheduler to run after startup: - / system scheduler add name=capsman-download-packages on-event="/ system script run capsman-download-packages;" start-time=startup; + /system/scheduler/add name=capsman-download-packages on-event="/system/script/run capsman-download-packages;" start-time=startup; Packages available in local storage in older version are downloaded unconditionally. The script tries to download missing packages by guessing @@ -35,7 +35,7 @@ Usage and invocation Run the script manually: - / system script run capsman-download-packages; + /system/script/run capsman-download-packages; ... or from scheduler. -- cgit v1.2.3-54-g00ecf From b3ec0f7fb9926ebf8e3ad1e9ef1ee9f1b62ade14 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:54:35 +0200 Subject: doc/capsman-rolling-upgrade: RouterOS v7 path syntax --- doc/capsman-rolling-upgrade.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/capsman-rolling-upgrade.md b/doc/capsman-rolling-upgrade.md index 34e3c91..94a2a79 100644 --- a/doc/capsman-rolling-upgrade.md +++ b/doc/capsman-rolling-upgrade.md @@ -33,7 +33,7 @@ that script when required. Alternatively run it manually: - / system script run capsman-rolling-upgrade; + /system/script/run capsman-rolling-upgrade; See also -------- -- cgit v1.2.3-54-g00ecf From c4831366892224d69aa16fbef43e5a0de421923e Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:55:14 +0200 Subject: doc/certificate-renew-issued: RouterOS v7 path syntax --- doc/certificate-renew-issued.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/certificate-renew-issued.md b/doc/certificate-renew-issued.md index d7c4676..d8201a7 100644 --- a/doc/certificate-renew-issued.md +++ b/doc/certificate-renew-issued.md @@ -33,7 +33,7 @@ Usage and invocation Run the script to renew certificates issued from a local CA. - / system script run certificate-renew-issued; + /system/script/run certificate-renew-issued; Only scripts with a remaining lifetime of three weeks or less are renewed. The old certificate is revoked automatically. If a passphrase for a specific -- cgit v1.2.3-54-g00ecf From c52f69b98d9ae280e172ea575c3224f0657d041b Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:56:21 +0200 Subject: doc/check-certificates: RouterOS v7 path syntax --- doc/check-certificates.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/check-certificates.md b/doc/check-certificates.md index a553e6a..f8a4eae 100644 --- a/doc/check-certificates.md +++ b/doc/check-certificates.md @@ -44,15 +44,15 @@ Usage and invocation Just run the script: - / system script run check-certificates; + /system/script/run check-certificates; ... or create a scheduler for periodic execution: - / system scheduler add interval=1d name=check-certificates on-event="/ system script run check-certificates;" start-time=startup; + /system/scheduler/add interval=1d name=check-certificates on-event="/system/script/run check-certificates;" start-time=startup; Alternatively running on startup may be desired: - / system scheduler add name=check-certificates-startup on-event="/ system script run check-certificates;" start-time=startup; + /system/scheduler/add name=check-certificates-startup on-event="/system/script/run check-certificates;" start-time=startup; See also -------- -- cgit v1.2.3-54-g00ecf From 6086064129692011a1e7c9a196f84cf5a63ef576 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:57:09 +0200 Subject: doc/check-health: RouterOS v7 path syntax --- doc/check-health.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/check-health.md b/doc/check-health.md index f6900ce..52efa4c 100644 --- a/doc/check-health.md +++ b/doc/check-health.md @@ -21,7 +21,7 @@ Note that bad initial state will not trigger an event. Only sensors available in hardware can be checked. See what your hardware supports: - / system health print; + /system/health/print; ### Sample notifications @@ -45,7 +45,7 @@ Requirements and installation Just install the script and create a scheduler: $ScriptInstallUpdate check-health; - / system scheduler add interval=1m name=check-health on-event="/ system script run check-health;" start-time=startup; + /system/scheduler/add interval=1m name=check-health on-event="/system/script/run check-health;" start-time=startup; Configuration ------------- -- cgit v1.2.3-54-g00ecf From 578ef72c8910057426c838f15d2120f21c2e90d7 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:57:50 +0200 Subject: doc/check-lte-firmware-upgrade: RouterOS v7 path syntax --- doc/check-lte-firmware-upgrade.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/check-lte-firmware-upgrade.md b/doc/check-lte-firmware-upgrade.md index 704a86b..6550734 100644 --- a/doc/check-lte-firmware-upgrade.md +++ b/doc/check-lte-firmware-upgrade.md @@ -30,7 +30,7 @@ Just install the script: ... and create a scheduler: - / system scheduler add interval=1d name=check-lte-firmware-upgrade on-event="/ system script run check-lte-firmware-upgrade;" start-time=startup; + /system/scheduler/add interval=1d name=check-lte-firmware-upgrade on-event="/system/script/run check-lte-firmware-upgrade;" start-time=startup; Configuration ------------- -- cgit v1.2.3-54-g00ecf From 15035cd70d35e4c0b503d86c5e70e0e9058108bb Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:58:53 +0200 Subject: doc/check-routeros-update: RouterOS v7 path syntax --- doc/check-routeros-update.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/check-routeros-update.md b/doc/check-routeros-update.md index 0710b76..f43cec9 100644 --- a/doc/check-routeros-update.md +++ b/doc/check-routeros-update.md @@ -41,7 +41,7 @@ Just install the script: And add a scheduler for automatic update notification: - / system scheduler add interval=1d name=check-routeros-update on-event="/ system script run check-routeros-update;" start-time=startup; + /system/scheduler/add interval=1d name=check-routeros-update on-event="/system/script/run check-routeros-update;" start-time=startup; Configuration ------------- @@ -65,7 +65,7 @@ Usage and invocation Be notified when run from scheduler or run it manually: - / system script run check-routeros-update; + /system/script/run check-routeros-update; If an update is found you can install it right away. -- cgit v1.2.3-54-g00ecf From 847892c09f17815d326b75a5ccb99965a0ade5cb Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 09:59:32 +0200 Subject: doc/collect-wireless-mac: RouterOS v7 path syntax --- doc/collect-wireless-mac.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/collect-wireless-mac.md b/doc/collect-wireless-mac.md index 5425f76..afdf73a 100644 --- a/doc/collect-wireless-mac.md +++ b/doc/collect-wireless-mac.md @@ -22,8 +22,8 @@ and modify it to your needs. Requirements and installation ----------------------------- -Depending on whether you use CAPsMAN (`/ caps-man`) or local wireless -interface (`/ interface wireless`) you need to install a different script. +Depending on whether you use CAPsMAN (`/caps-man`) or local wireless +interface (`/interface/wireless`) you need to install a different script. For CAPsMAN: -- cgit v1.2.3-54-g00ecf From 2f52057e84f2488bb08c873d6a50be5917a8db79 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:00:56 +0200 Subject: doc/daily-psk: RouterOS v7 path syntax --- doc/daily-psk.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/doc/daily-psk.md b/doc/daily-psk.md index d204691..e27c2c9 100644 --- a/doc/daily-psk.md +++ b/doc/daily-psk.md @@ -21,8 +21,8 @@ Requirements and installation Just install this script. -Depending on whether you use CAPsMAN (`/ caps-man`) or local wireless -interface (`/ interface wireless`) you need to install a different script. +Depending on whether you use CAPsMAN (`/caps-man`) or local wireless +interface (`/interface/wireless`) you need to install a different script. For CAPsMAN: @@ -34,8 +34,8 @@ For local interface: And add schedulers to run the script: - / system scheduler add interval=1d name=daily-psk-nightly on-event="/ system script run daily-psk.local;" start-date=may/23/2018 start-time=03:00:00; - / system scheduler add name=daily-psk-startup on-event="/ system script run daily-psk.local;" start-time=startup; + /system/scheduler/add interval=1d name=daily-psk-nightly on-event="/system/script/run daily-psk.local;" start-date=may/23/2018 start-time=03:00:00; + /system/scheduler/add name=daily-psk-startup on-event="/system/script/run daily-psk.local;" start-time=startup; These will update the passphrase on boot and nightly at 3:00. @@ -49,7 +49,7 @@ The configuration goes to `global-config-overlay`, these are the parameters: Then add an access list entry: - / interface wireless access-list add comment="Daily PSK" interface=wl-daily private-pre-shared-key="ToBeChangedDaily"; + /interface/wireless/access-list/add comment="Daily PSK" interface=wl-daily private-pre-shared-key="ToBeChangedDaily"; Also notification settings are required for e-mail, [matrix](mod/notification-matrix.md) and/or -- cgit v1.2.3-54-g00ecf From d9201aa29a914a0d0e89bf106c6ab69939d32850 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:01:30 +0200 Subject: doc/dhcp-lease-comment: RouterOS v7 path syntax --- doc/dhcp-lease-comment.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/dhcp-lease-comment.md b/doc/dhcp-lease-comment.md index 8679bfa..bb9222e 100644 --- a/doc/dhcp-lease-comment.md +++ b/doc/dhcp-lease-comment.md @@ -15,8 +15,8 @@ from wireless access list. Requirements and installation ----------------------------- -Depending on whether you use CAPsMAN (`/ caps-man`) or local wireless -interface (`/ interface wireless`) you need to install a different script. +Depending on whether you use CAPsMAN (`/caps-man`) or local wireless +interface (`/interface/wireless`) you need to install a different script. For CAPsMAN: -- cgit v1.2.3-54-g00ecf From 7aea231940caf043104df04638b4a2548149b042 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:02:15 +0200 Subject: doc/dhcp-to-dns: RouterOS v7 path syntax --- doc/dhcp-to-dns.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/dhcp-to-dns.md b/doc/dhcp-to-dns.md index 245b457..bde7f12 100644 --- a/doc/dhcp-to-dns.md +++ b/doc/dhcp-to-dns.md @@ -23,7 +23,7 @@ Then run it from dhcp server as lease script. You may want to use A scheduler cares about cleanup: - / system scheduler add interval=15m name=dhcp-to-dns on-event="/ system script run dhcp-to-dns;" start-time=startup; + /system/scheduler/add interval=15m name=dhcp-to-dns on-event="/system/script/run dhcp-to-dns;" start-time=startup; Configuration ------------- -- cgit v1.2.3-54-g00ecf From 474c4f7a62faa763d3064bd668a1cf343bf32a63 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:03:01 +0200 Subject: doc/firmware-upgrade-reboot: RouterOS v7 path syntax --- doc/firmware-upgrade-reboot.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/firmware-upgrade-reboot.md b/doc/firmware-upgrade-reboot.md index c913d8e..0215ce9 100644 --- a/doc/firmware-upgrade-reboot.md +++ b/doc/firmware-upgrade-reboot.md @@ -21,7 +21,7 @@ Requirements and installation Just install the script and create a scheduler: $ScriptInstallUpdate firmware-upgrade-reboot; - / system scheduler add name=firmware-upgrade-reboot on-event="/ system script run firmware-upgrade-reboot;" start-time=startup; + /system/scheduler/add name=firmware-upgrade-reboot on-event="/system/script/run firmware-upgrade-reboot;" start-time=startup; Enjoy firmware being up to date and in sync with RouterOS. -- cgit v1.2.3-54-g00ecf From 3e1802a1a032237f927b26e0dab3e26a284b7160 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:03:38 +0200 Subject: doc/global-wait: RouterOS v7 path syntax --- doc/global-wait.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/global-wait.md b/doc/global-wait.md index 2a7fbfa..ac3e5cc 100644 --- a/doc/global-wait.md +++ b/doc/global-wait.md @@ -27,7 +27,7 @@ Just install the script: ... and add it to your scheduler, for example in combination with the module to [manage VLANs on bridge ports](mod/bridge-port-vlan.md): - / system scheduler add name=bridge-port-vlan on-event="/ system script run global-wait; :global BridgePortVlan; \$BridgePortVlan default;" start-time=startup; + /system/scheduler/add name=bridge-port-vlan on-event="/system/script/run global-wait; :global BridgePortVlan; \$BridgePortVlan default;" start-time=startup; See also -------- -- cgit v1.2.3-54-g00ecf From 060d12d273b0fabab36914138c06e02ee1043ba1 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:04:20 +0200 Subject: doc/gps-track: RouterOS v7 path syntax --- doc/gps-track.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/gps-track.md b/doc/gps-track.md index 3b9c94f..c7d28f6 100644 --- a/doc/gps-track.md +++ b/doc/gps-track.md @@ -23,7 +23,7 @@ Just install the script: ... and create a scheduler: - / system scheduler add interval=1m name=gps-track on-event="/ system script run gps-track;" start-time=startup; + /system/scheduler/add interval=1m name=gps-track on-event="/system/script/run gps-track;" start-time=startup; Configuration ------------- @@ -32,7 +32,7 @@ The configuration goes to `global-config-overlay`, the only parameter is: * `GpsTrackUrl`: the url to send json data to -The configured coordinate format (see `/ system gps`) defines the format +The configured coordinate format (see `/system/gps`) defines the format sent to the server. --- -- cgit v1.2.3-54-g00ecf From d68958dd77d8bb5d4dbf4c4504fef8a2ecd58439 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:05:47 +0200 Subject: doc/hotspot-to-wpa: RouterOS v7 path syntax --- doc/hotspot-to-wpa.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/doc/hotspot-to-wpa.md b/doc/hotspot-to-wpa.md index 8733a7c..211d4fb 100644 --- a/doc/hotspot-to-wpa.md +++ b/doc/hotspot-to-wpa.md @@ -25,7 +25,7 @@ Then install the script: Configure your hotspot to use this script as `on-login` script: - / ip hotspot user profile set on-login=hotspot-to-wpa [ find ]; + /ip/hotspot/user/profile/set on-login=hotspot-to-wpa [ find ]; ### Automatic cleanup @@ -36,11 +36,11 @@ access list forever. Install the optional script for automatic cleanup: Create a scheduler: - / system scheduler add interval=1d name=hotspot-to-wpa-cleanup on-event="/ system script run hotspot-to-wpa-cleanup;" start-time=startup; + /system/scheduler/add interval=1d name=hotspot-to-wpa-cleanup on-event="/system/script/run hotspot-to-wpa-cleanup;" start-time=startup; And add the lease script to your wpa interfaces' dhcp server: - / ip dhcp-server set lease-script=lease-script [ find where name~"wpa" ]; + /ip/dhcp-server/set lease-script=lease-script [ find where name~"wpa" ]; Configuration ------------- @@ -51,8 +51,8 @@ entries are to be added. Create hotspot login credentials: - / ip hotspot user add add comment="Test User 1" name=user1 password=v3ry; - / ip hotspot user add add comment="Test User 2" name=user2 password=s3cr3t; + /ip/hotspot/user/add comment="Test User 1" name=user1 password=v3ry; + /ip/hotspot/user/add comment="Test User 2" name=user2 password=s3cr3t; Additionally templates can be created to give more options for access list: @@ -66,12 +66,12 @@ Additionally templates can be created to give more options for access list: For a hotspot called `example` the template could look like this: - / caps-man access-list add comment="hotspot-to-wpa template example" disabled=yes private-passphrase="ignore" ssid-regexp="^example\$" vlan-id=10 vlan-mode=use-tag; + /caps-man/access-list/add comment="hotspot-to-wpa template example" disabled=yes private-passphrase="ignore" ssid-regexp="^example\$" vlan-id=10 vlan-mode=use-tag; The same settings are available in hotspot user's comment and take precedence over the template settings: - / ip hotspot user add comment="private-passphrase=ignore, ssid-regexp=^example\\\$, vlan-id=10, vlan-mode=use-tag" name=user password=v3ry-s3cr3t; + /ip/hotspot/user/add comment="private-passphrase=ignore, ssid-regexp=^example\\\$, vlan-id=10, vlan-mode=use-tag" name=user password=v3ry-s3cr3t; Usage and invocation -------------------- -- cgit v1.2.3-54-g00ecf From ea619c8efcc16b4a5dfcc05f0ffca58cac60967a Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:06:27 +0200 Subject: doc/ipsec-to-dns: RouterOS v7 path syntax --- doc/ipsec-to-dns.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/ipsec-to-dns.md b/doc/ipsec-to-dns.md index 349ae63..87ad21a 100644 --- a/doc/ipsec-to-dns.md +++ b/doc/ipsec-to-dns.md @@ -21,7 +21,7 @@ Just install the script: This script is run from scheduler: - / system scheduler add interval=1m name=ipsec-to-dns on-event="/ system script run ipsec-to-dns;" start-time=startup; + /system/scheduler/add interval=1m name=ipsec-to-dns on-event="/system/script/run ipsec-to-dns;" start-time=startup; Configuration ------------- -- cgit v1.2.3-54-g00ecf From ad6dc85320ed6d4f6051203a5702b63cbf6a20b5 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:07:33 +0200 Subject: doc/ipv6-update: RouterOS v7 path syntax --- doc/ipv6-update.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/doc/ipv6-update.md b/doc/ipv6-update.md index ae4eb6a..7c5a943 100644 --- a/doc/ipv6-update.md +++ b/doc/ipv6-update.md @@ -23,14 +23,14 @@ Just install the script: Your ISP needs to provide an IPv6 prefix, your device receives it via dhcp: - / ipv6 dhcp-client add add-default-route=yes interface=ppp-isp pool-name=isp request=prefix script=ipv6-update; + /ipv6/dhcp-client/add add-default-route=yes interface=ppp-isp pool-name=isp request=prefix script=ipv6-update; Note this already adds this script as `script`. The pool name (here: "`isp`") is important, we need it later. Also this expects there is an address assigned from pool to an interface: - / ipv6 address add from-pool=isp interface=br-local; + /ipv6/address/add from-pool=isp interface=br-local; Sometimes dhcp client is stuck on reconnect and needs to be released. Installing [ppp-on-up](ppp-on-up.md) may solve this. @@ -41,7 +41,7 @@ Configuration An address list entry is updated with current prefix and can be used in firewall rules, comment has to be "`ipv6-pool-`" and actual pool name: - / ipv6 firewall address-list add address=2003:cf:2f0f:de00::/56 comment=ipv6-pool-isp list=extern; + /ipv6/firewall/address-list/add address=2003:cf:2f0f:de00::/56 comment=ipv6-pool-isp list=extern; As this entry is mandatory it is created automatically if it does not exist, with the comment also set for list. @@ -50,13 +50,13 @@ Address list entries for specific interfaces can be updated as well. The interface needs to get its address from pool `isp` and the address list entry has to be associated to an interface in comment: - / ipv6 firewall address-list add address=2003:cf:2f0f:de01::/64 comment="ipv6-pool-isp, interface=br-local" list=local; + /ipv6/firewall/address-list/add address=2003:cf:2f0f:de01::/64 comment="ipv6-pool-isp, interface=br-local" list=local; Static DNS records need a special comment to be updated. Again it has to start with "`ipv6-pool-`" and actual pool name, followed by a comma, "`interface=`" and the name of interface this address is connected to: - / ip dns static add address=2003:cf:2f0f:de00:1122:3344:5566:7788 comment="ipv6-pool-isp, interface=br-local" name=test.example.com ttl=15m; + /ip/dns/static/add address=2003:cf:2f0f:de00:1122:3344:5566:7788 comment="ipv6-pool-isp, interface=br-local" name=test.example.com ttl=15m; See also -------- -- cgit v1.2.3-54-g00ecf From 77ef9c09194c74e58ce16d1531be106b4a61fa72 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:08:11 +0200 Subject: doc/ip-addr-bridge: RouterOS v7 path syntax --- doc/ip-addr-bridge.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/ip-addr-bridge.md b/doc/ip-addr-bridge.md index 44dac6a..75685bb 100644 --- a/doc/ip-addr-bridge.md +++ b/doc/ip-addr-bridge.md @@ -19,7 +19,7 @@ Just install the script: ... and make it run from scheduler: - / system scheduler add name=ip-addr-bridge on-event="/ system script run ip-addr-bridge;" start-time=startup; + /system/scheduler/add name=ip-addr-bridge on-event="/system/script/run ip-addr-bridge;" start-time=startup; This will disable IP addresses on bridges without at lease one running port. The IP address is enabled if at least one port is running. -- cgit v1.2.3-54-g00ecf From e25f13fe17e6dc6b75df8e39ecad3c5ce7cb2358 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:08:41 +0200 Subject: doc/lease-script: RouterOS v7 path syntax --- doc/lease-script.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/lease-script.md b/doc/lease-script.md index 16fc73e..a435d43 100644 --- a/doc/lease-script.md +++ b/doc/lease-script.md @@ -32,7 +32,7 @@ Just install the script: ... and add it as `lease-script` to your dhcp server: - / ip dhcp-server set lease-script=lease-script [ find ]; + /ip/dhcp-server/set lease-script=lease-script [ find ]; See also -------- -- cgit v1.2.3-54-g00ecf From 36ec2e1595e1d7fb746c0ed050546d7196544ff8 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:09:58 +0200 Subject: doc/leds-mode: RouterOS v7 path syntax --- doc/leds-mode.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/doc/leds-mode.md b/doc/leds-mode.md index b525220..65f9f01 100644 --- a/doc/leds-mode.md +++ b/doc/leds-mode.md @@ -21,21 +21,21 @@ Usage and invocation To switch the device to dark mode: - / system script run leds-night-mode; + /system/script/run leds-night-mode; ... and back to normal mode: - / system script run leds-day-mode; + /system/script/run leds-day-mode; To toggle between the two modes: - / system script run leds-toggle-mode; + /system/script/run leds-toggle-mode; Add these schedulers to switch to dark mode in the evening and back to normal mode in the morning: - / system scheduler add interval=1d name=leds-day-mode on-event="/ system script run leds-day-mode;" start-time=07:00:00; - / system scheduler add interval=1d name=leds-night-mode on-event="/ system script run leds-night-mode;" start-time=21:00:00; + /system/scheduler/add interval=1d name=leds-day-mode on-event="/system/script/run leds-day-mode;" start-time=07:00:00; + /system/scheduler/add interval=1d name=leds-night-mode on-event="/system/script/run leds-night-mode;" start-time=21:00:00; The script `leds-toggle-mode` can be used from [mode button](mode-button.md) to toggle mode. -- cgit v1.2.3-54-g00ecf From c5044e10cebf0b6d93550084afd1be3a91119bb4 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:10:34 +0200 Subject: doc/log-forward: RouterOS v7 path syntax --- doc/log-forward.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/log-forward.md b/doc/log-forward.md index 1f3eae5..c91f09a 100644 --- a/doc/log-forward.md +++ b/doc/log-forward.md @@ -33,7 +33,7 @@ Just install the script: ... and add a scheduler: - / system scheduler add interval=1m name=log-forward on-event="/ system script run log-forward;" start-time=startup; + /system/scheduler/add interval=1m name=log-forward on-event="/system/script/run log-forward;" start-time=startup; Configuration ------------- -- cgit v1.2.3-54-g00ecf From e88a547f60b6c8b8f3575751eb49b89ebb91c995 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:15:05 +0200 Subject: doc/mod/bridge-port-to: RouterOS v7 path syntax --- doc/mod/bridge-port-to.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/mod/bridge-port-to.md b/doc/mod/bridge-port-to.md index 02d1e8d..2b42a9b 100644 --- a/doc/mod/bridge-port-to.md +++ b/doc/mod/bridge-port-to.md @@ -22,20 +22,20 @@ Just install the module: Configuration ------------- -The configuration goes to ports' comments (`/ interface bridge port`). +The configuration goes to ports' comments (`/interface/bridge/port`). - / interface bridge port add bridge=br-guest comment="default=dhcp-client, alt=br-guest" disabled=yes interface=en1; - / interface bridge port add bridge=br-intern comment="default=br-intern, alt=br-guest" interface=en2; - / interface bridge port add bridge=br-guest comment="default=br-guest, extra=br-extra" interface=en3; + /interface/bridge/port/add bridge=br-guest comment="default=dhcp-client, alt=br-guest" disabled=yes interface=en1; + /interface/bridge/port/add bridge=br-intern comment="default=br-intern, alt=br-guest" interface=en2; + /interface/bridge/port/add bridge=br-guest comment="default=br-guest, extra=br-extra" interface=en3; Also dhcp client can be handled: - / ip dhcp-client add comment="toggle with bridge port" disabled=no interface=en1; + /ip/dhcp-client/add comment="toggle with bridge port" disabled=no interface=en1; Add a scheduler to start with default setup on system startup: $ScriptInstallUpdate global-wait; - / system scheduler add name=bridge-port-vlan on-event="/ system script run global-wait; :global BridgePortTo; \$BridgePortTo default;" start-time=startup; + /system/scheduler/add name=bridge-port-vlan on-event="/system/script/run global-wait; :global BridgePortTo; \$BridgePortTo default;" start-time=startup; Usage and invocation -------------------- -- cgit v1.2.3-54-g00ecf From 21416c42ef2aa249a96abc83b880e46a9174a622 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:15:14 +0200 Subject: doc/mod/bridge-port-vlan: RouterOS v7 path syntax --- doc/mod/bridge-port-vlan.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/doc/mod/bridge-port-vlan.md b/doc/mod/bridge-port-vlan.md index 290826e..0e6c28f 100644 --- a/doc/mod/bridge-port-vlan.md +++ b/doc/mod/bridge-port-vlan.md @@ -23,24 +23,24 @@ Configuration Using named VLANs you have to add comments in bridge vlan menu: - / interface bridge vlan add bridge=bridge comment=intern tagged=br-local vlan-ids=10; - / interface bridge vlan add bridge=bridge comment=geust tagged=br-local vlan-ids=20; - / interface bridge vlan add bridge=bridge comment=extra tagged=br-local vlan-ids=30; + /interface/bridge/vlan/add bridge=bridge comment=intern tagged=br-local vlan-ids=10; + /interface/bridge/vlan/add bridge=bridge comment=geust tagged=br-local vlan-ids=20; + /interface/bridge/vlan/add bridge=bridge comment=extra tagged=br-local vlan-ids=30; -The configuration goes to ports' comments (`/ interface bridge port`). +The configuration goes to ports' comments (`/interface/bridge/port`). - / interface bridge port add bridge=bridge comment="default=dhcp-client, alt=guest" disabled=yes interface=en1; - / interface bridge port add bridge=bridge comment="default=intern, alt=guest, extra=30" interface=en2; - / interface bridge port add bridge=bridge comment="default=guest, extra=extra" interface=en3; + /interface/bridge/port/add bridge=bridge comment="default=dhcp-client, alt=guest" disabled=yes interface=en1; + /interface/bridge/port/add bridge=bridge comment="default=intern, alt=guest, extra=30" interface=en2; + /interface/bridge/port/add bridge=bridge comment="default=guest, extra=extra" interface=en3; Also dhcp client can be handled: - / ip dhcp-client add comment="toggle with bridge port" disabled=no interface=en1; + /ip/dhcp-client/add comment="toggle with bridge port" disabled=no interface=en1; Add a scheduler to start with default setup on system startup: $ScriptInstallUpdate global-wait; - / system scheduler add name=bridge-port-vlan on-event="/ system script run global-wait; :global BridgePortVlan; \$BridgePortVlan default;" start-time=startup; + /system/scheduler/add name=bridge-port-vlan on-event="/system/script/run global-wait; :global BridgePortVlan; \$BridgePortVlan default;" start-time=startup; Usage and invocation -------------------- -- cgit v1.2.3-54-g00ecf From f00ff997a446fa4f53d4a1906d5cf08e5008afcb Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 12:03:56 +0200 Subject: doc/mod/inspectvar: RouterOS v7 path syntax --- doc/mod/inspectvar.d/inspectvar.avif | Bin 2891 -> 2838 bytes doc/mod/inspectvar.md | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/mod/inspectvar.d/inspectvar.avif b/doc/mod/inspectvar.d/inspectvar.avif index d4a745f..f1da1d4 100644 Binary files a/doc/mod/inspectvar.d/inspectvar.avif and b/doc/mod/inspectvar.d/inspectvar.avif differ diff --git a/doc/mod/inspectvar.md b/doc/mod/inspectvar.md index d3fb3b2..7782c8a 100644 --- a/doc/mod/inspectvar.md +++ b/doc/mod/inspectvar.md @@ -24,7 +24,7 @@ Usage and invocation Call the function `$InspectVar` with a variable as parameter: - $InspectVar $ModeButton + $InspectVar $ModeButton; ![InspectVar](inspectvar.d/inspectvar.avif) -- cgit v1.2.3-54-g00ecf From 344ae8a55d0a797bc1601f08d0e492be1d45c478 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 13:12:32 +0200 Subject: doc/mod/ipcalc.d/ipcalc: RouterOS v7 path syntax --- doc/mod/ipcalc.d/ipcalc.avif | Bin 1791 -> 1729 bytes doc/mod/ipcalc.d/ipcalcreturn.avif | Bin 1283 -> 1247 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/doc/mod/ipcalc.d/ipcalc.avif b/doc/mod/ipcalc.d/ipcalc.avif index 022f325..fe726e8 100644 Binary files a/doc/mod/ipcalc.d/ipcalc.avif and b/doc/mod/ipcalc.d/ipcalc.avif differ diff --git a/doc/mod/ipcalc.d/ipcalcreturn.avif b/doc/mod/ipcalc.d/ipcalcreturn.avif index d858bb1..5e4dd57 100644 Binary files a/doc/mod/ipcalc.d/ipcalcreturn.avif and b/doc/mod/ipcalc.d/ipcalcreturn.avif differ -- cgit v1.2.3-54-g00ecf From 76127ed53c527641a31e069e2f525ac22982463f Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:15:25 +0200 Subject: doc/mod/notification-matrix: RouterOS v7 path syntax --- doc/mod/notification-matrix.d/01-home-server.avif | Bin 2402 -> 2317 bytes doc/mod/notification-matrix.d/02-access-token.avif | Bin 4278 -> 4105 bytes doc/mod/notification-matrix.d/03-join-room.avif | Bin 3143 -> 3166 bytes doc/mod/notification-matrix.md | 6 +++--- 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/mod/notification-matrix.d/01-home-server.avif b/doc/mod/notification-matrix.d/01-home-server.avif index 8a79ae6..683c7b5 100644 Binary files a/doc/mod/notification-matrix.d/01-home-server.avif and b/doc/mod/notification-matrix.d/01-home-server.avif differ diff --git a/doc/mod/notification-matrix.d/02-access-token.avif b/doc/mod/notification-matrix.d/02-access-token.avif index 8a0b647..54109a6 100644 Binary files a/doc/mod/notification-matrix.d/02-access-token.avif and b/doc/mod/notification-matrix.d/02-access-token.avif differ diff --git a/doc/mod/notification-matrix.d/03-join-room.avif b/doc/mod/notification-matrix.d/03-join-room.avif index c7fad4e..45974b8 100644 Binary files a/doc/mod/notification-matrix.d/03-join-room.avif and b/doc/mod/notification-matrix.d/03-join-room.avif differ diff --git a/doc/mod/notification-matrix.md b/doc/mod/notification-matrix.md index 91a39e5..3da5659 100644 --- a/doc/mod/notification-matrix.md +++ b/doc/mod/notification-matrix.md @@ -42,7 +42,7 @@ Your best bet is to query the server at `domain` with the [well-known uri](https://spec.matrix.org/latest/client-server-api/#well-known-uri). For "*matrix.org*" this query is: - / tool fetch "https://matrix.org/.well-known/matrix/client" output=user; + /tool/fetch "https://matrix.org/.well-known/matrix/client" output=user; ![home server](notification-matrix.d/01-home-server.avif) @@ -59,7 +59,7 @@ account must be sent to the home server via We use the home server discovered above, "*matrix-client.matrix.org*". The user is "*example*" and password is "*v3ry-s3cr3t*". - / tool fetch "https://matrix-client.matrix.org/_matrix/client/r0/login" http-method=post http-data="{\"type\":\"m.login.password\", \"user\":\"example\", \"password\":\"v3ry-s3cr3t\"}" output=user; + /tool/fetch "https://matrix-client.matrix.org/_matrix/client/r0/login" http-method=post http-data="{\"type\":\"m.login.password\", \"user\":\"example\", \"password\":\"v3ry-s3cr3t\"}" output=user; ![access token](notification-matrix.d/02-access-token.avif) @@ -80,7 +80,7 @@ this can be done with Make sure to replace room id ("*!*" is escaped with "*%21*") and access token with your data. - / tool fetch "https://matrix-client.matrix.org/_matrix/client/r0/rooms/%21WUcxpSjKyxSGelouhA:matrix.org/join?access_token=yt_ZXdvcm0tdGVzdA_NNqUyvKHRhBLZmnzVVSK_0xu6yN" http-method=post http-data="" output=user; + /tool/fetch "https://matrix-client.matrix.org/_matrix/client/r0/rooms/%21WUcxpSjKyxSGelouhA:matrix.org/join?access_token=yt_ZXdvcm0tdGVzdA_NNqUyvKHRhBLZmnzVVSK_0xu6yN" http-method=post http-data="" output=user; ![join room](notification-matrix.d/03-join-room.avif) -- cgit v1.2.3-54-g00ecf From 95a75b3fa19f501fe5db8404a1c59a970cc8d7cd Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:32:48 +0200 Subject: doc/mod/scriptrunonce: RouterOS v7 path syntax --- doc/mod/scriptrunonce.d/hello-world.rsc | 2 +- doc/mod/scriptrunonce.d/scriptrunonce.avif | Bin 2466 -> 2356 bytes doc/mod/scriptrunonce.md | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/mod/scriptrunonce.d/hello-world.rsc b/doc/mod/scriptrunonce.d/hello-world.rsc index 17ec575..6404781 100644 --- a/doc/mod/scriptrunonce.d/hello-world.rsc +++ b/doc/mod/scriptrunonce.d/hello-world.rsc @@ -1,3 +1,3 @@ #!rsc by RouterOS -:put ("Hello World from " . [ / system identity get name ] . "!"); +:put ("Hello World from " . [ /system/identity/get name ] . "!"); diff --git a/doc/mod/scriptrunonce.d/scriptrunonce.avif b/doc/mod/scriptrunonce.d/scriptrunonce.avif index 614c72c..27ccd41 100644 Binary files a/doc/mod/scriptrunonce.d/scriptrunonce.avif and b/doc/mod/scriptrunonce.d/scriptrunonce.avif differ diff --git a/doc/mod/scriptrunonce.md b/doc/mod/scriptrunonce.md index aaa64a9..6efa1b7 100644 --- a/doc/mod/scriptrunonce.md +++ b/doc/mod/scriptrunonce.md @@ -37,7 +37,7 @@ Usage and invocation The function `$ScriptRunOnce` expects an URL (or name if `ScriptRunOnceBaseUrl` is given) pointing to a script as parameter. - $ScriptRunOnce https://git.eworm.de/cgit/routeros-scripts/plain/doc/mod/scriptrunonce.d/hello-world.rsc + $ScriptRunOnce https://git.eworm.de/cgit/routeros-scripts/plain/doc/mod/scriptrunonce.d/hello-world.rsc; ![ScriptRunOnce](scriptrunonce.d/scriptrunonce.avif) -- cgit v1.2.3-54-g00ecf From 2ed561d13b07502b512557e3921fcbf3dc3f0c20 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:17:53 +0200 Subject: doc/mode-button: RouterOS v7 path syntax --- doc/mode-button.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/doc/mode-button.md b/doc/mode-button.md index c1c059e..ef7754c 100644 --- a/doc/mode-button.md +++ b/doc/mode-button.md @@ -13,17 +13,17 @@ This script extend the functionality of mode button. Instead of just one you can trigger several actions by pressing the mode button several times. The hardware needs to have a mode button, see -`/ system routerboard mode-button`. Starting with RouterOS 6.47beta60 you +`/system/routerboard/mode-button`. Starting with RouterOS 6.47beta60 you can configure the reset button to act the same, see -`/ system routerboard reset-button`. +`/system/routerboard/reset-button`. Copy this code to terminal to check: ``` -:if ([ :len [ /system routerboard mode-button print as-value ] ] > 0) do={ +:if ([ :len [ /system/routerboard/mode-button/print as-value ] ] > 0) do={ :put "Mode button is supported."; } else={ - :if ([ :len [ /system routerboard reset-button print as-value ] ] > 0) do={ + :if ([ :len [ /system/routerboard/reset-button/print as-value ] ] > 0) do={ :put "Mode button is not supported, but reset button is."; } else={ :put "Neither mode button nor reset button is supported."; @@ -40,11 +40,11 @@ Just install the script: Then configure the mode button to run `mode-button`: - / system routerboard mode-button set enabled=yes on-event="/ system script run mode-button;"; + /system/routerboard/mode-button/set enabled=yes on-event="/system/script/run mode-button;"; To use the reset button instead: - / system routerboard reset-button set enabled=yes on-event="/ system script run mode-button;"; + /system/routerboard/reset-button/set enabled=yes on-event="/system/script/run mode-button;"; Configuration ------------- @@ -57,7 +57,7 @@ The configuration goes to `global-config-overlay`, these are the parameters: Usage and invocation -------------------- -Press the mode button. :) +Press the mode button. 😜 --- [◀ Go back to main README](../README.md) -- cgit v1.2.3-54-g00ecf From 9ef2718c6dc209b5774193c76c9e18e019fac5d6 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:19:11 +0200 Subject: doc/netwatch-dns: RouterOS v7 path syntax --- doc/netwatch-dns.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/doc/netwatch-dns.md b/doc/netwatch-dns.md index 4fbfc2b..798ad92 100644 --- a/doc/netwatch-dns.md +++ b/doc/netwatch-dns.md @@ -21,7 +21,7 @@ Just install the script: Then add a scheduler to run it periodically: - / system scheduler add interval=1m name=netwatch-dns on-event="/ system script run netwatch-dns;" start-time=startup; + /system/scheduler/add interval=1m name=netwatch-dns on-event="/system/script/run netwatch-dns;" start-time=startup; Configuration ------------- @@ -29,9 +29,9 @@ Configuration The DNS and DoH servers to be checked have to be added to netwatch with specific comment: - / tool netwatch add comment="doh, hostname=cloudflare-dns" host=1.1.1.1; - / tool netwatch add comment="dns, hostname=google-dns" host=8.8.8.8; - / tool netwatch add comment="doh, dns, hostname=quad-nine" host=9.9.9.10; + /tool/netwatch/add comment="doh, hostname=cloudflare-dns" host=1.1.1.1; + /tool/netwatch/add comment="dns, hostname=google-dns" host=8.8.8.8; + /tool/netwatch/add comment="doh, dns, hostname=quad-nine" host=9.9.9.10; This will configure *cloudflare-dns* for DoH (`https://1.1.1.1/dnsquery`), and *google-dns* and *quad-nine* for regular DNS (`8.8.8.8,9.9.9.10`) if up. @@ -39,15 +39,15 @@ If *cloudflare-dns* is down the script will fall back to *quad-nine* for DoH. Giving a specific query url for DoH is possible: - / tool netwatch add comment="doh, hostname=nextdns, doh-url=https://dns.nextdns.io/dns-query" host=199.247.16.158; + /tool/netwatch/add comment="doh, hostname=nextdns, doh-url=https://dns.nextdns.io/dns-query" host=199.247.16.158; Note that using a name in DoH url may introduce a chicken-and-egg issue! Sometimes using just one specific (possibly internal) DNS server may be desired, with fallback in case it fails. This is possible as well: - / tool netwatch add comment="dns, hostname=pi-hole" host=10.0.0.10; - / tool netwatch add comment="dns-fallback, hostname=cloudflare-dns" host=1.1.1.1; + /tool/netwatch/add comment="dns, hostname=pi-hole" host=10.0.0.10; + /tool/netwatch/add comment="dns-fallback, hostname=cloudflare-dns" host=1.1.1.1; Tips & Tricks ------------- @@ -57,7 +57,7 @@ Tips & Tricks Netwatch entries can be created to work with both - this script and [netwatch-notify](netwatch-notify.md). Just give options for both: - / tool netwatch add comment="doh, notify, hostname=cloudflare-dns" host=1.1.1.1; + /tool/netwatch/add comment="doh, notify, hostname=cloudflare-dns" host=1.1.1.1; Also this allows to update host address, see option `resolve`. -- cgit v1.2.3-54-g00ecf From 7561c719d1ca8747c9fddf10d3f4dd473528848b Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:24:18 +0200 Subject: doc/netwatch-notify: RouterOS v7 path syntax --- doc/netwatch-notify.md | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/doc/netwatch-notify.md b/doc/netwatch-notify.md index b2f6dd0..85bfb73 100644 --- a/doc/netwatch-notify.md +++ b/doc/netwatch-notify.md @@ -10,7 +10,7 @@ Description ----------- This script sends notifications about host UP and DOWN events. In comparison -to just netwatch (`/ tool netwatch`) and its `up-script` and `down-script` +to just netwatch (`/tool/netwatch`) and its `up-script` and `down-script` this script implements a simple state machine and dependency model. Host down events are triggered only if the host is down for several checks and optional parent host is not down to avoid false alerts. @@ -29,14 +29,14 @@ Just install the script: Then add a scheduler to run it periodically: - / system scheduler add interval=1m name=netwatch-notify on-event="/ system script run netwatch-notify;" start-time=startup; + /system/scheduler/add interval=1m name=netwatch-notify on-event="/system/script/run netwatch-notify;" start-time=startup; Configuration ------------- The hosts to be checked have to be added to netwatch with specific comment: - / tool netwatch add comment="notify, hostname=example.com" host=[ :resolve "example.com" ]; + /tool/netwatch/add comment="notify, hostname=example.com" host=[ :resolve "example.com" ]; ### Hooks @@ -44,7 +44,7 @@ It is possible to run an up hook command (`up-hook`) or down hook command (`down-hook`) when a notification is triggered. This has to be added in comment, note that some characters need extra escaping: - / tool netwatch add comment=("notify, hostname=device, down-hook=/ interface ethernet \\{ disable \\\"en2\\\"; enable \\\"en2\\\"; \\}") host=10.0.0.20; + /tool/netwatch/add comment=("notify, hostname=device, down-hook=/interface/ethernet \\{ disable \\\"en2\\\"; enable \\\"en2\\\"; \\}") host=10.0.0.20; Also there is a `pre-down-hook` that fires at two thirds of failed checks required for the notification. The idea is to fix the issue before a @@ -54,15 +54,15 @@ notification is sent. The count threshould (default is 5 checks) is configurable as well: - / tool netwatch add comment="notify, hostname=example.com, count=10" host=104.18.144.11; + /tool/netwatch/add comment="notify, hostname=example.com, count=10" host=104.18.144.11; ### Parents & dependencies If the host is behind another checked host add a dependency, this will suppress notification if the parent host is down: - / tool netwatch add comment="notify, hostname=gateway" host=93.184.216.1; - / tool netwatch add comment="notify, hostname=example.com, parent=gateway" host=93.184.216.34; + /tool/netwatch/add comment="notify, hostname=gateway" host=93.184.216.1; + /tool/netwatch/add comment="notify, hostname=example.com, parent=gateway" host=93.184.216.34; Note that every configured parent in a chain increases the check count threshould by one. @@ -72,7 +72,7 @@ threshould by one. The host address can be updated dynamically. Give extra parameter `resolve` with a resolvable name: - / tool netwatch add comment="notify, hostname=example.com, resolve=example.com"; + /tool/netwatch/add comment="notify, hostname=example.com, resolve=example.com"; But be warned: Dynamic updates will probably cause issues if the name has more than one record in dns - a high rate of configuration changes (and flash @@ -84,7 +84,7 @@ Also suppressing the notification on host down is possible with parameter `no-down-notification`. This may be desired for devices that are usually powered off, but accessibility is of interest. - / tool netwatch add comment="notify, hostname=printer, no-down-notification" host=10.0.0.30; + /tool/netwatch/add comment="notify, hostname=printer, no-down-notification" host=10.0.0.30; Go and get your coffee ☕️ before sending the print job. @@ -101,8 +101,8 @@ Sometimes it is sufficient if one of a number of hosts is available. You can make `netwatch-notify` check for that by adding several items with same `hostname`. Note that `count` has to be multiplied to keep the actual time. - / tool netwatch add comment="notify, hostname=service, count=10" host=10.0.0.10; - / tool netwatch add comment="notify, hostname=service, count=10" host=10.0.0.20; + /tool/netwatch/add comment="notify, hostname=service, count=10" host=10.0.0.10; + /tool/netwatch/add comment="notify, hostname=service, count=10" host=10.0.0.20; ### Checking internet connectivity @@ -112,11 +112,11 @@ check `1.1.1.1` (Cloudflare DNS), `9.9.9.9` (Quad-nine DNS), `8.8.8.8` (Google DNS) or any other reliable address that indicates internet connectivity. - / tool netwatch add comment="notify, hostname=internet" host=1.1.1.1; + /tool/netwatch/add comment="notify, hostname=internet" host=1.1.1.1; A target like this suits well to be parent for other checks. - / tool netwatch add comment="notify, hostname=example.com, parent=internet" host=93.184.216.34; + /tool/netwatch/add comment="notify, hostname=example.com, parent=internet" host=93.184.216.34; ### Checking specific ISP @@ -124,12 +124,13 @@ Having several ISPs for redundancy a failed link may go unnoticed without proper monitoring. You can use routing-mark to monitor specific connections. Create a route and firewall mangle rule. - / ip route add distance=1 gateway=isp1 routing-mark=via-isp1; - / ip firewall mangle add action=mark-routing chain=output new-routing-mark=via-isp1 dst-address=1.0.0.1 passthrough=yes; + /routing/table/add fib name=via-isp1; + /ip/route/add distance=1 gateway=isp1 routing-table=via-isp1; + /ip/firewall/mangle/add action=mark-routing chain=output new-routing-mark=via-isp1 dst-address=1.0.0.1 passthrough=yes; Finally monitor the address with `netwatch-notify`. - / tool netwatch add comment="notify, hostname=quad-one via isp1" host=1.0.0.1; + /tool/netwatch/add comment="notify, hostname=quad-one via isp1" host=1.0.0.1; Note that *all* traffic to the given address is routed that way. In case of link failure this address is not available, so use something reliable but @@ -141,7 +142,7 @@ non-essential. In this example the address `1.0.0.1` is used, the same service Netwatch entries can be created to work with both - this script and [netwatch-dns](netwatch-dns.md). Just give options for both: - / tool netwatch add comment="doh, notify, hostname=cloudflare-dns" host=1.1.1.1; + /tool/netwatch/add comment="doh, notify, hostname=cloudflare-dns" host=1.1.1.1; See also -------- -- cgit v1.2.3-54-g00ecf From 6f76a41962ccf7ad756e99c8155418d281ef5452 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:24:59 +0200 Subject: doc/netwatch-syslog: RouterOS v7 path syntax --- doc/netwatch-syslog.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/netwatch-syslog.md b/doc/netwatch-syslog.md index 9a28bb9..760d98f 100644 --- a/doc/netwatch-syslog.md +++ b/doc/netwatch-syslog.md @@ -16,8 +16,8 @@ Requirements and installation Let's assume there is a remote log action and associated logging rule: - / system logging action set remote=10.0.0.1 [ find where name="remote" ]; - / system logging add action=remote topics=info; + /system/logging/action/set remote=10.0.0.1 [ find where name="remote" ]; + /system/logging/add action=remote topics=info; Just install the script: @@ -25,7 +25,7 @@ Just install the script: ... and create a netwatch matching the IP address from logging action above: - / tool netwatch add down-script=netwatch-syslog host=10.0.0.1 up-script=netwatch-syslog; + /tool/netwatch/add down-script=netwatch-syslog host=10.0.0.1 up-script=netwatch-syslog; All logging rules are disabled when host is down. -- cgit v1.2.3-54-g00ecf From 47b6f8941aaa71fcbcee5329118517ffe92b306d Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:25:45 +0200 Subject: doc/ospf-to-leds: RouterOS v7 path syntax --- doc/ospf-to-leds.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/ospf-to-leds.md b/doc/ospf-to-leds.md index 2fba33e..5ab5c75 100644 --- a/doc/ospf-to-leds.md +++ b/doc/ospf-to-leds.md @@ -22,7 +22,7 @@ Just install the script: ... and add a scheduler to run the script periodically: - / system scheduler add interval=20s name=ospf-to-leds on-event="/ system script run ospf-to-leds;" start-time=startup; + /system/scheduler/add interval=20s name=ospf-to-leds on-event="/system/script/run ospf-to-leds;" start-time=startup; Configuration ------------- @@ -30,7 +30,7 @@ Configuration The configuration goes to OSPF instance's comment. To visualize state for instance `default` via LED `user-led` set this: - / routing ospf instance set default comment="ospf-to-leds, leds=user-led"; + /routing/ospf/instance/set default comment="ospf-to-leds, leds=user-led"; --- [◀ Go back to main README](../README.md) -- cgit v1.2.3-54-g00ecf From eb014b26b2053e993cfa9ec8e97bd48c53c848f9 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:26:26 +0200 Subject: doc/packages-update: RouterOS v7 path syntax --- doc/packages-update.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/packages-update.md b/doc/packages-update.md index 243e72b..57f02d9 100644 --- a/doc/packages-update.md +++ b/doc/packages-update.md @@ -10,7 +10,7 @@ Description ----------- In rare cases RouterOS fails to properly downlaod package on update -(`/ system package update install`), resulting in borked system with missing +(`/system/package/update/install`), resulting in borked system with missing packages. This script tries to avoid this situation by doing some basic verification. @@ -35,7 +35,7 @@ Usage and invocation Alternatively run it manually: - / system script run packages-update; + /system/script/run packages-update; See also -------- -- cgit v1.2.3-54-g00ecf From d9d2d67a4e66bd7df0bb0d3ae89f0acc88ed5b3b Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:26:51 +0200 Subject: doc/ppp-on-up: RouterOS v7 path syntax --- doc/ppp-on-up.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/ppp-on-up.md b/doc/ppp-on-up.md index ae58da5..7545c5e 100644 --- a/doc/ppp-on-up.md +++ b/doc/ppp-on-up.md @@ -24,7 +24,7 @@ Just install the script: ... and make it the `on-up` script for ppp profile: - / ppp profile set on-up=ppp-on-up [ find ]; + /ppp/profile/set on-up=ppp-on-up [ find ]; See also -------- -- cgit v1.2.3-54-g00ecf From 45232019f4462d1a979eee5b935432888dbfad0b Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:27:23 +0200 Subject: doc/rotate-ntp: RouterOS v7 path syntax --- doc/rotate-ntp.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/rotate-ntp.md b/doc/rotate-ntp.md index 775b977..f548eba 100644 --- a/doc/rotate-ntp.md +++ b/doc/rotate-ntp.md @@ -36,7 +36,7 @@ addresses from pool if required. Alternatively a scheduler can be created: - / system scheduler add interval=5d name=rotate-ntp on-event="/ system script run rotate-ntp;" start-time=startup; + /system/scheduler/add interval=5d name=rotate-ntp on-event="/system/script/run rotate-ntp;" start-time=startup; --- [◀ Go back to main README](../README.md) -- cgit v1.2.3-54-g00ecf From 25d11f798d63788dcfa89fecb4962d65edc25d1e Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:28:24 +0200 Subject: doc/sms-action: RouterOS v7 path syntax --- doc/sms-action.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sms-action.md b/doc/sms-action.md index 8442774..d2e3252 100644 --- a/doc/sms-action.md +++ b/doc/sms-action.md @@ -30,7 +30,7 @@ The configuration goes to `global-config-overlay`, this is the only parameter: Then enable SMS actions: - / tool sms set allowed-number=+491234567890 receive-enabled=yes secret=s3cr3t; + /tool/sms/set allowed-number=+491234567890 receive-enabled=yes secret=s3cr3t; Usage and invocation -------------------- -- cgit v1.2.3-54-g00ecf From 06509f6af424a6a30aa2bc630729414d83e67593 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:28:35 +0200 Subject: doc/sms-forward: RouterOS v7 path syntax --- doc/sms-forward.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/sms-forward.md b/doc/sms-forward.md index 9ebae69..80cb7ad 100644 --- a/doc/sms-forward.md +++ b/doc/sms-forward.md @@ -26,7 +26,7 @@ Just install the script: ... and add a scheduler to run it periodically: - / system scheduler add interval=2m name=sms-forward on-event="/ system script run sms-forward;" start-time=startup; + /system/scheduler/add interval=2m name=sms-forward on-event="/system/script/run sms-forward;" start-time=startup; Configuration ------------- @@ -36,7 +36,7 @@ Notification settings are required for e-mail, [telegram](mod/notification-telegram.md). Also you have to enable receiving of SMS: - / tool sms set receive-enabled=yes; + /tool/sms/set receive-enabled=yes; See also -------- -- cgit v1.2.3-54-g00ecf From 4ca43dcde3de7680d83f989e398686da587550d5 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:29:01 +0200 Subject: doc/ssh-keys-import: RouterOS v7 path syntax --- doc/ssh-keys-import.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/ssh-keys-import.md b/doc/ssh-keys-import.md index 3dc8ccf..d83311f 100644 --- a/doc/ssh-keys-import.md +++ b/doc/ssh-keys-import.md @@ -22,7 +22,7 @@ Usage and invocation Copy files with extension "`pub`" containing public SSH keys for your device. Then run the script: - / system script run ssh-keys-import; + /system/script/run ssh-keys-import; Starting with an `authorized_keys` file you can split it on a shell: -- cgit v1.2.3-54-g00ecf From c2637ee72c454c9df46ca3ac37a6eacc283a9cfe Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:29:25 +0200 Subject: doc/super-mario-theme: RouterOS v7 path syntax --- doc/super-mario-theme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/super-mario-theme.md b/doc/super-mario-theme.md index 68484dc..8142cda 100644 --- a/doc/super-mario-theme.md +++ b/doc/super-mario-theme.md @@ -22,7 +22,7 @@ Usage and invocation Just run the script to play: - / system script run super-mario-theme; + /system/script/run super-mario-theme; For extra fun use it for dhcp lease script. :) -- cgit v1.2.3-54-g00ecf From 347cb4f3b66634df0bfebfdf73ca111fe4dc7cb2 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:29:49 +0200 Subject: doc/unattended-lte-firmware-upgrade: RouterOS v7 path syntax --- doc/unattended-lte-firmware-upgrade.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/unattended-lte-firmware-upgrade.md b/doc/unattended-lte-firmware-upgrade.md index 65801a6..63f2793 100644 --- a/doc/unattended-lte-firmware-upgrade.md +++ b/doc/unattended-lte-firmware-upgrade.md @@ -32,7 +32,7 @@ Usage and invocation Run the script if an upgrade for your LTE hardware is available: - / system script run unattended-lte-firmware-upgrade; + /system/script/run unattended-lte-firmware-upgrade; Then be patient, go for a coffee and wait for the upgrade process to finish. -- cgit v1.2.3-54-g00ecf From f759a9a52e21b8bd3c2fa79991689ce3270a7723 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:31:03 +0200 Subject: doc/update-gre-address: RouterOS v7 path syntax --- doc/update-gre-address.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/update-gre-address.md b/doc/update-gre-address.md index c19e138..7e87743 100644 --- a/doc/update-gre-address.md +++ b/doc/update-gre-address.md @@ -26,7 +26,7 @@ Just install the script: ... and add a scheduler to run the script periodically: - / system scheduler add interval=30s name=update-gre-address on-event="/ system script run update-gre-address;" start-time=startup; + /system/scheduler/add interval=30s name=update-gre-address on-event="/system/script/run update-gre-address;" start-time=startup; Configuration ------------- @@ -34,7 +34,7 @@ Configuration The configuration goes to interface's comment. Add the client's IKEv2 certificate CN into the comment: - / interface gre set comment="ikev2-client1" gre-client1; + /interface/gre/set comment="ikev2-client1" gre-client1; --- [◀ Go back to main README](../README.md) -- cgit v1.2.3-54-g00ecf From 09d926ed2fefb570d9810970306037910d6926d9 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Wed, 11 May 2022 10:31:17 +0200 Subject: doc/update-tunnelbroker: RouterOS v7 path syntax --- doc/update-tunnelbroker.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/update-tunnelbroker.md b/doc/update-tunnelbroker.md index 9dd7f19..bfe8e25 100644 --- a/doc/update-tunnelbroker.md +++ b/doc/update-tunnelbroker.md @@ -28,11 +28,11 @@ Configuration The configuration goes to interface's comment: - / interface 6to4 set comment="tunnelbroker, user=user, pass=s3cr3t, id=12345" tunnelbroker; + /interface/6to4/set comment="tunnelbroker, user=user, pass=s3cr3t, id=12345" tunnelbroker; Also enabling dynamic DNS in Mikrotik cloud is required: - / ip cloud set ddns-enabled=yes; + /ip/cloud/set ddns-enabled=yes; See also -------- -- cgit v1.2.3-54-g00ecf