Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --- routeros-arm-6.48.4/nova/lib/defconf/get-custom-defconf 2021-08-17 08:57:34.000000000 -0300
- +++ routeros-7.1rc1-arm/nova/lib/defconf/get-custom-defconf 2021-08-13 04:30:32.000000000 -0300
- @@ -137,15 +137,11 @@
- :local matched 0;
- :local break 0;
- :do {
- - :local tmpPos 0;
- :set oldPos $pos
- :set pos [$findNextSection $boardStr $oldPos]
- - #special case if section ends with +, assuming that there can be only one +
- - :if ([:pick $boardStr ($pos-1)] = "+") do={
- - :set $tmpPos ($pos-1)
- - :set pos [$findNextSection $boardStr $tmpPos]
- - }
- :set tmp [:pick $boardStr $oldPos ($pos-1)]
- + #special case if section ends with +, assuming that there can be only one +
- + :if ([:pick $tmp ([:len $tmp]-1)] = "+") do={:set $pos ($pos-1)}
- # break parser for now if board has LTE iface
- :if ($tmp~"LTE") do={
- @@ -175,7 +171,7 @@
- }
- } else={
- # wireless
- - :if ($tmp~"^[0-9SHPacndyDTQ]*\$") do={
- + :if ($tmp~"^[0-9SHPacndyxDTQO]*\$") do={
- :set matched 1
- :set wireless "$wireless $[:pick $boardStr $oldPos $pos]"
- }
- @@ -212,6 +208,7 @@
- :local isAc 0
- :local isAd 0
- :local isAy 0
- + :local isAx 0
- :local chains "0"
- :local band;
- @@ -237,6 +234,7 @@
- "isN"=$isN;
- "isAd"=$isAd;
- "isAy"=$isAy;
- + "isAx"=$isAx;
- "frequencyMode"=$frequency
- }
- }
- @@ -246,6 +244,7 @@
- :set isAc 0
- :set isAd 0
- :set isAy 0
- + :set isAx 0
- :set chains "0"
- }
- # ignore card power
- @@ -262,7 +261,11 @@
- :if ($tmp = "ay") do={
- :set isAy 1; :set pos ($pos+1)
- } else={
- - :log warning "DefConf gen: Invalid 802.11 protocol, expected 'ac'";
- + :if ($tmp = "ax") do={
- + :set isAx 1; :set pos ($pos+1)
- + } else={
- + :log warning "DefConf gen: Invalid 802.11 protocol, expected 'ac'";
- + }
- }
- }
- }
- @@ -271,8 +274,13 @@
- :if ($tmp = "D") do={ :set chains "0,1" }
- :if ($tmp = "T") do={ :set chains "0,1,2" }
- :if ($tmp = "Q") do={
- - :if ($isAc = 1) do={ :set chains "0,1,2,3" } else={
- - :log warning "DefConf gen: quad chains are only for 'ac' boards";
- + :if ($isAc = 1 || $isAx = 1) do={ :set chains "0,1,2,3" } else={
- + :log warning "DefConf gen: quad chains are only for 'ac' or 'ax' boards";
- + }
- + }
- + :if ($tmp = "O") do={
- + :if ($isAx = 1) do={ :set chains "0,1,2,3,4,5,6,7" } else={
- + :log warning "DefConf gen: octa chains are only for 'ax' boards";
- }
- }
- :set pos ($pos+1)
- @@ -284,6 +292,7 @@
- "isN"=$isN;
- "isAd"=$isAd;
- "isAy"=$isAy;
- + "isAx"=$isAx;
- "frequencyMode"=$frequency
- }
- :return $outArray
- @@ -308,128 +317,200 @@
- :local ifcId "";
- :local currentName;
- + :local tmpChPos 0;
- + :local tmpChEndPos 0;
- +
- + :local tmpChArr [:toarray ""];
- +
- + :local tmpChArrPos 0;
- + :local bestChannel "";
- +
- :if ($wirelessEnabled = 1) do={
- - #:set ifcId [/interface wireless find where default-name=$ifc]
- - # find interface by default name and run info (interfaces could be renamed in user config). Hw-info can not be fetched by interface ID
- - #:set currentName [/interface wireless get $ifcId name]
- - :local infoCall [:parse ":local ifcId [/interface wireless find where default-name=$ifc]; :local currentName [/interface wireless get \$ifcId name]; :return [/interface wireless info hw-info [/interface wireless get \$ifcId name] as-value]"]
- - :set wlanInfo [$infoCall]; #[/interface wireless info hw-info $currentName as-value];
- - # FIXME: converts from array with ;
- - :set rxChains [:tostr ($wlanInfo->"rx-chains")];
- - :set txChains [:tostr ($wlanInfo->"tx-chains")];
- -
- - :foreach i in=($wlanInfo->"ranges") do={
- - :local chr "";
- - :local len 0;
- - :set len [:len $i];
- - :set chr [:pick $i 0];
- - # if is number TODO: use isNum
- - :if ( (0 <= [:tonum $chr]) && ([:tonum $chr] <= 9) ) do={
- - :set numBands ($numBands+1)
- -
- - :set ($bands->"b$numBands") {
- - "freq"=$chr;
- - "isN"=0;
- - "isAc"=0;
- - "chMaxWidth"=0
- - }
- - } else={
- - :if ($len > 1) do={
- - :set chr [:pick $i 1];
- - :if ($chr = "n") do={
- - :set (($bands->"b$numBands")->"isN") 1
- - }
- - :if ($chr = "c") do={
- - :set (($bands->"b$numBands")->"isAc") 1
- - }
- - }
- - :if ([:tonum (($bands->"b$numBands")->"chMaxWidth")] < [:tonum [:pick $i 2 $len]] ) do={
- - :set (($bands->"b$numBands")->"chMaxWidth") [:pick $i 2 $len];
- + :if ([:len [/system package find name="wifiwave2" !disabled]] != 0) do={
- + :local infoCall [:parse ":local macAdd [/interface get [/interface find where default-name=$ifc] mac-address]; :return [/interface wifiwave2 radio get [find where radio-mac=\$macAdd]]"]
- + :set wlanInfo [$infoCall]
- + :set rxChains [:tostr ($wlanInfo->"rx-chains")];
- + :set txChains [:tostr ($wlanInfo->"tx-chains")];
- +
- + :set bands [($wlanInfo->"bands")]
- + :local banLen [:len $bands]
- + :local bestBand [($bands->($banLen - 1))]
- +
- + $addCL (" /interface wifiwave2 {")
- +
- + #pick always first supported band
- + :set band [:pick $bestBand 0 [:find $bestBand ":"]]
- + :local tmpChW [:pick $bestBand ([:find $bestBand ":"] + 1) [:len $bestBand]]
- +
- + :while ($tmpChPos <= [:len $tmpChW] && [:typeof $tmpChPos] != "nil") do={
- + :local pos [:find $tmpChW "," from=$tmpChPos];
- + :if ($tmpChPos!=0) do={:set tmpChPos ($tmpChPos+1)};
- + :set tmpChEndPos $pos;
- + :if ([:typeof $tmpChEndPos] = "nil") do={:set tmpChEndPos [:len $tmpChW]};
- + :local tmp [:pick $tmpChW $tmpChPos $tmpChEndPos]
- + :set ($tmpChArr -> "$tmpChArrPos") $tmp
- + :set tmpChPos $pos
- + :set tmpChArrPos ($tmpChArrPos + 1)
- + }
- +
- + :set bestChannel [($tmpChArr -> ([:len $tmpChArr] - 1))]
- +
- + $addCL (":local ifcId [/interface wifiwave2 find where default-name=$ifc]")
- + $addDL ("#| $ifc Configuration:")
- + $addDL ("#| mode: $mode;")
- + $addDCL ("start wireless $ifc")
- +
- + :if ($mode = "disabled") do={
- + $addCL (" disable \$ifcId")
- + } else={
- + $addDL ("#| band: $band;")
- + $addDL ("#| tx-chains: $txChains;")
- + $addDL ("#| rx-chains: $rxChains;")
- + $addDL ("#| installation: $installation;")
- +
- + # do not set chains (should be set by default)
- + $addCL (" set \$ifcId configuration.mode=$mode channel.band=$band disabled=no")
- + $addDL ("#| ht-extension: $bestChannel;")
- + $addCL (" set \$ifcId channel.width=$bestChannel;")
- + :if ($frequency != "auto") do={
- + $addCL (" set \$ifcId channel.frequency=$frequency")
- }
- + $addCL (" set \$ifcId channel.skip-dfs-channels=10min-cac;")
- }
- - }
- -
- - $addCL (" /interface wireless {")
- -
- - #pick always first supported band
- - :if (($bands->"b1")->"freq" = 2) do={
- - :if (($bands->"b1")->"isN" = 1) do={
- - :set band "2ghz-b/g/n"
- + :if (!($ssid = "" || $ssid = nil)) do={
- + $addCL (" set \$ifcId configuration.ssid=$ssid")
- } else={
- - :set band "2ghz-b/g"
- + :if ($mode = "ap") do={
- + $addDCL ("set ap ssid")
- + $addCL (" :local wlanMac [/interface get [/interface find where default-name=$ifc] mac-address];")
- + $addCL (" :set ssid \"MikroTik-\$[:pick \$wlanMac 9 11]\$[:pick \$wlanMac 12 14]\$[:pick \$wlanMac 15 17]\"")
- + $addCL (" set \$ifcId configuration.ssid=\$ssid")
- + }
- }
- +
- + $addCL (" }")
- } else={
- - :if (($bands->"b1")->"isAc" = 1) do={
- - :set band "5ghz-a/n/ac"
- - } else={
- - :if (($bands->"b1")->"isN" = 1) do={
- - :set band "5ghz-a/n"
- + #:set ifcId [/interface wireless find where default-name=$ifc]
- + # find interface by default name and run info (interfaces could be renamed in user config). Hw-info can not be fetched by interface ID
- + #:set currentName [/interface wireless get $ifcId name]
- + :local infoCall [:parse ":local ifcId [/interface wireless find where default-name=$ifc]; :local currentName [/interface wireless get \$ifcId name]; :return [/interface wireless info hw-info [/interface wireless get \$ifcId name] as-value]"]
- + :set wlanInfo [$infoCall]; #[/interface wireless info hw-info $currentName as-value];
- + # FIXME: converts from array with ;
- + :set rxChains [:tostr ($wlanInfo->"rx-chains")];
- + :set txChains [:tostr ($wlanInfo->"tx-chains")];
- +
- + :foreach i in=($wlanInfo->"ranges") do={
- + :local chr "";
- + :local len 0;
- + :set len [:len $i];
- + :set chr [:pick $i 0];
- + # if is number TODO: use isNum
- + :if ( (0 <= [:tonum $chr]) && ([:tonum $chr] <= 9) ) do={
- + :set numBands ($numBands+1)
- +
- + :set ($bands->"b$numBands") {
- + "freq"=$chr;
- + "isN"=0;
- + "isAc"=0;
- + "chMaxWidth"=0
- + }
- } else={
- - :set band "5ghz-a"
- + :if ($len > 1) do={
- + :set chr [:pick $i 1];
- + :if ($chr = "n") do={
- + :set (($bands->"b$numBands")->"isN") 1
- + }
- + :if ($chr = "c") do={
- + :set (($bands->"b$numBands")->"isAc") 1
- + }
- + }
- + :if ([:tonum (($bands->"b$numBands")->"chMaxWidth")] < [:tonum [:pick $i 2 $len]] ) do={
- + :set (($bands->"b$numBands")->"chMaxWidth") [:pick $i 2 $len];
- + }
- }
- }
- - }
- -
- - $addCL (":local ifcId [/interface wireless find where default-name=$ifc]")
- - $addCL (":local currentName [/interface wireless get \$ifcId name]")
- - $addDL ("#| $ifc Configuration:")
- - $addDL ("#| mode: $mode;")
- - $addDCL ("start wireless $ifc")
- - :if ($mode = "disabled") do={
- - $addCL (" disable \$ifcId")
- - } else={
- - $addDL ("#| band: $band;")
- - $addDL ("#| tx-chains: $txChains;")
- - $addDL ("#| rx-chains: $rxChains;")
- - $addDL ("#| installation: $installation;")
- + $addCL (" /interface wireless {")
- - :if (!($pass = "" || $pass = nil)) do={
- - $addDL ("#| wpa2: yes;")
- - $addCL (" security-profile set default mode=dynamic-keys group-ciphers=aes-ccm unicast-ciphers=aes-ccm \\")
- - $addCL (" authentication-types=wpa2-psk disable-pmkid=yes wpa2-pre-shared-key=\$defconfPassword comment=defconf ")
- + #pick always first supported band
- + :if (($bands->"b1")->"freq" = 2) do={
- + :if (($bands->"b1")->"isN" = 1) do={
- + :set band "2ghz-b/g/n"
- + } else={
- + :set band "2ghz-b/g"
- + }
- } else={
- - $addDL ("#| wpa2: no;")
- + :if (($bands->"b1")->"isAc" = 1) do={
- + :set band "5ghz-a/n/ac"
- + } else={
- + :if (($bands->"b1")->"isN" = 1) do={
- + :set band "5ghz-a/n"
- + } else={
- + :set band "5ghz-a"
- + }
- + }
- }
- - # do not set chains (should be set by default)
- - $addCL (" set \$ifcId mode=$mode band=$band disabled=no wireless-protocol=$wProto \\")
- - $addCL (" distance=$distance installation=$installation")
- -
- - if (($bands->"b1")->"chMaxWidth" >= 80) do={
- - $addDL ("#| ht-extension: 20/40/80mhz-XXXX;")
- - $addCL (" set \$ifcId channel-width=20/40/80mhz-XXXX;")
- - # secondary channel only for AC and 80mhz
- - :if ($secChannel=1 && band="5ghz-a/n/ac") do={
- - $addDL ("#| secondary-channel: auto;")
- - $addCL (" set \$ifcId secondary-channel=auto")
- + $addCL (":local ifcId [/interface wireless find where default-name=$ifc]")
- + $addCL (":local currentName [/interface wireless get \$ifcId name]")
- + $addDL ("#| $ifc Configuration:")
- + $addDL ("#| mode: $mode;")
- + $addDCL ("start wireless $ifc")
- +
- + :if ($mode = "disabled") do={
- + $addCL (" disable \$ifcId")
- + } else={
- + $addDL ("#| band: $band;")
- + $addDL ("#| tx-chains: $txChains;")
- + $addDL ("#| rx-chains: $rxChains;")
- + $addDL ("#| installation: $installation;")
- +
- + :if (!($pass = "" || $pass = nil)) do={
- + $addDL ("#| wpa2: yes;")
- + $addCL (" security-profile set default mode=dynamic-keys group-ciphers=aes-ccm unicast-ciphers=aes-ccm \\")
- + $addCL (" authentication-types=wpa2-psk disable-pmkid=yes wpa2-pre-shared-key=\$defconfPassword comment=defconf ")
- + } else={
- + $addDL ("#| wpa2: no;")
- }
- - } else={
- - :if (($bands->"b1")->"chMaxWidth" = 40) do={
- - $addDL ("#| ht-extension: 20/40mhz-XX;")
- - $addCL (" set \$ifcId channel-width=20/40mhz-XX;")
- +
- + # do not set chains (should be set by default)
- + $addCL (" set \$ifcId mode=$mode band=$band disabled=no wireless-protocol=$wProto \\")
- + $addCL (" distance=$distance installation=$installation")
- +
- + if (($bands->"b1")->"chMaxWidth" >= 80) do={
- + $addDL ("#| ht-extension: 20/40/80mhz-XXXX;")
- + $addCL (" set \$ifcId channel-width=20/40/80mhz-XXXX;")
- + # secondary channel only for AC and 80mhz
- + :if ($secChannel=1 && band="5ghz-a/n/ac") do={
- + $addDL ("#| secondary-channel: auto;")
- + $addCL (" set \$ifcId secondary-channel=auto")
- + }
- } else={
- - $addDL ("#| ht-extension: 20mhz;")
- - $addCL (" set \$ifcId channel-width=20mhz;")
- + :if (($bands->"b1")->"chMaxWidth" = 40) do={
- + $addDL ("#| ht-extension: 20/40mhz-XX;")
- + $addCL (" set \$ifcId channel-width=20/40mhz-XX;")
- + } else={
- + $addDL ("#| ht-extension: 20mhz;")
- + $addCL (" set \$ifcId channel-width=20mhz;")
- + }
- + }
- + :if ($frequency != "") do={
- + $addCL (" set \$ifcId frequency=$frequency")
- }
- }
- - :if ($frequency != "") do={
- - $addCL (" set \$ifcId frequency=$frequency")
- - }
- - }
- - :if (!($ssid = "" || $ssid = nil)) do={
- - $addCL (" set \$ifcId ssid=$ssid")
- - } else={
- - :if ($mode = "ap-bridge" || $mode = "bridge") do={
- - $addDCL ("set ap_bridge ssid")
- - $addCL (" :local wlanMac [/interface wireless get \$ifcId mac-address];")
- - $addCL (" :set ssid \"MikroTik-\$[:pick \$wlanMac 9 11]\$[:pick \$wlanMac 12 14]\$[:pick \$wlanMac 15 17]\"")
- - $addCL (" set \$ifcId ssid=\$ssid")
- + :if (!($ssid = "" || $ssid = nil)) do={
- + $addCL (" set \$ifcId ssid=$ssid")
- + } else={
- + :if ($mode = "ap-bridge" || $mode = "bridge") do={
- + $addDCL ("set ap_bridge ssid")
- + $addCL (" :local wlanMac [/interface wireless get \$ifcId mac-address];")
- + $addCL (" :set ssid \"MikroTik-\$[:pick \$wlanMac 9 11]\$[:pick \$wlanMac 12 14]\$[:pick \$wlanMac 15 17]\"")
- + $addCL (" set \$ifcId ssid=\$ssid")
- + }
- }
- + $addCL (" }")
- }
- -
- - $addCL (" }")
- }
- }
- @@ -513,7 +594,7 @@
- $addCL (" /ip dhcp-server")
- $addCL (" add name=defconf address-pool=\"default-dhcp\" interface=$lanPort lease-time=10m disabled=no;")
- $addCL (" /ip dhcp-server network")
- - $addCL (" add address=192.168.88.0/24 gateway=192.168.88.1 comment=\"defconf\";")
- + $addCL (" add address=192.168.88.0/24 gateway=192.168.88.1 dns-server=192.168.88.1 comment=\"defconf\";")
- $addCL (" /ip address add address=192.168.88.1/24 interface=$lanPort comment=\"defconf\";")
- } else={
- $addCL (" /ip address add address=192.168.88.1/24 interface=$lanPort comment=\"defconf\";")
- @@ -637,10 +718,6 @@
- $addCL (" address-list add list=bad_ipv6 address=2001:db8::/32 comment=\"defconf: documentation\"")
- $addCL (" address-list add list=bad_ipv6 address=2001:10::/28 comment=\"defconf: ORCHID\"")
- $addCL (" address-list add list=bad_ipv6 address=3ffe::/16 comment=\"defconf: 6bone\"")
- - $addCL (" address-list add list=bad_ipv6 address=::224.0.0.0/100 comment=\"defconf: other\"")
- - $addCL (" address-list add list=bad_ipv6 address=::127.0.0.0/104 comment=\"defconf: other\"")
- - $addCL (" address-list add list=bad_ipv6 address=::/104 comment=\"defconf: other\"")
- - $addCL (" address-list add list=bad_ipv6 address=::255.0.0.0/104 comment=\"defconf: other\"")
- # fw input
- # can cause problems, different OSes originate packet with different ttls
- @@ -1038,6 +1115,10 @@
- :local ssidPrefix "MikroTik"
- :local backupLink 0;
- +:local usingWifiwave 0;
- +:local wlanPrefix "wlan";
- +:local wlanMode "ap-bridge";
- +
- #Perform additional checks on installed packages
- :if ([:len [/system package find name="ipv6" !disabled]] != 0) do={
- :set ipv6Enabled 1;
- @@ -1048,6 +1129,11 @@
- :if ([:len [/system package find name="wireless" !disabled]] != 0) do={
- :set wirelessEnabled 1;
- }
- +:if ([:len [/system package find name="wifiwave2" !disabled]] != 0) do={
- + :set usingWifiwave 1;
- + :set wlanPrefix "wifi";
- + :set wlanMode "ap";
- +}
- :if ([:pick [/system resource get version ] 0 1] = 7) do={
- :set ipv6Enabled 1;
- :set dhcpEnabled 1;
- @@ -1096,10 +1182,10 @@
- }
- };
- }
- - if ($numWlans > 0) do={
- + if ($numWlans > 0 && $usingWifiwave = 1) do={
- # ignore virtual interfaces when script is generated after upgrade
- # on non-empty router (with custom user config).
- - :local cmd ":global nTemp [:len [/interface wireless find where interface-type!=\"virtual\"]]"
- + :local cmd ":global nTemp [:len [/interface wifiwave2 find]]"
- :execute script=$cmd
- :delay 1s;
- :while ($nTemp < $numWlans && $bFail = 0) do={
- @@ -1108,10 +1194,28 @@
- :set count ($count +1);
- :if ($count = 40) do={
- :set bFail 1;
- - :log warning "DefConf gen: Unable to find wireless interface(s)";
- + :log warning "DefConf gen: Unable to find wifiwave2 interface(s)";
- :quit
- }
- };
- + } else={
- + if ($numWlans > 0) do={
- + # ignore virtual interfaces when script is generated after upgrade
- + # on non-empty router (with custom user config).
- + :local cmd ":global nTemp [:len [/interface wireless find where interface-type!=\"virtual\"]]"
- + :execute script=$cmd
- + :delay 1s;
- + :while ($nTemp < $numWlans && $bFail = 0) do={
- + :delay 1s;
- + :execute script=$cmd
- + :set count ($count +1);
- + :if ($count = 40) do={
- + :set bFail 1;
- + :log warning "DefConf gen: Unable to find wireless interface(s)";
- + :quit
- + }
- + };
- + }
- }
- }
- @@ -1126,7 +1230,7 @@
- :set ssidPrefix "$ssidPrefix$[:pick $SN 6 12]"
- #-----HOME AP
- - :if ($board->"model"~"450|750|850|miniROUTER|751|951|941|931|953|960|760|2011|3011|4011|OmniTIK|OmniTik|hAP|952|962|D52|mAP|D24|D25|cAP|D53|924|5009") do={
- + :if ($board->"model"~"450|750|850|miniROUTER|751|951|941|931|953|960|760|2011|3011|4011|OmniTIK|OmniTik|hAP|952|962|D52|mAP|D24|D25|cAP|D53|924|5009|C53|H53|L41") do={
- :if (!($board->"model"~"OmniTIK|OmniTik|953")) do={
- :set installation "indoor"
- }
- @@ -1311,7 +1415,7 @@
- }
- #-----WISP BRIDGE ..
- - :if ($board->"model"~"LHG|Disc|nRAY") do={
- + :if ($board->"model"~"LHG|Disc|nRAY|ATLGM") do={
- :if ($numWils > 0) do={
- :set configMode "w60g_bridge";
- :set needAdminPass 1;
- @@ -1377,7 +1481,17 @@
- :set configMode "switch";
- }
- }
- -
- +# Special Case CCRs
- +:if ($board->"model"~"CCR2116") do={
- + :if ($board->"numGig" = 12 && $board->"numSfpPlus" = 4) do={
- + :set lanPort "ether13";
- + }
- +}
- +:if ($board->"model"~"CCR2004") do={
- + :if ($board->"numGig" = 16 && $board->"numSfpPlus" = 2) do={
- + :set lanPort "ether15";
- + }
- +}
- $addDL "#| Welcome to RouterOS!"
- $addDL "#| 1) Set a strong router password in the System > Users menu"
- @@ -1435,9 +1549,21 @@
- $addCL (" :delay 1s;")
- $addCL (" };")
- }
- -if ($numWlans > 0) do={
- +if ($numWlans > 0 && $usingWifiwave = 1) do={
- # wait wlans
- $addCL (" :local count 0;")
- + $addCL (" :while ([/interface wifiwave2 print count-only] < $numWlans) do={ ")
- + $addCL (" :set count (\$count +1);")
- + $addCL (" :if (\$count = 40) do={")
- + $addCL (" :log warning \"DefConf: Unable to find wireless interface(s)\"; ")
- + $addCL (" /ip address add address=192.168.88.1/24 interface=ether1 comment=\"defconf\";")
- + $addCL (" /quit")
- + $addCL (" }")
- + $addCL (" :delay 1s;")
- + $addCL (" };")
- +} else={
- + # wait wlans
- + $addCL (" :local count 0;")
- $addCL (" :while ([/interface wireless print count-only] < $numWlans) do={ ")
- $addCL (" :set count (\$count +1);")
- $addCL (" :if (\$count = 40) do={")
- @@ -1487,8 +1613,13 @@
- $addDL "#| IP on sfp1: 192.168.88.1/24;"
- $addCL ("/ip address add address=192.168.88.1/24 interface=sfp1 comment=\"defconf\";")
- } else={
- - $addDL "#| IP on ether1: 192.168.88.1/24;"
- - $addCL ("/ip address add address=192.168.88.1/24 interface=ether1 comment=\"defconf\";")
- + if ($lanPort != "bridge") do={
- + $addDL ("#| IP on $lanPort: 192.168.88.1/24;")
- + $addCL ("/ip address add address=192.168.88.1/24 interface=$lanPort comment=\"defconf\";")
- + } else={
- + $addDL "#| IP on ether1: 192.168.88.1/24;"
- + $addCL ("/ip address add address=192.168.88.1/24 interface=ether1 comment=\"defconf\";")
- + }
- }
- }
- }
- @@ -1525,10 +1656,10 @@
- } else={
- :if ($numWlans > 0) do={
- :if ($numWlans > 1) do={
- - [$setWlan ifc="wlan1" mode="ap-bridge" frequency=$frequency wProto=$wProto distance=$distance installation=$installation]
- - [$setWlan ifc="wlan2" mode="ap-bridge" frequency=$frequency wProto=$wProto distance=$distance installation=$installation]
- + [$setWlan ifc=("$"wlanPrefix"1") mode=$wlanMode frequency=$frequency wProto=$wProto distance=$distance installation=$installation]
- + [$setWlan ifc=("$"wlanPrefix"2") mode=$wlanMode frequency=$frequency wProto=$wProto distance=$distance installation=$installation]
- } else={
- - [$setWlan ifc="wlan1" mode="ap-bridge" frequency=$frequency wProto=$wProto distance=$distance installation=$installation]
- + [$setWlan ifc=("$"wlanPrefix"1") mode=$wlanMode frequency=$frequency wProto=$wProto distance=$distance installation=$installation]
- }
- }
- }
- @@ -1668,10 +1799,10 @@
- } else={
- :if ($numWlans > 0) do={
- :if ($numWlans > 1) do={
- - [$setWlan ifc="wlan1" mode="ap-bridge" frequency=$frequency wProto=$wProto distance=$distance secChannel=$secondaryChannel installation=$installation]
- - [$setWlan ifc="wlan2" mode="ap-bridge" frequency=$frequency wProto=$wProto distance=$distance secChannel=$secondaryChannel installation=$installation]
- + [$setWlan ifc=("$"wlanPrefix"1") mode=$wlanMode frequency=$frequency wProto=$wProto distance=$distance secChannel=$secondaryChannel installation=$installation]
- + [$setWlan ifc=("$"wlanPrefix"2") mode=$wlanMode frequency=$frequency wProto=$wProto distance=$distance secChannel=$secondaryChannel installation=$installation]
- } else={
- - [$setWlan ifc="wlan1" mode="ap-bridge" frequency=$frequency wProto=$wProto distance=$distance secChannel=$secondaryChannel installation=$installation]
- + [$setWlan ifc=("$"wlanPrefix"1") mode=$wlanMode frequency=$frequency wProto=$wProto distance=$distance secChannel=$secondaryChannel installation=$installation]
- }
- }
- }
- @@ -1840,7 +1971,26 @@
- $addCL (" /interface bonding remove [find comment=\"defconf\"]")
- -:if ($wirelessEnabled = 1) do={
- +:if ($wirelessEnabled = 1 && $usingWifiwave = 1) do={
- + # reset wireless
- + :if ($numWlans > 0) do={
- + :for i from=1 to=$numWlans do={
- + $addCL (" /interface wifiwave2 reset wifi$i")
- + }
- +
- + :if ($needWpsSync=1) do={
- + $addCL (" /interface wifiwave2 reset wifi3")
- + }
- + }
- + # reset WIL
- + :if ($numWils > 0) do={
- + $addCL (" /interface w60g station remove [find comment=\"defconf\"]")
- + :for i from=1 to=$numWils do={
- + $addCL (" /interface w60g reset-configuration wlan60-$i")
- + }
- + }
- +} else={
- + :if ($wirelessEnabled = 1 && $usingWifiwave = 0) do={
- $addCL (" /interface wireless cap set enabled=no interfaces=\"\" caps-man-addresses=\"\"")
- # reset wireless
- :if ($numWlans > 0) do={
- @@ -1868,7 +2018,9 @@
- $addCL (" /caps-man manager interface set [ find default=yes ] forbid=no")
- $addCL (" /caps-man provisioning remove [find comment=\"defconf\"]")
- $addCL (" /caps-man configuration remove [find comment=\"defconf\"]")
- + }
- }
- +
- $addCL ("}")
- $addCL ":log info Defconf_script_finished;"
- $addCL ":set defconfMode;"
- @@ -1916,6 +2068,10 @@
- :set dhcpEnabled;
- :set lteDhcp;
- :set wirelessEnabled;
- +:set usingWifiwave;
- +:set wlanPrefix;
- +:set wlanMode;
- +
- :set ipv6Enabled;
- :set isPCIneeded;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement