hotspot-socks-proxy


Namehotspot-socks-proxy JSON
Version 3.3.21 PyPI version JSON
download
home_pageNone
SummarySOCKS proxy for routing traffic through WiFi interface
upload_time2025-01-23 19:11:41
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
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"
}
        
Elapsed time: 0.41325s