Name | hotspot-socks-proxy JSON |
Version |
3.3.21
JSON |
| download |
home_page | None |
Summary | SOCKS proxy for routing traffic through WiFi interface |
upload_time | 2025-01-23 19:11:41 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.9 |
license | None |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# hotspot-socks-proxy
A high-performance SOCKS5 proxy server designed to route traffic through WiFi interfaces. Perfect for scenarios where you need to ensure traffic goes through a specific network interface.
## Features
### Core Functionality
- SOCKS5 proxy server with multi-process support
- Automatic WiFi interface detection and validation
- Built-in DNS resolution with multiple fallback options
- Process pool management with automatic recovery
- Clean shutdown handling
### Performance & Reliability
- Multi-process architecture for optimal performance
- Thread-safe statistics tracking
- Automatic process recovery on failure
- Configurable DNS resolvers with fallback mechanisms
- Connection pooling and timeout handling
### User Interface
- Real-time terminal UI with bandwidth monitoring
- Live connection statistics
- Clean terminal interface with borders
- Keyboard controls (Ctrl-C to exit)
- Automatic unit scaling for bandwidth display
### Network Management
- Automatic WiFi interface detection
- Interface validation and filtering
- IP address management
- Support for both wireless and fallback interfaces
### Additional Features
- Clipboard integration for easy proxy configuration sharing
- Support for both Windows and Unix-like systems
- Root privilege checking
- Comprehensive error handling and reporting
## Installation
```bash
pip install hotspot-socks-proxy
```
## Usage
Run the proxy server (requires root/admin privileges):
```bash
# Basic usage
sudo hotspot-proxy proxy
# Custom port and processes
sudo hotspot-proxy proxy --port 9050 --processes 4
```
### Options
- `--processes/-p`: Number of proxy processes (default: CPU count)
- `--port`: Port to listen on (default: 9050)
### Example Code
```python
from hotspot_socks_proxy.core.proxy import create_proxy_server
# Start a SOCKS proxy server on localhost:9050 with 4 processes
create_proxy_server("127.0.0.1", 9050, 4)
```
## Requirements
- Python >= 3.12
- Root/Administrator privileges for proper operation
- Required packages (automatically installed):
- typer: CLI interface
- prompt-toolkit: Terminal UI
- rich: Pretty output formatting
- psutil: System and process utilities
- pyperclip: Clipboard integration
- dnspython: DNS resolution
## Development
### Project Structure
```bash
src/hotspot_socks_proxy/
├── cmd/ # Command-line interface modules
│ ├── cli.py # Main CLI entry point
│ ├── find_wifi.py # WiFi interface detection
│ ├── http.py # HTTP proxy implementation
│ └── socks.py # SOCKS proxy interface
├── core/ # Core functionality
│ ├── lib/ # Core library components
│ │ ├── proxy_server.py # Multi-process server
│ │ ├── proxy_stats.py # Statistics tracking
│ │ ├── proxy_ui.py # Terminal UI
│ │ └── socks_handler.py # SOCKS protocol handler
│ ├── exceptions.py # Custom exceptions
│ ├── network.py # Network interface management
│ └── proxy.py # Main entry point
```
## Documentation
Full documentation is available at [GitHub Pages URL].
## License
This project is licensed under the GPL-3.0 License.
## Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Raw data
{
"_id": null,
"home_page": null,
"name": "hotspot-socks-proxy",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": null,
"author": null,
"author_email": "tadeasf <business@tadeasfort.com>",
"download_url": "https://files.pythonhosted.org/packages/3c/ae/dbfc6c97ee33bdf1c80857226d46936f496d1a9e51f71c9f72163eebb60d/hotspot_socks_proxy-3.3.21.tar.gz",
"platform": null,
"description": "# hotspot-socks-proxy\n\nA high-performance SOCKS5 proxy server designed to route traffic through WiFi interfaces. Perfect for scenarios where you need to ensure traffic goes through a specific network interface.\n\n## Features\n\n### Core Functionality\n\n- SOCKS5 proxy server with multi-process support\n- Automatic WiFi interface detection and validation\n- Built-in DNS resolution with multiple fallback options\n- Process pool management with automatic recovery\n- Clean shutdown handling\n\n### Performance & Reliability\n\n- Multi-process architecture for optimal performance\n- Thread-safe statistics tracking\n- Automatic process recovery on failure\n- Configurable DNS resolvers with fallback mechanisms\n- Connection pooling and timeout handling\n\n### User Interface\n\n- Real-time terminal UI with bandwidth monitoring\n- Live connection statistics\n- Clean terminal interface with borders\n- Keyboard controls (Ctrl-C to exit)\n- Automatic unit scaling for bandwidth display\n\n### Network Management\n\n- Automatic WiFi interface detection\n- Interface validation and filtering\n- IP address management\n- Support for both wireless and fallback interfaces\n\n### Additional Features\n\n- Clipboard integration for easy proxy configuration sharing\n- Support for both Windows and Unix-like systems\n- Root privilege checking\n- Comprehensive error handling and reporting\n\n## Installation\n\n```bash\npip install hotspot-socks-proxy\n```\n\n## Usage\n\nRun the proxy server (requires root/admin privileges):\n\n```bash\n# Basic usage\nsudo hotspot-proxy proxy\n\n# Custom port and processes\nsudo hotspot-proxy proxy --port 9050 --processes 4\n```\n\n### Options\n\n- `--processes/-p`: Number of proxy processes (default: CPU count)\n- `--port`: Port to listen on (default: 9050)\n\n### Example Code\n\n```python\nfrom hotspot_socks_proxy.core.proxy import create_proxy_server\n\n# Start a SOCKS proxy server on localhost:9050 with 4 processes\ncreate_proxy_server(\"127.0.0.1\", 9050, 4)\n```\n\n## Requirements\n\n- Python >= 3.12\n- Root/Administrator privileges for proper operation\n- Required packages (automatically installed):\n - typer: CLI interface\n - prompt-toolkit: Terminal UI\n - rich: Pretty output formatting\n - psutil: System and process utilities\n - pyperclip: Clipboard integration\n - dnspython: DNS resolution\n\n## Development\n\n### Project Structure\n\n```bash\nsrc/hotspot_socks_proxy/\n\u251c\u2500\u2500 cmd/ # Command-line interface modules\n\u2502 \u251c\u2500\u2500 cli.py # Main CLI entry point\n\u2502 \u251c\u2500\u2500 find_wifi.py # WiFi interface detection\n\u2502 \u251c\u2500\u2500 http.py # HTTP proxy implementation\n\u2502 \u2514\u2500\u2500 socks.py # SOCKS proxy interface\n\u251c\u2500\u2500 core/ # Core functionality\n\u2502 \u251c\u2500\u2500 lib/ # Core library components\n\u2502 \u2502 \u251c\u2500\u2500 proxy_server.py # Multi-process server\n\u2502 \u2502 \u251c\u2500\u2500 proxy_stats.py # Statistics tracking\n\u2502 \u2502 \u251c\u2500\u2500 proxy_ui.py # Terminal UI\n\u2502 \u2502 \u2514\u2500\u2500 socks_handler.py # SOCKS protocol handler\n\u2502 \u251c\u2500\u2500 exceptions.py # Custom exceptions\n\u2502 \u251c\u2500\u2500 network.py # Network interface management\n\u2502 \u2514\u2500\u2500 proxy.py # Main entry point\n```\n\n## Documentation\n\nFull documentation is available at [GitHub Pages URL].\n\n## License\n\nThis project is licensed under the GPL-3.0 License.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n",
"bugtrack_url": null,
"license": null,
"summary": "SOCKS proxy for routing traffic through WiFi interface",
"version": "3.3.21",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c8c31f70ff9527c3c1528d7c5decbb79b7a69b06c2eb4a99d3b96cbc8c1fa5ea",
"md5": "68df99db43d3382f892c90957c44df27",
"sha256": "4a1934e1203bbecf40be0760713ab44dfb831c2657cc81aab61d1ddff73e6459"
},
"downloads": -1,
"filename": "hotspot_socks_proxy-3.3.21-py3-none-any.whl",
"has_sig": false,
"md5_digest": "68df99db43d3382f892c90957c44df27",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 25625,
"upload_time": "2025-01-23T19:11:40",
"upload_time_iso_8601": "2025-01-23T19:11:40.524442Z",
"url": "https://files.pythonhosted.org/packages/c8/c3/1f70ff9527c3c1528d7c5decbb79b7a69b06c2eb4a99d3b96cbc8c1fa5ea/hotspot_socks_proxy-3.3.21-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3caedbfc6c97ee33bdf1c80857226d46936f496d1a9e51f71c9f72163eebb60d",
"md5": "d034ea7ee60d6693a122fb5bad62a66c",
"sha256": "999d7f881402f899d5703947cc1291d6acb88e031e52a0a22d9d0c5d654624b9"
},
"downloads": -1,
"filename": "hotspot_socks_proxy-3.3.21.tar.gz",
"has_sig": false,
"md5_digest": "d034ea7ee60d6693a122fb5bad62a66c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 23347,
"upload_time": "2025-01-23T19:11:41",
"upload_time_iso_8601": "2025-01-23T19:11:41.783080Z",
"url": "https://files.pythonhosted.org/packages/3c/ae/dbfc6c97ee33bdf1c80857226d46936f496d1a9e51f71c9f72163eebb60d/hotspot_socks_proxy-3.3.21.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-23 19:11:41",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "hotspot-socks-proxy"
}