Introduction

    ZaaNet Documentation

    Welcome to ZaaNet - the decentralized WiFi sharing platform that enables hosts to monetize their internet connections through captive portal technology and blockchain-secured transactions.

    Our Mission

    To democratize internet access by enabling WiFi owners to create paid hotspots using Raspberry Pi devices, generating passive income while providing affordable connectivity to users.

    Key Benefits

    • • Zero-configuration installer for Raspberry Pi
    • • Automatic captive portal setup
    • • Secure firewall-based access control
    • • Mobile money & card payment integration
    Getting Started

    Getting Started with ZaaNet

    Connecting to ZaaNet WiFi

    1. Find Network: Look for WiFi networks prefixed "ZN", eg. ZN-Cafe.
    2. Connect: Join the open WiFi network. No password required initially.
    3. Portal Redirect: Open http://192.168.100.1 or just open any website on your browser and you'll be redirected there.
    4. Buy a Voucher: Purchase a data voucher on www.zaanet.xyz/evouchers for internet access.
    5. Payment: Complete payment using mobile money or card through our secure payment gateway.
    6. Use Your Voucher: Enter your voucher code on the portal to activate your internet access.
    7. Access Granted: Your device IP is automatically whitelisted for internet access after payment confirmation.

    Payment Methods

    Mobile Money (Ghana)

    • • MTN Mobile Money
    • • Vodafone Cash
    • • AirtelTigo Money

    International Cards

    • • Visa & Mastercard
    • • Local bank cards
    Host Installation Guide

    Setting Up Your ZaaNet Host

    Hardware Setup

    Required Hardware

    • • Raspberry Pi 4 (4GB+ RAM recommended)
    • • MicroSD card (32GB+ Class 10)
    • • Power supply (official Pi adapter)
    • • Ethernet cable for internet connection

    Network Architecture

    • • Internet → Router → Pi (ethernet)
    • • Pi creates WiFi hotspot (wlan0)
    • • Users connect to Pi's WiFi network
    • • Captive portal controls internet access
    • • Dual-Band Wireless USB Adapter for improved connection capacity

    Installation Commands

    ZaaNet provides a zero-configuration installer that automatically sets up everything needed for your captive portal:

    ZaaNet Installation script
    sudo wget https://zaanet.github.io/zaanet-installer/install.shchmod +x install.shsudo ./install.sh

    Management Commands

    After installation, use these commands to manage your ZaaNet host:

    ZaaNet Management Commands
    # Start captive portal mode
    sudo zaanet start
    
    # Check current status
    sudo zaanet status
    
    # View live logs
    sudo zaanet logs
    
    # Stop captive portal (return to normal internet)
    sudo zaanet stop
    
    # Restart services
    sudo zaanet restart
    
    # Enable auto-start on boot
    sudo zaanet enable
    
    # Show configuration details
    sudo zaanet config
    
    # Update to latest version
    sudo zaanet update

    Firewall & User Management

    Firewall Commands
    # Show authenticated users
    sudo zaanet firewall status
    
    # Manually grant internet access to IP
    sudo zaanet firewall allow 192.168.100.105
    
    # Revoke internet access
    sudo zaanet firewall block 192.168.100.105
    
    # List all firewall rules
    sudo zaanet firewall list
    Technical Overview

    How ZaaNet Works

    System Architecture

    WiFi Hotspot

    Raspberry Pi creates isolated WiFi network using hostapd on 192.168.100.x subnet

    Firewall Control

    Firewall FILTER method blocks internet by default, whitelists paid users

    Captive Portal

    Node.js application serves portal, processes payments, manages user sessions

    Payment Processing Flow

    1

    User Connects

    Device joins WiFi, gets blocked by firewall

    2

    Portal Redirect

    DNS hijacking redirects to captive portal

    3

    Payment Process

    User pays via mobile money or card

    4

    Access Granted

    IP whitelisted, internet access enabled

    Network Configuration Details

    Default Network Settings
    • Portal IP: 192.168.100.1
    • DHCP Range: 192.168.100.100 - 192.168.100.200
    • WiFi SSID: ZaaNet-Portal (customizable)

    Blockchain Integration

    ZaaNet operates on Arbitrum One mainnet with a modular smart contract architecture ensuring transparent, secure, and automated operations:

    Core Smart Contracts

    ZaaNetNetwork Contract

    • registerNetwork() - Register WiFi network with hosting fee payment
    • updateNetwork() - Modify pricing and network settings
    • getHostNetworks() - Retrieve host's registered networks

    ZaaNetPayment Contract

    • processPayment() - Process individual voucher payments to hosts
    • processBatchPayments() - Batch process up to 50 payments (90% gas savings)
    • getRemainingDailyLimit() - Check available daily withdrawal limits

    ZaaNetAdmin Contract

    • setPlatformFee() - Configure platform revenue sharing (1-20%)
    • setHostingFee() - Adjust network registration fees (0-100 USDT)
    • emergencyDeactivateNetwork() - Emergency network controls

    Key Benefits

    • Transparent Earnings: All payments tracked on-chain with real-time visibility
    • Automated Payouts: Direct USDT transfers to host wallets upon voucher usage
    • Gas Optimized: Batch processing reduces transaction costs by up to 90%
    • Security Controls: Daily limits, emergency pause, and multi-operator governance
    FAQ

    Frequently Asked Questions

    General Questions

    What if my Pi loses power?

    ZaaNet is configured to auto-start on boot. When power is restored, the captive portal automatically resumes operation. User sessions and firewall rules are restored from the database. We recommend using a UPS for business-critical installations.

    Business Questions

    How do I receive payments?

    Payments are processed daily to your registered wallet address via the ZaaNet Payment smart contract on the Arbitrum network. You can track real-time earnings through your host dashboard. ZaaNet takes a platform fee from each transaction, transparent on the blockchain.

    Can I set my own prices?

    Yes! You have full control over hourly/session rates. The system supports flexible pricing - you can offer different packages and adjust prices based on demand or local market conditions.

    What are the ongoing costs?

    Only your internet bill for your WiFi and electricity for the Raspberry Pi + USB WiFi Adapter for extension. ZaaNet charges a small percentage fee of transaction value - no monthly fees, setup costs, or hidden charges. You only pay when you earn.

    Technical Questions

    What hardware do I need?

    Raspberry Pi 4 (4GB+ RAM recommended), microSD card (32GB+ Class 10), official power supply, USB WiFi adapter for extended capacity, and ethernet cable. The Pi connects to your router via ethernet and creates a WiFi hotspot for customers.

    Do I need technical knowledge?

    No! Our one-command installer handles everything automatically. Just run the installation commands, provide your WiFi name/SSID, and the system configures itself. The management commands are simple and user-friendly.

    How does the captive portal work?

    The captive portal runs on the Raspberry Pi. It intercepts user traffic, displays the payment portal, and manages user sessions. When a user connects, they are redirected to the portal where they can pay for access. Once payment is confirmed, their IP is whitelisted in the firewall, allowing internet access.

    What if I have issues?

    Use the sudo zaanet logs command to view real-time system logs. You can also join our Telegram support group for community assistance. Detailed troubleshooting guides are available in the documentation.

    Troubleshooting

    Common Issues & Solutions

    WiFi Network Not Visible

    If users can't see your ZaaNet WiFi network:

    # Restart ZaaNet sudo zaanet restart

    # Check WiFi interface status
    ip addr show wlan0

    Portal Not Loading

    If the captive portal doesn't appear:

    # Check portal application status
    # Test portal directly
    curl -I http://192.168.100.1

    Internet Access Issues

    If paid users can't access the internet:

    # Check firewall rules
    sudo zaanet firewall status

    # Test internet connectivity
    ping -c 3 8.8.8.8

    # Restart firewall
    sudo systemctl restart zaanet-manager

    Payment Issues

    If payment processing fails:

    # Check API connectivity
    curl -I https://api.zaanet.xyz/health

    # View payment logs
    sudo tail -f /var/log/zaanet/payments.log

    # Test database connection
    sudo zaanet config test
    Support & Community

    Get Help & Connect

    Telegram Support

    Join our active community for real-time help

    Join Telegram

    Email Support

    Direct technical support from our team

    Email Support

    GitHub Repository

    Report bugs and view source code

    View on GitHub