Client Types Explained
KnoxCall supports three types of clients, each optimized for different use cases. This guide helps you choose the right type.The Three Types
| Type | Icon | Best For | IP Stability | Example |
|---|---|---|---|---|
| Server | 🖥️ | Production servers | Static (unchanging) | AWS EC2 with Elastic IP |
| User | 👤 | Developer machines | Dynamic (may change) | Laptop on home Wi-Fi |
| Network | 🌐 | IP ranges | Multiple IPs | Office network 192.168.1.0/24 |
Server Type
Overview
Server clients represent production infrastructure with static IP addresses that never (or rarely) change.Characteristics
✅ Static IP address - IP doesn’t change ✅ Production-ready - Designed for reliability ✅ Single IP - One specific address ✅ High trust - Critical infrastructureWhen to Use
Use Server type when:- Production API servers
- Staging servers
- Database servers
- Backend services with static IPs
- Cloud instances with Elastic IPs
- VPS with dedicated IPs
- Partner webhook servers
Examples
AWS EC2 with Elastic IP
- Elastic IP is static (never changes unless you release it)
- Production traffic
- Critical infrastructure
DigitalOcean Droplet
- Droplet has static IP
- Staging environment (important but not production)
Partner Integration
- External partner’s server
- Fixed IP address
- Business-critical integration
Best Practices
✅ Do:- Always use for production
- Document server purpose in description
- Use meaningful names (
prod-api-1notserver1) - Track in inventory (spreadsheet/wiki)
- Regular security audits
- Use for developer laptops (use User type)
- Use for dynamic IPs (IP will change, causing issues)
- Use for IP ranges (use Network type)
User Type
Overview
User clients represent individual people or devices with potentially dynamic IP addresses.Characteristics
✅ Dynamic IP - May change occasionally ✅ Individual person/device - Not infrastructure ✅ Development-focused - Testing, debugging ✅ Lower trust - Temporary accessWhen to Use
Use User type when:- Developer laptops
- Home office machines
- QA team computers
- Temporary contractor access
- Mobile devices (rare)
- Any IP that might change
Examples
Developer Laptop
- Home Wi-Fi IP changes occasionally
- Individual developer
- Development/testing only
QA Team Member
- Office IP might change
- Individual tester
- Non-production use
Remote Contractor
- Temporary access
- Individual person
- Dynamic IP likely
Dynamic IP Challenges
Problem: Home/office internet usually has dynamic IPs that change. When IPs change:- Router restarts
- ISP lease expires (every 24-72 hours typically)
- VPN connects/disconnects
- Moving locations
- Create API key with “Allow any IP”
- Use key in requests instead
- No IP whitelisting needed
- Connect to VPN with static egress IP
- Whitelist VPN IP
- Always connect through VPN
Best Practices
✅ Do:- Include person’s name in client name
- Update description with contact info
- Remove when person leaves company
- Use “Allow any IP” API keys for dev (easier)
- Assign only to dev/staging environments
- Use for production servers
- Give production access to User clients
- Forget to remove when contractor leaves
- Use generic names like
user1
Network Type
Overview
Network clients represent ranges of IP addresses using CIDR notation, allowing multiple IPs to access routes.Characteristics
✅ IP range - Multiple addresses (CIDR) ✅ Network segment - Group of devices ✅ Convenient - Authorize many IPs at once ✅ Flexible - Covers subnetsWhen to Use
Use Network type when:- Office Wi-Fi network
- Corporate VPN range
- Data center subnet
- Cloud provider IP range
- Partner company network
- Multiple related servers
Examples
Office Network
- Covers entire office (192.168.1.1 to 192.168.1.254)
- Multiple people on same network
- CIDR notation needed
192.168.1.0(network address)192.168.1.1to192.168.1.254(usable)192.168.1.255(broadcast address)
Corporate VPN
- VPN assigns IPs in 10.8.x.x range
- Many employees connect
- CIDR range needed
10.8.0.0to10.8.255.255
Cloud Provider Subnet
- Multiple EC2 instances in subnet
- Dynamic instance IPs within range
- Subnet-level authorization
172.31.0.0to172.31.15.255
Partner Network
- Partner has multiple offices
- Many servers in their network
- Easier than individual IPs
CIDR Notation
Network type requires CIDR notation:IP/prefix
Common CIDR ranges:
/32- 1 IP (don’t use Network type, use Server instead)/24- 256 IPs (e.g., 192.168.1.0/24)/16- 65,536 IPs (e.g., 10.0.0.0/16)/8- 16,777,216 IPs (very large, rare)
Best Practices
✅ Do:- Use smallest range that covers your needs
- Document what network represents
- Be specific about location/purpose
- Audit periodically (remove if unused)
- Use for related devices only
- Use
0.0.0.0/0(allows entire internet!) - Use overly broad ranges unnecessarily
- Mix unrelated networks in one client
- Forget to document what’s in the range
Comparison Table
| Feature | Server | User | Network |
|---|---|---|---|
| IP Format | Single static IP | Single dynamic IP | CIDR range |
| Example IP | 52.123.45.67 | 203.45.67.89 | 192.168.1.0/24 |
| Stability | Permanent | May change | Permanent range |
| Quantity | 1 address | 1 address | Many addresses |
| Use Case | Production servers | Developer laptops | Office networks |
| Trust Level | High | Medium | Medium |
| Environment | Production | Dev/Staging | Dev/Staging/Prod |
| Maintenance | Low | Medium (IP updates) | Low |
Choosing the Right Type
Decision Tree
Examples
Scenario: AWS EC2 instance- Single IP? ✅ Yes
- IP changes? ❌ No (Elastic IP)
- → Server type
- Single IP? ✅ Yes
- IP changes? ✅ Yes (home Wi-Fi)
- → User type
- Single IP? ❌ No (50+ devices)
- → Network type (e.g., 192.168.1.0/24)
- Single IP? ❌ No (100 connections)
- → Network type (e.g., 10.8.0.0/16)
Security Considerations
Trust Levels
Server (Highest Trust):- ✅ Production traffic allowed
- ✅ Access to sensitive data
- ✅ Critical operations
- ⚠️ Development/staging only
- ⚠️ Limited permissions
- ⚠️ Regular audits
- ⚠️ Depends on what’s in range
- ⚠️ More IPs = higher risk
- ⚠️ Audit membership
Recommendations by Environment
Production:- ✅ Server type only
- ❌ No User types
- ⚠️ Network type only for trusted corporate networks
- ✅ Server type for staging servers
- ✅ User type for QA team
- ✅ Network type for office
- ✅ All types acceptable
- ✅ User type most common
- ✅ API keys easier than IP whitelisting
Migration Between Types
User → Server (When Getting Static IP)
Before:- Provision Elastic IP from cloud provider
- Assign to instance
- Edit client in KnoxCall
- Change type to Server
- Update IP to Elastic IP
- Update description
- Save
Network → Multiple Servers
Before (inefficient):Real-World Patterns
Pattern 1: Startup (Small Team)
Pattern 2: Enterprise (Large Team)
Pattern 3: Agency/Consultancy
Quick Reference
| Situation | Type | Example |
|---|---|---|
| Production server with Elastic IP | Server | 52.123.45.67 |
| Developer’s laptop at home | User | 203.45.67.89 |
| Office Wi-Fi network | Network | 192.168.1.0/24 |
| Staging server on cloud | Server | 54.200.11.22 |
| QA team member | User | 180.123.45.67 |
| Corporate VPN | Network | 10.8.0.0/16 |
| Partner’s webhook server | Server | 100.25.30.45 |
| Temporary contractor | User | 192.5.8.100 |
Next Steps
What are Clients?
Client basics and concepts
Managing Clients
Create, edit, assign clients
CIDR Notation
Understanding IP ranges (coming soon)
IP Issues
Troubleshoot IP problems
Pro Tip: For production, always use Server type with static IPs. For development, use User type or API keys with “Allow any IP” to avoid constant IP updates.