# User Configuration :global nomorAbsen 24; :global namaSiswa "tamir"; :global ifaceWan "ether1"; :global ifaceLan "wlan1"; # System Calculation :local dhcpClientId [/ip dhcp-client find where interface=$ifaceWan]; :if ($dhcpClientId = "") do={ /ip dhcp-client add interface=$ifaceWan disabled=no; :delay 15s; } :global ipSwitch [/ip dhcp-client get [find interface="$ifaceWan"] gateway]; /ip dhcp-client remove [find interface="$ifaceWan"]; :global firstDot [:find $ipSwitch "."]; :global secondDot [:find $ipSwitch "." ($firstDot + 1)]; :global thirdDot [:find $ipSwitch "." ($secondDot + 1)]; :global ipPrefix [:pick $ipSwitch 0 $thirdDot]; :global calcIpWan ($nomorAbsen + 150); :global calcIpLan ($nomorAbsen + 100); :global ipWan "$ipPrefix.$calcIpWan/24"; :global ipLan "192.$calcIpLan.20.1/24"; :global ipGateway "$ipSwitch"; :global ipNetworkLan "192.$calcIpLan.20.0/24"; :global ipNetworkWan "$ipPrefix.0/24"; :global dnsServer "8.8.8.8"; :global splitter "_"; :global wifiSsid "$nomorAbsen$splitter$namaSiswa"; :global wifiSecProfile "$nomorAbsen$splitter$namaSiswa"; :global wifiPsk "$nomorAbsen$splitter$namaSiswa"; :global dhcpServerName "dhcp$splitter$namaSiswa"; :global leaseTime "08:00:00"; # Executing Commands /ip address add address="$ipWan" interface="$ifaceWan"; /ip address add address="$ipLan" interface="$ifaceLan"; /ip dns set servers="$dnsServer" allow-remote-requests=yes; /ip route add gateway="$ipGateway"; /ip firewall nat add chain=srcnat out-interface="$ifaceWan" action=masquerade; :if ([/interface wireless find name=$ifaceLan] = "") do={ /interface wireless remove [find name=$ifaceLan]; } /interface wireless add name=$ifaceLan; :if ([/interface wireless security-profiles find name=$wifiSecProfile] = "") do={ /interface wireless security-profiles remove [find name="$nomorAbsen"]; } /interface wireless security-profiles add name="$wifiSecProfile" mode=dynamic-keys authentication-types=wpa-psk,wpa2-psk wpa-pre-shared-key="$wifiPsk" wpa2-pre-shared-key="$wifiPsk"; /interface wireless set "$ifaceLan" mode=ap-bridge ssid="$wifiSsid" security-profile="$wifiSecProfile"; /routing rip interface add interface="$ifaceLan" send=v2 receive=v2; /routing rip network add network="$ipNetworkLan"; /routing rip network add network="$ipNetworkWan";