MikroTik Setup Guide
Connect your MikroTik router to Jasiyo in 4 steps — the wizard scans your router, detects what's already configured, and handles everything automatically.
Overview — 4 steps
Name
Give the router a name. Jasiyo creates the record and prepares a secure token.
Scan Router
Paste one command into WinBox terminal. The router reads its own config and reports back — no changes are made.
Configure
Jasiyo pre-fills the interface map from the scan. Confirm or adjust ports, IP ranges, and connection type. Choose fresh setup or install on existing config.
Provision
Paste the provisioning command. The router configures itself and goes LIVE — you can watch each step complete in real time.
Before you start
- A MikroTik router running RouterOS 6.x or 7.x
- WinBox installed on your laptop or PC, connected to the router via its LAN port
- A Jasiyo account — go to Routers → Add Router to begin
- Internet cable plugged into the router's WAN port (usually ether1) before running any command
Step 1 — Name your router
In Jasiyo, go to Routers → Add Router. Enter a name you will recognise — for example Nairobi Main or Site B. Click Continue. Jasiyo creates the router record and prepares a secure provision token.
Step 2 — Scan your router
Jasiyo shows a short one-line command. Open WinBox → New Terminal on your router and paste it. The command fetches a lightweight detection script that reads your router's current configuration and sends the report back to Jasiyo. It does not change anything on your router.
What the scan detects:
- →RouterOS version and board model
- →All interfaces and which ones have a cable plugged in
- →Which interface has a DHCP lease or default route (→ auto-identified as WAN)
- →Whether the WAN uses DHCP or a static IP
- →All existing bridges and their member ports
- →Any existing PPPoE server — if found, Jasiyo offers to install on top without touching it
- →Any existing hotspot server — same treatment
- →All existing IP addresses — used to suggest non-conflicting ranges
- →Whether port 443 can reach jasiyo.com
Step 3 — Configure
After the scan, Jasiyo shows a pre-filled configuration based on what it found. Review and confirm — or adjust if needed.
Choose a setup mode:
Fresh setup
No existing PPPoE or hotspot was found. Jasiyo will create bridges, set up PPPoE, configure hotspot, and install the billing agent — all automatically.
Install on existing setup
An existing PPPoE or hotspot was found. Jasiyo installs the billing agent only — your current network and customers are not affected.
WAN connection type:
DHCP (automatic)
Your upstream modem hands out an IP automatically. Most common. The provisioning script adds a DHCP client on the WAN port and waits up to 15 seconds for a lease.
Static IP
Your upstream provider gave you a fixed IP. Enter the IP address (CIDR), gateway, and DNS servers. The script configures the static address and skips DHCP.
Port assignment (fresh setup only):
Ports with a cable plugged in are marked with a green dot. The WAN port is pre-selected from the scan. Assign remaining ports to PPPoE, Hotspot, or Skip.
| Role | What it means |
|---|---|
| WAN | Internet uplink — connect your modem or fibre ONT here |
| PPPoE | Wired customer ports — customers log in with a PPPoE username and password |
| Hotspot | Captive portal ports — customers pay via the Jasiyo portal before getting internet |
| Skip | Port is left unconfigured |
Default settings (auto-computed to avoid conflicts):
| Setting | Default |
|---|---|
| WAN interface | Auto-detected from scan |
| PPPoE bridge name | bridge-pppoe |
| PPPoE bridge IP | 10.10.10.1/24 (or next free subnet) |
| PPPoE pool range | 10.10.10.2–10.10.10.254 |
| PPPoE service name | internet |
| Hotspot bridge name | hs-bridge |
| Hotspot bridge IP | 192.168.100.1/24 (or next free subnet) |
| Hotspot pool range | 192.168.100.10–192.168.100.250 |
| DNS servers | 8.8.8.8, 1.1.1.1 |
IP ranges are computed automatically to avoid conflicts with existing addresses found during the scan. You can change any value before proceeding.
Step 4 — Provision
Jasiyo generates a provisioning command. Copy it and paste it into WinBox → New Terminal. The router downloads and runs the provisioning script automatically. You can watch every step complete in real time on the Jasiyo page.
What the provisioning script does (fresh setup):
Internet check
Verifies WAN has IP, default route, and can reach jasiyo.com on port 443. Diagnoses and reports the specific failure if it can't connect.
Bridges + NAT
Creates PPPoE and hotspot bridges, moves ports (only if not already on the right bridge), assigns IPs (only if no subnet conflict), adds NAT masquerade.
PPPoE server
Creates IP pool, PPP profile, and PPPoE server. If a server already exists on that interface, reconfigures it instead of creating a duplicate.
Hotspot + DHCP
Creates DHCP server, hotspot server, walled garden entries for jasiyo.com and Supabase. Adds wlan1 to hotspot bridge if the router has WiFi.
Captive portal
Downloads your customised login.html (with your hotspot plans pre-embedded) and installs it into the router's hotspot directory.
Billing agent
Downloads and installs the isp-billing-checkin and billing-stats-collector scripts. Creates schedulers with automatic policy fallback for ROS6 compatibility.
First check-in
Runs the agent immediately and registers the router with Jasiyo. The router appears LIVE on your dashboard within 10 seconds.
Existing setup path (agent-only):
If your router already has PPPoE or hotspot configured, the provisioning script skips all network configuration and only installs the billing agent. Steps 2–5 are replaced with a single step that reads and reports your existing config. Your customers stay connected throughout.
Stage 2 — Install the phone-home agent
The agent is what keeps Jasiyo and your router in sync. Once installed, the router calls out to Jasiyo every 10 seconds, picks up any queued commands (add a customer, suspend an account, change speed), executes them, and posts the result back. No inbound ports or port-forwarding are needed.
Two scripts are installed:
isp-billing-checkinHeartbeat — runs every 10 seconds. Checks for queued commands from Jasiyo and executes them on the router (add PPPoE user, disable customer, update speed limit, etc.)billing-stats-collectorStats — runs every 60 seconds. Sends CPU load, memory usage, and uptime to Jasiyo for the router monitoring dashboard.Verify the installation
Run these commands in WinBox → New Terminal to confirm everything is installed and working:
/system script print ← both scripts should be listed /system scheduler print ← two schedulers: 10s and 60s intervals /log print ← look for "Heartbeat OK" /ip dhcp-client print ← ether1 should show "bound" /ping 8.8.8.8 count=4 ← 0% loss = internet OK /interface pppoe-server server print ← PPPoE server running /ip hotspot print ← no "I - invalid" flag /ip dhcp-server print ← DHCP server running /ip hotspot walled-garden print ← jasiyo.com listed
Back in Jasiyo, go to Routers. Within 10–30 seconds the router status should change to Online (green dot).
Troubleshooting
Router stays Offline after installing the agent
- 1.Run /system scheduler print — confirm both schedulers exist and are not disabled.
- 2.Run /system script print — confirm both scripts are listed.
- 3.Manually trigger the heartbeat: /system script run isp-billing-checkin. Then run /log print and look for 'Heartbeat OK' or any error messages.
- 4.Verify internet: /ping 8.8.8.8 count=3. If ping fails, rerun Stage 0 (add DHCP client and DNS).
- 5.For ROS6: lines with errors are skipped silently. Re-import the script if any step failed.
Script fetch fails (SSL error, timeout, or connection refused)
- 1.The check-certificate=no flag should bypass SSL issues. If still failing, test basic connectivity: /tool fetch url=http://example.com
- 2.Check that ether1 has a DHCP lease from your upstream ISP: /ip dhcp-client print. If the status is not 'bound', the router has no internet.
- 3.Use the download option in the Jasiyo wizard instead — download the .rsc file to your PC, drag it into WinBox → Files, then /import it from terminal.
Hotspot shows 'I - invalid' flag after running /ip hotspot setup
- 1.The 'I' flag means the hotspot is bound to an interface or IP that doesn't exist or has changed.
- 2.Confirm the hotspot bridge exists: /interface bridge print — bridge-hotspot should be listed.
- 3.Confirm the bridge has an IP: /ip address print — 192.168.100.1/24 on bridge-hotspot.
- 4.Delete the invalid hotspot and run the wizard again: /ip hotspot remove [number], then /ip hotspot setup.
- 5.When prompted for Hotspot Interface, select bridge-hotspot. Local Address should be 192.168.100.1/24.
Customers on hotspot are not redirected to the payment portal
- 1.Verify the hotspot server is running without the invalid flag: /ip hotspot print.
- 2.Check customers are getting IP addresses from DHCP: /ip dhcp-server lease print.
- 3.Confirm jasiyo.com is in the walled garden so it's accessible before payment: /ip hotspot walled-garden print.
- 4.Confirm login.html was uploaded to the correct path. In WinBox → Files, look for hotspot/login.html. If it's only at the root, move it: /file move login.html hotspot/login.html
- 5.Check the hotspot login URL in /ip hotspot profile print — it should point to the Jasiyo portal.
PPPoE customers can't connect after running the setup script
- 1.Verify the PPPoE server is running: /interface pppoe-server print.
- 2.Check the bridge has the right ports: /interface bridge port print — ether2 and ether3 should be listed under bridge-pppoe.
- 3.Check the IP pool exists: /ip pool print.
- 4.Customers must be added in Jasiyo first — the setup script creates the PPPoE server but does not add individual PPPoE secrets. Those are created automatically when you add customers in Jasiyo.
Still having trouble?
Our support team can help you via WhatsApp.
WhatsApp support