Client Types Explained
KnoxCall supports two types of clients, each optimized for different use cases. Both types support single IPs and CIDR ranges. This guide helps you choose the right type.The Two Types
| Type | Best For | IP Stability | Example |
|---|---|---|---|
| Server | Production servers, office networks, cloud subnets | Static (unchanging) | AWS EC2 with Elastic IP, office 192.168.1.0/24 |
| User | Developer machines, QA testers | Dynamic (may change) | Laptop on home Wi-Fi |
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
Using CIDR Ranges
Both Server and User types support CIDR notation for authorizing IP ranges. This is useful for office networks, VPNs, and cloud subnets.Examples with CIDR
Office Network
192.168.1.0 to 192.168.1.255
Corporate VPN
10.8.0.0 to 10.8.255.255
Cloud Provider Subnet
172.31.0.0 to 172.31.15.255
Common CIDR Ranges
/32- 1 IP (just enter the IP without/32)/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)
CIDR Best Practices
✅ Do:- Use smallest range that covers your needs
- Document what network the range represents
- Audit periodically (remove if unused)
- Use
0.0.0.0/0(allows entire internet!) - Use overly broad ranges unnecessarily
Comparison Table
| Feature | Server | User |
|---|---|---|
| IP Format | Single IP or CIDR range | Single IP or CIDR range |
| Example IP | 52.123.45.67 or 192.168.1.0/24 | 203.45.67.89 |
| Stability | Permanent | May change |
| Use Case | Production servers, office networks | Developer laptops, QA testers |
| Trust Level | High | Medium |
| Environment | Production, Staging | Dev/Staging |
| Maintenance | Low | Medium (IP updates) |
Choosing the Right Type
Decision Tree
Examples
Scenario: AWS EC2 instance- Infrastructure? ✅ Yes (static Elastic IP)
- → Server type
- Infrastructure? ❌ No (person’s device)
- → User type
- Infrastructure? ✅ Yes (network)
- → Server type with CIDR range (e.g.,
192.168.1.0/24)
- Infrastructure? ✅ Yes (VPN network)
- → Server type with CIDR range (e.g.,
10.8.0.0/16)
Security Considerations
Trust Levels
Server (Highest Trust):- ✅ Production traffic allowed
- ✅ Access to sensitive data
- ✅ Critical operations
- ⚠️ CIDR ranges increase exposure — use the smallest range needed
- ⚠️ Development/staging only
- ⚠️ Limited permissions
- ⚠️ Regular audits
Recommendations by Environment
Production:- ✅ Server type only
- ❌ No User types
- ⚠️ CIDR ranges only for trusted corporate networks
- ✅ Server type for staging servers
- ✅ User type for QA team
- ✅ Both 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 | Server | 192.168.1.0/24 |
| Staging server on cloud | Server | 54.200.11.22 |
| QA team member | User | 180.123.45.67 |
| Corporate VPN | Server | 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.