„MikroTik dinamikus WAN interfészek kezelése” változatai közötti eltérés
| (37 közbenső módosítás ugyanattól a szerkesztőtől nincs mutatva) | |||
| 1. sor: | 1. sor: | ||
{{DISPLAYTITLE:MikroTik dinamikus címek kezelése}} | |||
==Összefoglalás== | ==Összefoglalás== | ||
A leírás MikroTik RouterOS 6. | A leírás MikroTik RouterOS 6.48.6 verzión készült. | ||
Ha a WAN interfész(ek)en dinamikus IP cím van, de mégis szolgáltatás kell, hogy fusson rajtuk, amikor a cím(ek) változnak, szükség van az címek automatikus frissítésére egyéb rendszerekben, mint például DNS rekordok vagy Address list-ek esetén. | |||
A következő | A következő Mikrotik RouterOS szkript ez esetben lehet hasznos. | ||
== | == Funkciók == | ||
===Időzítés=== | |||
A script első futtatásakor automatikusan létrehozza az időzített futtatást a MikroTik RouterOS-ben. A '''$scriptName''' paraméterben a script nevét kell megadni (amely néven elmentettük), A '''$defaultInterval''' paraméterben pedig a futtatás gyakoriságát lehet megadni.<syntaxhighlight lang="shell"> | |||
# scriptName: (string) This script name in Mikrotik RourerOS | |||
# defaultInterval: (time) Interval of schelude | |||
:local | :local scriptName "DynamicWAN" | ||
:local | :local defaultInterval 00:01:00 | ||
</syntaxhighlight> | |||
=== Értesítés === | |||
A script képes értesítés küldeni syslog és email -en keresztül. A '''$logFacility''' paraméterben a log szintjét állíthatjuk, a '''$emailFacility''' paraméterben pedig az email értesítések szintjét. Az email küldés paramétereit az '''$Email...''' paraméter csoportban állíthatjuk be.<syntaxhighlight lang="shell"> | |||
# logFacility, | |||
# emailFacility: (string) Log and email facility. Valuses. none,debug,info,warn,error | |||
:global logFacility "info" | |||
:global emailFacility "none" | |||
# Email parameters | |||
# EmailServer: (string) SMTP server host | |||
# EmailPort: (num) SMTP host | |||
# EmailTLS: (string) SMTP TLS | |||
# EmailUser: (string) SMTP user | |||
# EmailPassword: (string) SMTP password | |||
# EmailRecipient: (string) Email recipient | |||
# EmailSender: (string) Email sender | |||
:local EmailServer "myEmailserver" | |||
:local EmailPort 25 | |||
:local EmailTLS "no" | |||
:local EmailUser "username" | |||
:local EmailPassword "password" | |||
:local EmailRecipient "Name <email address>" | |||
:local EmailSender "Name <email address>" | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== | === Online ellenőrzés === | ||
Tipikusan több WAN interfész esetében szükséges ellenőrizni, hogy az interfész valóban képes e összeköttetést biztosítani az internettel. Ezt pusztán L2 vagy L3 szinten nem elég ellenőrizni, hiszen működő link és helyes IP beállítások mellett is elképzelhető, jellemzően szolgáltató hiba esetén, hogy valójában nincs internetkapcsolat. | |||
A legmegfelelőbb teszt az internet kapcsolat ellenőrzésére, hogy megnézzük, elérünk e az adott interfészen keresztül, egy adott, biztosan elérhető hostot. A script az ellenőrzést ping-el hajtja végre. | |||
A script policy-based route-okat hoz létre interfészenként WAN0, WAN1 ... WANX néven, amit majd az ellenőrzéskor használ. | |||
A '''$pingSites''' paraméterben megadott host-okkal ellenőriz. Ha az első host nem elérhető, csak akkor ellenőrzi a másodikat, ha az sem, akkor a harmadikat, stb. Ha az összes host elérhetetlen az interfészen keresztül, akkor minősíti offline-nak az interfészt. | |||
Az '''$Int->$if''' paraméterben adhatjuk meg a WAN intefész nevét.<syntaxhighlight lang="shell"> | |||
# pingSites: (array) Ping sites for check that WAN is alive | |||
:local pingSites { | |||
"example.com"; | |||
8.8.8.8; | |||
} | |||
# Int: (array) Array of WAN interfaces | |||
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address. | |||
:local Int { | |||
{ | |||
"if"="WAN1"; | |||
}; | |||
{ | |||
"if"="WAN2"; | |||
}; | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== | === Default route === | ||
Ha a | Ha pl. a WAN1 interfész online, de nem forgalmaz, míg a WAN2 forgalmaz, akkor át kell állni a WAN2-re. A scripteben megadhatunk online és offline állapothoz tartozó route distance-ot. Ha a WAN1 offline route distance nagyobb, mint a WAN2 online route distance, akkor a default route átáll a WAN2-re. Lsd. lenti példa. | ||
if ( | Az '''$Int->$distanceOnline,''' '''$Int->$distanceOffline,''' paraméterekben adhatjuk meg a route distance értékeket. A funkció működéséhez mindkét config tömb elemnek léteznie kell numeric értékkel.<syntaxhighlight lang="shell"> | ||
# Int: (array) Array of WAN interfaces | |||
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address. | |||
# distanceOnline, | |||
# distanceOffline: (num) Route Distance in online and offline state. Both settings required to set route distance. | |||
:local Int { | |||
{ | |||
"if"="WAN1"; | |||
"distanceOnline"=1; | |||
"distanceOffline"=11; | |||
}; | |||
{ | |||
"if"="WAN2"; | |||
"distanceOnline"=2; | |||
"distanceOffline"=21; | |||
}; | |||
} | } | ||
</syntaxhighlight> | |||
=== Address list frissítése === | |||
Ha a WAN IP-vel dolgozni szeretnénk, pl. tűzfal szabályban, akkor egy "address list"-ben lehet tárolni és frissíteni a dinamikus címet. Az '''$Int->$addresslist''' paraméter adja meg az address list nevét, melyben tárolni szerenénk az interfész címét. Megadható string-ként egy lista, vagy tömbként több lista is. | |||
Dinamikus address list-et hoz létre a '''$defaultInterval''' paraméterben megadott lease time-al. <syntaxhighlight lang="shell"> | |||
# Int: (array) Array of WAN interfaces | |||
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address. | |||
# addresslist: (string|array) IP address list(s) what will be refresh with address of interface and lease time as $defaultInterval. | |||
:local Int { | |||
{ | |||
"if"="WAN1"; | |||
"addresslist"="WAN"; | |||
}; | |||
{ | |||
"if"="WAN2"; | |||
"addresslist"={ | |||
"WAN"; | |||
"WAN2"; | |||
}; | |||
}; | |||
} | } | ||
</syntaxhighlight> | |||
===DNS rekord frissítése=== | |||
DNSSEC-et támogató névszerverek esetén lehetőség van egy domain "A" rekordjának frissítésére. A rekord frissítéshez szükség van egy kulcsra (authorization key / Transfer Signature key), amelyet a DNS szerver üzemeltetőjétől szerezhetünk be. | |||
A '''$DNS...''' paraméter csoportban állíthatjuk be a DNS frissítéshez szükséges paramétereket. | |||
Az '''$Int->$dns''' paraméterrel adhatjuk meg, mely WAN iterfész IP címe, mely DNS rekordon frissüljön. Megadható string-ként egy DNS rekord, vagy tömbként több DNS rekord is.<syntaxhighlight lang="shell"> | |||
# DNS refresh parameters | |||
# DNSserver: (string) Nameserver host | |||
# DNSdomain: (string) Domain zone name | |||
# DNSttl: (num) Domain record TTL | |||
# DNSkeyname: (string) Key name | |||
# DNSkey: (string) Key | |||
:local DNSserver "myNameServer"; # Nameserver host | |||
:local DNSdomain "mydomain.com"; # Domain zone name | |||
:local DNSttl 3600; # Domain record TTL | |||
:local DNSkeyname "keyname"; # Key name | |||
:local DNSkey "key"; # Key | |||
# Int: (array) Array of WAN interfaces | |||
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address. | |||
# dns: (string|array) Subdomain(s) what have to refresh with the address of interface according to DNS refresh parameters. | |||
:local Int { | |||
{ | |||
"if"="WAN1"; | |||
"dns"="isp1"; | |||
}; | |||
{ | |||
"if"="WAN2"; | |||
"dns"={"isp2";"backupisp"}; | |||
}; | |||
} | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== | ===Dinamikus tunnel=== | ||
A | A szkript EoIP, IPIP, és GRE tunnel interfészeket támogat. | ||
Az '''$Int->$interfaces''' tömb paraméterrel adhatjuk meg, mely WAN iterfész IP címe, mely tunnel interfész(ek) local-address paramétere frissüljön. | |||
Az '''$Int->$interfaces->$if''' paraméter a tunnel interész nevét adja meg. | |||
'''$Int->$interfaces->$disableOffline''' paraméter true érték esetén a tunnel interfészt letiltja, amíg a WAN intefész offline, azaz feleslegesen nem fog próbálkozni a router a tunnel felépítésével. | |||
# | '''Int->$interfaces->$localAddress''' paraméter true érték esetén a tunnel interfész local-adress paramétere felveszi a WAN intefész mindenkori IP címét. Így dinamikus tunnel alakítható ki.<syntaxhighlight lang="shell"> | ||
if ( | # Int: (array) Array of WAN interfaces | ||
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address. | |||
# interfaces: (array) Interface(s) what have to manage by WAN states. | |||
# interfaces->if: (string) Interface name. | |||
# interfaces->disableOffline: (boolean) If true, when WAN interface goes offline, the interface will be disabled too. | |||
# interfaces->localAddress: (boolean) If true, the lacal-address will be refresh with WAN address. The interface type have to be tunnel. | |||
:local Int { | |||
{ | |||
"if"="WAN1"; | |||
"interfaces"={ | |||
{ | |||
"if"="tunnel1"; | |||
"disableOffline"=true; | |||
"localAddress"=true; | |||
}; | |||
}; | |||
}; | |||
{ | |||
"if"="WAN2"; | |||
"interfaces"={ | |||
{ | |||
"if"="tunnel2"; | |||
"localAddress"=true; | |||
}; | |||
}; | |||
}; | |||
} | } | ||
</syntaxhighlight> | |||
===VRRP prioritás=== | |||
VRRP prioritást állít attól függően, hogy a WAN interfész online vagy offline. Ha a WAn offline, a prioriás növelésével VRRP Master állapot átatható a VRRP Backup párjának. | |||
Az '''$Int->$interfaces''' tömb paraméterrel adhatjuk meg, mely WAN iterfész, mely vrrp interfész(ek) prioritása frissüljön. | |||
Az '''$Int->$interfaces->$if''' paraméter a vrrp interész nevét adja meg. | |||
# | '''$Int->$interfaces->$VRRPOnline''' és '''$Int->$interfaces->$VRRPOffline''' paraméterrel a vrrp interfészt online és offline prioritása adható meg. <syntaxhighlight lang="shell"> | ||
: | # Int: (array) Array of WAN interfaces | ||
:local | # if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address. | ||
if | # interfaces: (array) Interface(s) what have to manage by WAN states. | ||
# interfaces->if: (string) Interface name. | |||
# interfaces->VRRPOnline, | |||
# interfaces->VRRPOffline: (num) VRRP interface priority in online and offline state. Both settings required and the interface type have to be vrrp. | |||
:local Int { | |||
{ | |||
"if"="WAN1"; | |||
"interfaces"={ | |||
{ | |||
"if"="vrrp1"; | |||
"VRRPOnline"=1; | |||
"VRRPOffline"=11; | |||
}; | |||
}; | |||
}; | |||
{ | |||
"if"="WAN2"; | |||
"interfaces"={ | |||
{ | |||
"if"="tunnel2"; | |||
"localAddress"=true; | |||
}; | |||
{ | |||
"if"="vrrp2"; | |||
"VRRPOnline"=2; | |||
"VRRPOffline"=21; | |||
}; | |||
}; | |||
}; | |||
} | } | ||
</syntaxhighlight> | |||
===Szkipt futtatás=== | |||
Ha egyedi funkcióval szeretnénk kibővíteni a szkipt működését, lehetőség van szkript futtatására a WAN interfész eseményeinél. | |||
Az '''$Int->$script''' paraméterben felsorolható egy vagy több RouterOS szkcript, mely a WAN interfész eseményeinél lefut. A paramétereket globális változóban kapja meg a futatandó szkript. | |||
* WANevent: Az esemény megnevezése. Lehetséges értékek: online, offline, IPCange | |||
* WANinterface: A WAN interfész neve. | |||
* WANnewIP, WANprevIP: A WAN interfész előző és az aktuális IP címe. Csak az IPCange eseménynél frissül! | |||
<syntaxhighlight lang="shell"> | |||
# Int: (array) Array of WAN interfaces | |||
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address. | |||
# script: (string|array) Run script at events of WAN interface. | |||
# The fuction gives some parameters in global wariables: | |||
# WANevent: The event when the script was called. Values: online, offline, IPCange | |||
# WANinterface: The WAN interface's name, same as "if" parameter. | |||
# WANnewIP, WANprevIP: The previous and actual IP address of WAN interface. Will be refresh only at IPCange event! | |||
:local Int { | |||
{ | |||
"if"="WAN1"; | |||
"script"={ | |||
"scriptname"; | |||
}; | |||
}; | |||
} | } | ||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
[[Kategória:MikroTik]] | |||
A lap jelenlegi, 2022. február 3., 15:08-kori változata
Összefoglalás
A leírás MikroTik RouterOS 6.48.6 verzión készült.
Ha a WAN interfész(ek)en dinamikus IP cím van, de mégis szolgáltatás kell, hogy fusson rajtuk, amikor a cím(ek) változnak, szükség van az címek automatikus frissítésére egyéb rendszerekben, mint például DNS rekordok vagy Address list-ek esetén.
A következő Mikrotik RouterOS szkript ez esetben lehet hasznos.
Funkciók
Időzítés
A script első futtatásakor automatikusan létrehozza az időzített futtatást a MikroTik RouterOS-ben. A $scriptName paraméterben a script nevét kell megadni (amely néven elmentettük), A $defaultInterval paraméterben pedig a futtatás gyakoriságát lehet megadni.
# scriptName: (string) This script name in Mikrotik RourerOS
# defaultInterval: (time) Interval of schelude
:local scriptName "DynamicWAN"
:local defaultInterval 00:01:00
Értesítés
A script képes értesítés küldeni syslog és email -en keresztül. A $logFacility paraméterben a log szintjét állíthatjuk, a $emailFacility paraméterben pedig az email értesítések szintjét. Az email küldés paramétereit az $Email... paraméter csoportban állíthatjuk be.
# logFacility,
# emailFacility: (string) Log and email facility. Valuses. none,debug,info,warn,error
:global logFacility "info"
:global emailFacility "none"
# Email parameters
# EmailServer: (string) SMTP server host
# EmailPort: (num) SMTP host
# EmailTLS: (string) SMTP TLS
# EmailUser: (string) SMTP user
# EmailPassword: (string) SMTP password
# EmailRecipient: (string) Email recipient
# EmailSender: (string) Email sender
:local EmailServer "myEmailserver"
:local EmailPort 25
:local EmailTLS "no"
:local EmailUser "username"
:local EmailPassword "password"
:local EmailRecipient "Name <email address>"
:local EmailSender "Name <email address>"
Online ellenőrzés
Tipikusan több WAN interfész esetében szükséges ellenőrizni, hogy az interfész valóban képes e összeköttetést biztosítani az internettel. Ezt pusztán L2 vagy L3 szinten nem elég ellenőrizni, hiszen működő link és helyes IP beállítások mellett is elképzelhető, jellemzően szolgáltató hiba esetén, hogy valójában nincs internetkapcsolat.
A legmegfelelőbb teszt az internet kapcsolat ellenőrzésére, hogy megnézzük, elérünk e az adott interfészen keresztül, egy adott, biztosan elérhető hostot. A script az ellenőrzést ping-el hajtja végre.
A script policy-based route-okat hoz létre interfészenként WAN0, WAN1 ... WANX néven, amit majd az ellenőrzéskor használ.
A $pingSites paraméterben megadott host-okkal ellenőriz. Ha az első host nem elérhető, csak akkor ellenőrzi a másodikat, ha az sem, akkor a harmadikat, stb. Ha az összes host elérhetetlen az interfészen keresztül, akkor minősíti offline-nak az interfészt.
Az $Int->$if paraméterben adhatjuk meg a WAN intefész nevét.
# pingSites: (array) Ping sites for check that WAN is alive
:local pingSites {
"example.com";
8.8.8.8;
}
# Int: (array) Array of WAN interfaces
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address.
:local Int {
{
"if"="WAN1";
};
{
"if"="WAN2";
};
}
Default route
Ha pl. a WAN1 interfész online, de nem forgalmaz, míg a WAN2 forgalmaz, akkor át kell állni a WAN2-re. A scripteben megadhatunk online és offline állapothoz tartozó route distance-ot. Ha a WAN1 offline route distance nagyobb, mint a WAN2 online route distance, akkor a default route átáll a WAN2-re. Lsd. lenti példa.
Az $Int->$distanceOnline, $Int->$distanceOffline, paraméterekben adhatjuk meg a route distance értékeket. A funkció működéséhez mindkét config tömb elemnek léteznie kell numeric értékkel.
# Int: (array) Array of WAN interfaces
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address.
# distanceOnline,
# distanceOffline: (num) Route Distance in online and offline state. Both settings required to set route distance.
:local Int {
{
"if"="WAN1";
"distanceOnline"=1;
"distanceOffline"=11;
};
{
"if"="WAN2";
"distanceOnline"=2;
"distanceOffline"=21;
};
}
Address list frissítése
Ha a WAN IP-vel dolgozni szeretnénk, pl. tűzfal szabályban, akkor egy "address list"-ben lehet tárolni és frissíteni a dinamikus címet. Az $Int->$addresslist paraméter adja meg az address list nevét, melyben tárolni szerenénk az interfész címét. Megadható string-ként egy lista, vagy tömbként több lista is.
Dinamikus address list-et hoz létre a $defaultInterval paraméterben megadott lease time-al.
# Int: (array) Array of WAN interfaces
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address.
# addresslist: (string|array) IP address list(s) what will be refresh with address of interface and lease time as $defaultInterval.
:local Int {
{
"if"="WAN1";
"addresslist"="WAN";
};
{
"if"="WAN2";
"addresslist"={
"WAN";
"WAN2";
};
};
}
DNS rekord frissítése
DNSSEC-et támogató névszerverek esetén lehetőség van egy domain "A" rekordjának frissítésére. A rekord frissítéshez szükség van egy kulcsra (authorization key / Transfer Signature key), amelyet a DNS szerver üzemeltetőjétől szerezhetünk be.
A $DNS... paraméter csoportban állíthatjuk be a DNS frissítéshez szükséges paramétereket.
Az $Int->$dns paraméterrel adhatjuk meg, mely WAN iterfész IP címe, mely DNS rekordon frissüljön. Megadható string-ként egy DNS rekord, vagy tömbként több DNS rekord is.
# DNS refresh parameters
# DNSserver: (string) Nameserver host
# DNSdomain: (string) Domain zone name
# DNSttl: (num) Domain record TTL
# DNSkeyname: (string) Key name
# DNSkey: (string) Key
:local DNSserver "myNameServer"; # Nameserver host
:local DNSdomain "mydomain.com"; # Domain zone name
:local DNSttl 3600; # Domain record TTL
:local DNSkeyname "keyname"; # Key name
:local DNSkey "key"; # Key
# Int: (array) Array of WAN interfaces
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address.
# dns: (string|array) Subdomain(s) what have to refresh with the address of interface according to DNS refresh parameters.
:local Int {
{
"if"="WAN1";
"dns"="isp1";
};
{
"if"="WAN2";
"dns"={"isp2";"backupisp"};
};
}
Dinamikus tunnel
A szkript EoIP, IPIP, és GRE tunnel interfészeket támogat.
Az $Int->$interfaces tömb paraméterrel adhatjuk meg, mely WAN iterfész IP címe, mely tunnel interfész(ek) local-address paramétere frissüljön.
Az $Int->$interfaces->$if paraméter a tunnel interész nevét adja meg.
$Int->$interfaces->$disableOffline paraméter true érték esetén a tunnel interfészt letiltja, amíg a WAN intefész offline, azaz feleslegesen nem fog próbálkozni a router a tunnel felépítésével.
Int->$interfaces->$localAddress paraméter true érték esetén a tunnel interfész local-adress paramétere felveszi a WAN intefész mindenkori IP címét. Így dinamikus tunnel alakítható ki.
# Int: (array) Array of WAN interfaces
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address.
# interfaces: (array) Interface(s) what have to manage by WAN states.
# interfaces->if: (string) Interface name.
# interfaces->disableOffline: (boolean) If true, when WAN interface goes offline, the interface will be disabled too.
# interfaces->localAddress: (boolean) If true, the lacal-address will be refresh with WAN address. The interface type have to be tunnel.
:local Int {
{
"if"="WAN1";
"interfaces"={
{
"if"="tunnel1";
"disableOffline"=true;
"localAddress"=true;
};
};
};
{
"if"="WAN2";
"interfaces"={
{
"if"="tunnel2";
"localAddress"=true;
};
};
};
}
VRRP prioritás
VRRP prioritást állít attól függően, hogy a WAN interfész online vagy offline. Ha a WAn offline, a prioriás növelésével VRRP Master állapot átatható a VRRP Backup párjának.
Az $Int->$interfaces tömb paraméterrel adhatjuk meg, mely WAN iterfész, mely vrrp interfész(ek) prioritása frissüljön.
Az $Int->$interfaces->$if paraméter a vrrp interész nevét adja meg.
$Int->$interfaces->$VRRPOnline és $Int->$interfaces->$VRRPOffline paraméterrel a vrrp interfészt online és offline prioritása adható meg.
# Int: (array) Array of WAN interfaces
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address.
# interfaces: (array) Interface(s) what have to manage by WAN states.
# interfaces->if: (string) Interface name.
# interfaces->VRRPOnline,
# interfaces->VRRPOffline: (num) VRRP interface priority in online and offline state. Both settings required and the interface type have to be vrrp.
:local Int {
{
"if"="WAN1";
"interfaces"={
{
"if"="vrrp1";
"VRRPOnline"=1;
"VRRPOffline"=11;
};
};
};
{
"if"="WAN2";
"interfaces"={
{
"if"="tunnel2";
"localAddress"=true;
};
{
"if"="vrrp2";
"VRRPOnline"=2;
"VRRPOffline"=21;
};
};
};
}
Szkipt futtatás
Ha egyedi funkcióval szeretnénk kibővíteni a szkipt működését, lehetőség van szkript futtatására a WAN interfész eseményeinél.
Az $Int->$script paraméterben felsorolható egy vagy több RouterOS szkcript, mely a WAN interfész eseményeinél lefut. A paramétereket globális változóban kapja meg a futatandó szkript.
- WANevent: Az esemény megnevezése. Lehetséges értékek: online, offline, IPCange
- WANinterface: A WAN interfész neve.
- WANnewIP, WANprevIP: A WAN interfész előző és az aktuális IP címe. Csak az IPCange eseménynél frissül!
# Int: (array) Array of WAN interfaces
# if: (string) ISP (WAN) iterface name. The intervace have to have an synamic IP address.
# script: (string|array) Run script at events of WAN interface.
# The fuction gives some parameters in global wariables:
# WANevent: The event when the script was called. Values: online, offline, IPCange
# WANinterface: The WAN interface's name, same as "if" parameter.
# WANnewIP, WANprevIP: The previous and actual IP address of WAN interface. Will be refresh only at IPCange event!
:local Int {
{
"if"="WAN1";
"script"={
"scriptname";
};
};
}