Introduction
In the realm of web scraping and network management, proxy misconfigurations are a common cause of downtime. Whether a scraping script has crashed leaving a dangling proxy IP, or malware has altered your system settings, knowing how to reset proxy settings is a critical skill for any developer or sysadmin. This guide covers the restoration of default network behaviors across all major operating systems and browsers, ensuring your traffic flows directly through your local ISP once again.
---
How to Reset Proxy Settings on Windows
Windows manages proxy information in two distinct locations: the modern Windows Settings interface and the legacy Internet Explorer (IE) registry entries. To perform a full reset, you must address both.
Method 1: The Modern Settings UI (Windows 10/11)
This is the standard method for most users in 2025.
1. Press Win + I to open Settings. 2. Navigate to Network & Internet. 3. Select Proxy from the left sidebar. 4. Under "Manual proxy setup," toggle the "Use a proxy server" switch to Off. 5. Under "Automatic proxy setup," ensure "Automatically detect settings" is toggled On (this is the Windows default). 6. Click Save.
Method 2: Command Line / Registry Reset
For advanced users or scripts, using the command line is faster. You can reset the Windows proxy via the registry using reg.exe or PowerShell.
Command Prompt (Admin):
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f
reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /f
PowerShell Script:
Set Proxy to disabled
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 0
Remove the Proxy Server string
Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyServer -ErrorAction SilentlyContinue
Force a refresh of the network settings
winhttp set proxy 1
Method 3: Resetting IE / Legacy Settings
Some older applications rely on the Internet Explorer settings database. If the above steps didn't fix a legacy app, you can use the Windows "Internet Properties" dialog:
1. Press Win + R, type inetcpl.cpl, and hit Enter. 2. Go to the Connections tab. 3. Click LAN settings. 4. Uncheck "Automatically detect settings" (temporarily) and uncheck "Use a proxy server for your LAN". 5. Click OK, then re-check "Automatically detect settings" if you prefer the default Windows behavior.
---
How to Reset Proxy Settings on macOS
macOS stores proxy settings on a per-network basis (Wi-Fi, Ethernet, etc.). You must reset the setting for the active interface.
1. Click the Apple Menu > System Settings (or System Preferences on older versions). 2. Go to Network. 3. Select your active connection (e.g., Wi-Fi) on the left. 4. Click Details (or "Advanced"). 5. Click the Proxies tab. 6. You will see a list of protocols (HTTP, HTTPS, SOCKS). Ensure all checkboxes are cleared. 7. At the bottom, you can also select "Auto Proxy Discovery" to restore the default macOS behavior of looking for a WPAD (Web Proxy Auto-Discovery) server, but usually, deselecting everything is the safest "reset." 8. Click OK and then Apply.
Terminal Method for macOS: For power users, you can use the networksetup command to wipe proxy settings for a specific hardware port (e.g., Wi-Fi).
Check your network service name
networksetup -listallnetworkservices
Clear Web Proxy (HTTP)
sudo networksetup -setwebproxystate Wi-Fi off
Clear Secure Web Proxy (HTTPS)
sudo networksetup -setsecurewebproxystate Wi-Fi off
Clear SOCKS Proxy
sudo networksetup -setsocksfirewallproxystate Wi-Fi off
---
How to Reset Proxy Settings on Linux
Linux does not have a single centralized UI for all proxies. Proxies are often set via environment variables in shell configuration files (like ~/.bashrc or /etc/environment) or within the Desktop Environment (GNOME/KDE).
Desktop Environment (GNOME/Ubuntu)
1. Open Settings > Network. 2. Click the gear icon next to your connection. 3. Go to the IPv4 or IPv6 tab. 4. Look for the "Proxy" section and change it to "Disabled" or "Default".
Terminal / Environment Variables
If you set a proxy via the terminal (e.g., export http_proxy=...), you need to edit your shell files.
1. Open your .bashrc or .zshrc file:
nano ~/.bashrc
2. Look for lines containing http_proxy, https_proxy, or HTTP_PROXY. 3. Comment them out (add # to the start of the line) or delete them. 4. Save and exit (Ctrl+X, then Y). 5. Apply changes:
source ~/.bashrc
System-Wide Reset ( systemd)
If the proxy is set system-wide (often found in /etc/environment):
sudo nano /etc/environment
Delete any lines defining http_proxy or https_proxy. Reboot the machine to ensure all services pick up the change.
---
Browser-Specific Proxy Resets
Sometimes the system settings are correct, but the browser is configured to override them.
Google Chrome / Edge
Chromium browsers generally obey system proxy settings by default. However, extensions or command-line launch flags can override this.
1. Go to chrome://settings/system (or edge://settings/system). 2. Ensure "Use system proxy settings" is selected. 3. If you use a switch like --proxy-server="..." in a shortcut, remove that flag. 4. Disable any VPN or Proxy extensions (e.g., in chrome://extensions).
Mozilla Firefox
Firefox is unique because it can have its own proxy profile independent of the OS.
1. Go to Settings > General > scroll down to Network Settings. 2. Click Settings. 3. Select "Use system proxy settings" OR "No proxy". 4. If you select "No proxy," you guarantee a direct connection, effectively resetting any browser-level routing.
---
Developer Guide: Resetting Proxies in Python
If you are a developer writing scraping scripts (like those using requests or selenium), you may have programmatically set a proxy and forgotten to clear it, or you need to ensure your script runs with a clean slate.
Using the requests Library
When using the requests library, if you set proxies globally in a session, you should clear them.
import requests
Create a session that might have had a proxy
session = requests.Session()
Scenario: A proxy was set previously
session.proxies = { "http": "http://10.10.1.10:3128", "https": "http://10.10.1.10:1080", }
RESET: To revert to system defaults (or no proxy), set proxies to None or empty dict
session.proxies = {}
Verify the reset
try: response = session.get("https://httpbin.org/ip") print("Reset Successful. Current IP:", response.json()['origin']) except Exception as e: print("Connection error after reset:", e)
Using Selenium WebDriver
When automating browsers, proxies are set in the Options object. To reset, you must instantiate a new driver or restart the driver with default options.
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
Function to start Chrome WITH NO PROXY (Reset state)
def start_clean_chrome(): options = Options() # Ensure no arguments are passed that set a proxy # options.add_argument(f'--proxy-server=...') # Ensure this is absent
# Explicitly ignore any system proxy if necessary (using 'direct') # But usually, just omitting proxy args is enough to reset to defaults. driver = webdriver.Chrome(options=options) return driver
Example Usage
driver = start_clean_chrome() driver.get("https://httpbin.org/ip") print(driver.page_source) driver.quit()
Summary Table: Reset Commands
| OS / Platform | Action | Command / Path | | :--- | :--- | :--- | | Windows (Registry) | Disable Proxy | reg add ... /v ProxyEnable /d 0 /f | | macOS (Terminal) | Clear Wi-Fi Proxy | sudo networksetup -setwebproxystate Wi-Fi off | | Linux (Env) | Unset Variable | unset http_proxy; unset https_proxy | | Python Requests | Clear Session | session.proxies = {} |
Troubleshooting After Reset
If you have reset your settings but still cannot connect to the internet:
1. Flush DNS: Your DNS cache might be pointing to the old proxy server. * Windows: ipconfig /flushdns * macOS: sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder * Linux: sudo systemd-resolve --flush-caches 2. Check for Malware: Some forms of malware (especially "rootkits") will forcefully reset the proxy to 127.0.0.1 to intercept your traffic. If the setting keeps reverting after a reboot, run a deep system scan. 3. VPN Software: Ensure your VPN client is not running in the background with "Split Tunneling" enabled, which can look like a proxy configuration.