# WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x...>, 'Connection to pypi.org timed out. (connect timeout=15)')': /simple/requests/

- **ID:** `python/pip-index-url-connection-timeout`
- **Domain:** python
- **Category:** network_error
- **Verification:** ai_generated
- **Fix Rate:** 80%

## Root Cause

Network egress to pypi.org is blocked or slow (firewall, VPN, DNS), so each connection attempt times out before the HTTP handshake completes.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| 3.x | active | — | — |

## Workarounds

1. **** (92% success)
   ```
   export PIP_INDEX_URL=https://mirror.corp.example/simple
export PIP_TRUSTED_HOST=mirror.corp.example
python -m pip install requests
   ```
2. **** (88% success)
   ```
   export HTTPS_PROXY=http://proxy.corp.example:3128
export HTTP_PROXY=http://proxy.corp.example:3128
python -m pip install requests
   ```

## Dead Ends

- **** — If the host is unreachable, a longer timeout just makes the failure slower. (80% fail)
- **** — More retries on a blocked route amplify the delay without success. (85% fail)
