:global GlobalFuncReady false;
# Git commit id & info, expected configuration version
-:global CommitId "main/332/3b98172a";
+:global CommitId "main/333/a01c1573";
:global CommitTAG "unknown";
-:global CommitInfo "Autocommit in repo: ros.vados.ru, generated by owner: root, in 03:10:02 01.05.2026.";
+:global CommitInfo "Autocommit in repo: ros.vados.ru, generated by owner: root, in 03:15:02 01.05.2026.";
# The variables are received right here.
:global GlobalConfVersion 138;
-:global ListName
-:global Servers
-:global Done
+:global ListRKN;
+:global SrvRKN;
+:global Done;
#has $Done been initialized?
:if ([:typeof $Done] != "boolean") do={
:set Done false;
#delete old address lists
-:foreach aListItem in=[/ip firewall address-list find list=$ListName] do={
+:foreach aListItem in=[/ip firewall address-list find list=$ListRKN] do={
/ip firewall address-list remove $aListItem;
}
-:foreach aServer in=$Servers do={
+:foreach aSrvRKN in=$SrvRKN do={
#force the dns entries to be cached
:do {
- :resolve $aServer;
+ :resolve $aSrvRKN;
} on-error={
:log error "dns resolve failure [ ip - resolve ip ]"
}
- :foreach dnsRecord in=[/ip dns cache all find where (name=$aServer)] do={
+ :foreach dnsRecord in=[/ip dns cache all find where (name=$aSrvRKN)] do={
#if it's an A records add it directly
:if ([/ip dns cache all get $dnsRecord type]="A") do={
:local newAddress [/ip dns cache all get $dnsRecord data];
:do {
- /ip firewall address-list add list=$ListName address=$newAddress comment=$aServer;
+ /ip firewall address-list add list=$ListRKN address=$newAddress comment=$aSrvRKN;
} on-error={
:log error "error when adding ip to list: $newAddress"
}
:if ([/ip dns cache all get $dnsRecord type]="CNAME") do={
:local cname;
:local nextCname
- :set cname [/ip dns cache all find where (name=$aServer && type="CNAME")];
+ :set cname [/ip dns cache all find where (name=$aSrvRKN && type="CNAME")];
:set nextCname [/ip dns cache all find where (name=[/ip dns cache all get $cname data] && type="CNAME")];
:while ($nextCname != "") do={
#add the a records we found
:foreach aRecord in=[/ip dns cache all find where (name=[/ip dns cache all get $cname data] && type="A")] do={
:do {
- /ip firewall address-list add list=$ListName address=[/ip dns cache all get $aRecord data] comment=$aServer;
+ /ip firewall address-list add list=$ListRKN address=[/ip dns cache all get $aRecord data] comment=$aSrvRKN;
} on-error={
:log error "error when adding ip to list: $newAddress"
}
}
}
}
-
-#allow other scripts to call this
-:set Done true
\ No newline at end of file