Download the PHP package tourze/workerman-rfc3489 without Composer
On this page you can find all versions of the php package tourze/workerman-rfc3489. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package workerman-rfc3489
Workerman RFC3489 (STUN Protocol) Implementation
中文
A high-performance implementation of RFC3489 STUN protocol, supporting NAT traversal and public IP address discovery.
Description
This library provides a complete implementation of the RFC3489 STUN (Session Traversal Utilities for NAT) protocol using the Workerman framework. It enables applications to discover their public IP addresses and determine the type of NAT they are behind, which is essential for peer-to-peer communication and media streaming applications.
Features
- Complete RFC3489 STUN protocol implementation
- Support for Binding requests and Shared Secret requests
- Built-in NAT type detection
- High performance and low latency
- Clean and intuitive API
- Comprehensive test coverage
- Full IPv4 and IPv6 support
Installation
Quick Start
Creating STUN Messages
Use the MessageFactory to easily create various types of STUN messages:
Setting up a STUN Client
Setting up a STUN Server
NAT Type Detection
Usage
Basic Configuration
Advanced Usage
For more complex scenarios, you can extend the base classes or implement custom handlers:
Security
This implementation includes several security considerations:
- Transaction ID validation to prevent replay attacks
- Message integrity checks using HMAC-SHA1
- Proper error handling for malformed messages
- Rate limiting support for server implementations
Dependencies
- PHP 8.1 or higher
- ext-filter
- ext-hash
- ext-sockets
- psr/log
- symfony/yaml
- tourze/enum-extra
- workerman/workerman
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Support
If you encounter any issues or have questions, please create an issue on GitHub.
All versions of workerman-rfc3489 with dependencies
ext-hash Version *
ext-sockets Version *
psr/log Version ^3|^2|^1
symfony/dependency-injection Version ^7.3
symfony/framework-bundle Version ^7.3
symfony/yaml Version ^7.3
tourze/enum-extra Version 1.0.*
workerman/workerman Version ^5.1