Wednesday, October 1, 2025

Checking and Bypassing Proxy Settings on Windows: A Comprehensive Guide for Network Troubleshooting

 

Method 1: Using Windows Settings

Open Windows Settings:

Press Win + I to open the Settings window.

Navigate to Network & Internet:

Click on Network & Internet.

Go to Proxy Settings:

In the left sidebar, click on Proxy.

Check Proxy Configuration:

Under Automatic proxy setup, see if Automatically detect settings is toggled on.

Under Manual proxy setup, see if Use a proxy server is turned On.

If it’s on, the address and port of the proxy server will be listed below.


How To Configure Proxy Settings In Windows 11 And Server 2022 HTMD Blog


Method 2: Using Command Prompt

Open Command Prompt:

Press Win + R, type cmd, and press Enter.

Check Proxy Settings:

Type the following command and press Enter:

netsh winhttp show proxy

Interpret the Results:

If the result is Direct access (no proxy server), no proxy is configured at the system level.

Unexpected HTTP_PROXY Not Found In Environmental Variables Was Used When  Opening Tableau Desktop


If a proxy server is listed, it will show the address and port.Office 365 MSOnline PowerShell and Proxy Servers | Miss Tech


Method 3: Using Internet Options

Open Internet Options:

Press Win + R, type inetcpl.cpl, and press Enter.

Go to Connections Tab:

Click on the Connections tab.

Open LAN Settings:

Click the LAN settings button near the bottom.

Check Proxy Settings:

See if Use a proxy server for your LAN is checked.
If checked, the proxy server’s address and port will be shown.

Also, check if Automatically detect settings is checked under Automatic configuration.

c# - How to change LAN Settings (proxy configuration) programmatically -  Stack Overflow


1) Add proxy exceptions (recommended when you need certain hosts to bypass the proxy)

Purpose: Let specific hosts, domains or local addresses skip the proxy while leaving the proxy active for everything else.

Windows Settings (Windows 10 / 11)

  • Press Win + I → Network & Internet → Proxy.
  • Under Manual proxy setup, if Use a proxy server is On, click Edit (or look for the Exceptions / Don’t use proxy server for local (intranet) addresses field).
  • In the exceptions box add hosts/domains separated by semicolons. Examples:

  • localhost;127.0.0.1;*.internal.example.com;10.0.0.0/8
  • Or simply localhost;127.0.0.1;*.mycompany.local
  • Save changes. Apps that use system proxy settings will now bypass the proxy for those addresses (may require restart).
  • Windows proxy configuration example setting

    Internet Options (works for legacy apps / Internet Explorer settings)

  • Press Win + R, type inetcpl.cpl → Enter.
  • Go to Connections → LAN settings → Advanced.
  • In the Exceptions field add hosts/domains separated by semicolons (same format as above).
  • Optionally check Bypass proxy server for local addresses. Click OK twice.
  • Setup Proxy Server in Windows 10


  • 2) Temporarily disable the proxy (only when you have permission)

    Purpose: Turn the proxy off temporarily for troubleshooting.

    Windows Settings

    Win + I → Network & Internet → Proxy.
    Under Manual proxy setup, toggle Use a proxy server to Off.
    Under Automatic proxy setup, you may also toggle Automatically detect settings off if required by IT for a specific test.
    After testing, re-enable the settings exactly as they were or restore from documented configuration.

    Note: Some corporate environments set proxy via Group Policy; turning it off locally may not work or may be reverted by IT. Always document and get approval.


    3) Environment variables for command-line/tools (targeted bypass)

    Purpose: Let specific CLI tools skip proxy by using NO_PROXY/no_proxy. Useful for testing or for tools that honor these variables.

    Per-session (PowerShell):

    $env:NO_PROXY = "localhost,127.0.0.1,.internal.example.com"
    # or
    no_proxy = "localhost,127.0.0.1,.internal.example.com"
    $env
    :

    Persist for current user (PowerShell - will apply after new sessions):

    setx NO_PROXY "localhost,127.0.0.1,.internal.example.com"

    Notes:

    Use commas (,) or platform-expected separator depending on the tool; check the tool’s docs.
    Some tools expect NO_PROXY entries with leading dot for domains (e.g., .example.com).

    4) App-specific proxy settings (useful to avoid system-wide changes)

    Firefox

    Menu → Settings → General → Network Settings → Settings…
    Choose Manual proxy configuration or No proxy for and add exceptions.

    Chrome

    Chrome uses the system proxy (Windows Settings). For app-specific control you can use extensions or launch flags when permitted (admin policies may block these).

    Developer tools / local testing

    Many dev servers (e.g., local webservers) bind to localhost and are automatically exempt if you added localhost/127.0.0.1 to exceptions.

    5) Verify changes (how to check that an exception or disable worked)

    Re-check system proxy: netsh winhttp show proxy (in an elevated Command Prompt).

    In PowerShell, run a connectivity test to a host that should bypass the proxy:

    Test-NetConnection -ComputerName internal-service.example.com -Port 80

    Try the specific app or browser and confirm the request reaches the expected host directly (or check proxy logs with your admin).

    Tuesday, September 30, 2025

    Ultimate Guide: When and How to Use HAR Files, Fiddler, and Wireshark for Network Troubleshooting in 2025

    How to Use Fiddler: A Complete Guide for Troubleshooting HTTP/HTTPS Traffic

    What is Fiddler?

    Fiddler is a free web debugging proxy tool that captures all HTTP and HTTPS traffic between your computer and the internet or servers. It helps you inspect, debug, and modify web requests and responses, making it a must-have tool for developers, testers, and network admins troubleshooting web applications and APIs.


    When to Use Fiddler?

    Use Fiddler when you want to:

    • Debug web applications: Find out why a webpage or web app isn’t loading properly or is slow.

    • Inspect API calls: View detailed REST API requests and responses, including headers, payloads, and status codes.

    • Troubleshoot SSL/TLS issues: Identify problems with HTTPS, certificates, redirects, or encryption.

    • Analyze authentication problems: Check cookies, tokens, OAuth headers for login or access failures.

    • Simulate network conditions: Slow down requests, block resources, or modify server responses to test app behavior.

    • Test error handling: Mock server errors to verify how your app responds.

    • Monitor or filter traffic: Focus on specific hosts, domains, or HTTP status codes.


    How to Use Fiddler: Step-by-Step

    1. Download and Install Fiddler

    • Go to the official Telerik site: https://www.telerik.com/fiddler

    • Download Fiddler Everywhere (cross-platform) or Fiddler Classic (Windows-only).

    • Follow the installer prompts to complete installation.


    2. Launch Fiddler and Configure HTTPS Decryption

    • Open Fiddler.

    • Go to Tools > Options > HTTPS tab.

    • Enable Capture HTTPS CONNECTs.

    • Check Decrypt HTTPS traffic.

      Tutorial - How to use Fiddler to analyze HTTP Web Requests (Tips) |  ZappySys Blog

    • When prompted, install the Fiddler Root Certificate (this allows Fiddler to intercept and decrypt HTTPS traffic securely).

    • This enables capturing and inspecting encrypted web traffic.


    3. Start Capturing Traffic

    • Fiddler starts capturing traffic automatically when launched.

    • If not capturing, click Start Capturing (or press F12).

      How to use Fiddler to analyze HTTP Web Requests – ZappySys Help Center

    • Open your web browser or application and reproduce the issue you want to debug.


    4. Inspect Captured Traffic

    • Captured sessions appear in the Sessions list.

    • Click any session to view detailed info:

      • Inspectors tab: View Request and Response headers, bodies, cookies, JSON/XML content.

      • Statistics tab: View timing details like DNS lookup, server processing, and content download time.

      • Timeline tab: Visualize request/response timing and bottlenecks.

        User Interface Guide - Fiddler Classic


    5. Filter Traffic

    • Use the Filters tab to narrow down visible traffic.

    • Filter by:

      • Host/domain name (e.g., api.example.com).

      • HTTP status codes (e.g., 400-599 for errors).

      • Content types (e.g., JSON, images).

      • Process names (e.g., chrome.exe).

    • Filtering reduces noise and helps focus on relevant traffic.


    6. Modify and Replay Requests

    • Right-click a session → Replay > Reissue and Edit to resend a request.

    • Use Set Breakpoint to pause before sending requests or receiving responses:

      • Right-click → Set Breakpoint > Before Request or Before Response.

    • Edit headers, request body, or response content in the Inspectors pane.

    • Resume traffic by clicking Run to Completion.

    • Useful for testing changes without changing server code.

      Test Web Requests in Fiddler Composer - Replay existing REST API requests or send new one (Edit Header, Body, URL)


    7. Use AutoResponder to Mock Responses

    • Go to AutoResponder tab.

    • Create rules to match requests (URL or headers).

    • Serve custom responses or error codes (e.g., simulate 500 Internal Server Error).

    • Great for testing client-side error handling or app behavior without server changes.Fiddler AutoResponder (Test Fake Response from local file - Rule match based on URL Pattern)


    Common Scenarios with Fiddler and Examples

    ScenarioWhat to DoExample
    Webpage won’t load or slowCapture HTTP requests, check response timesFind a 3rd party script delaying page load
    API returns 403 ForbiddenInspect headers, tokens, authentication infoVerify if OAuth token is missing or expired
    SSL/TLS certificate errorsCapture HTTPS handshake, check certificate infoIdentify if the SSL certificate is invalid or expired
    Debug JSON payload errorsView and edit JSON request/response bodiesFix malformed JSON being sent in POST requests
    Test app behavior on errorsUse AutoResponder to simulate 500 or 404Check if app retries or shows error messages properly
    Filter noisy trafficUse Filters to show requests to one API domainFocus only on calls to api.yourservice.com

    Example: Debugging a Failing API Call

    1. Launch Fiddler and enable HTTPS decryption.

    2. In your app, perform the API call that’s failing.

    3. In Fiddler, locate the request to the API endpoint.

    4. Click it and check the Request Headers for missing or incorrect Authorization tokens.

    5. View the Response status code and body for error messages.

    6. Use the Timeline tab to check server response time.

    7. Modify the request header via breakpoint, add a valid token, and replay to confirm fix.


    Best Practices

    • Always disable capturing when done to save resources.

    • Use filters early to avoid overwhelming traffic logs.

    • Export sessions via File > Save to share with teams.

    • Be careful with sensitive data — sanitize logs before sharing.

    • Use the latest version of Fiddler for improved HTTPS and protocol support.


    Summary

    Fiddler is a versatile and powerful tool for anyone working with web applications or APIs. From inspecting live traffic, debugging authentication, simulating network errors, to performance analysis — it covers almost every need in HTTP/HTTPS troubleshooting.


    How to Use HAR Files: A Complete Guide for Troubleshooting Web Performance and Network Issues

    What is a HAR File?

    HAR stands for HTTP Archive. It is a JSON-formatted file that records a browser’s network activity during a web session. A HAR file captures all HTTP and HTTPS requests and responses, including headers, cookies, timings, payload sizes, and status codes.


    When to Use HAR Files?

    Use HAR files when you need to:

    • Diagnose slow webpage loading: Identify which resources are causing delays.

    • Analyze front-end performance: Understand request waterfalls, redirects, and failed resources.

    • Share network traffic details: Provide a snapshot of browser activity to developers or support teams without live access.

    • Debug client-side errors: Track failed API calls, missing files, or errors in third-party scripts.

    • Troubleshoot resource loading issues: See exactly which assets are blocked or missing.


    How to Generate HAR Files: Step-by-Step

    In Google Chrome

    1. Open Chrome and navigate to the page where you want to capture network activity.

    2. Press F12 or right-click the page and select Inspect to open Developer Tools.

    3. Go to the Network tab.

      Network > Export HAR file

    4. Check the Preserve log checkbox (optional, but useful to keep network data during page reloads or navigation).

    5. Reload the webpage or perform the action causing the issue.

    6. Once done, right-click anywhere in the list of network requests.

    7. Select Save all as HAR with content.

    8. Choose a location and save the .har file.

      Export HAR file


    In Firefox

    1. Open Firefox and go to the page where you want to record.

    2. Press F12 to open Developer Tools.

    3. Click the Network tab.

    4. Reload the page or perform the needed actions.

    5. Click the gear icon ⚙️ in the Network tab, and select Save all as HAR.

    6. Save the .har file.


    How to Analyze HAR Files

    • Open Chrome DevTools → Network tab → Click the Import HAR button (folder icon).

    • Load the HAR file.

    • View the Waterfall chart showing the timeline of each resource loading.

    • Filter by HTTP status codes to find errors (e.g., 404, 500).

    • Inspect request and response headers, cookies, and payload size.

    • Identify slow DNS lookups, long server response times, or stalled connections.


    Common Scenarios and How HAR Files Help

    ScenarioWhat to Look ForHow HAR Helps
    Slow webpage loadingLong wait times, blocked requests, or slow DNSPinpoints exactly which resource or step causes delays
    Missing or failed resources404 Not Found or 500 Internal Server ErrorShows which files failed to load and their impact
    Excessive redirectsMultiple 3xx status codesDetects redirect loops or unnecessary redirects
    Third-party scripts failingErrors or delays in scripts from external domainsIdentifies problematic third-party resources slowing page
    API call failures4xx/5xx status codes and response payloadsHelps debug frontend API issues by analyzing failed requests

    Example: Troubleshooting a Slow Checkout Page

    1. Open Developer Tools → Network tab.

    2. Enable Preserve log to keep requests while moving between pages.

    3. Perform actions on the checkout page.

    4. Save the HAR file after checkout completes or issue reproduces.

    5. Load the HAR in Chrome DevTools or send it to the development team.

    6. Review the waterfall to find slow-loading assets or failed API calls causing delays.


    Best Practices for HAR Files

    • Always enable "Preserve log" if you want to capture across page reloads or navigation.

    • Limit HAR capture duration to reduce file size.

    • Avoid sharing sensitive info — HAR files may contain personal data or auth tokens.

    • Use HAR files as a snapshot, useful for offline analysis or when remote debugging isn’t possible.

    • Combine HAR file analysis with other tools like Fiddler or Wireshark for deeper troubleshooting.


    Summary

    HAR files are an excellent way to capture and share detailed browser network activity, especially useful for frontend performance troubleshooting and debugging client-side web issues. They provide a quick, portable snapshot that anyone on your team can analyze without requiring live access.

    __________________

    Wireshark: A Complete Guide for Network Packet Capture and Troubleshooting

    What is Wireshark?

    Wireshark is a powerful, open-source network protocol analyzer that captures and inspects network traffic at a very detailed packet level. Unlike tools that focus only on HTTP or application-layer traffic, Wireshark lets you see all network packets flowing through your network interface — including TCP/IP, DNS, DHCP, SSL/TLS, VoIP, and many more protocols.


    When to Use Wireshark?

    Use Wireshark when you need to:

    • Diagnose low-level network issues like packet loss, retransmissions, or latency.

    • Analyze non-HTTP protocols such as DNS, DHCP, TCP handshakes, or VoIP.

    • Investigate security issues by spotting unusual or suspicious network traffic.

    • Troubleshoot network connectivity problems or performance bottlenecks.

    • Understand detailed packet flows for complex troubleshooting or network audits.


    How to Set Up and Use Wireshark

    Step 1: Download and Install Wireshark

    • Go to wireshark.org and download the latest stable version.

    • During installation on Windows, also install Npcap (required for packet capture).

    • Launch Wireshark with administrator or root privileges for full network capture.

    Step 2: Select the Network Interface to Capture

    • When Wireshark opens, it displays a list of available network interfaces (Wi-Fi, Ethernet, VPN, etc.).

    • Choose the interface through which your traffic flows (e.g., Wi-Fi for wireless connections).

    • Click the Start Capture (shark fin icon) to begin capturing live packets.

      How to create a Wireshark capture – Network Optix

    Step 3: Reproduce the Issue

    • While Wireshark is capturing, perform the network action or reproduce the connectivity/performance problem you want to diagnose.

    Step 4: Stop the Capture

    • Click the red Stop button once you have enough data.


    Wireshark Filters: Focus on What Matters

    Wireshark captures all network traffic on the interface, which can be overwhelming. Filters help you narrow down to relevant packets.

    To display packets using the HTTP protocol you can enter the following filter in the Display Filter Toolbar:

    Screenshot showing wireshark http traffic protocol filter

    To display all the HTTP traffic you need to use the following protocol and port display filter:

    Screenshot showing wireshark http traffic tcp dstport 80
    Now you’ll see all the packets related to your browsing of any HTTP sites you browsed while capturing.

    Filtering HTTP Traffic to and from Specific IP Address in Wireshark

    If you want to filter for all HTTP traffic exchanged with a specific you can use the “and” operator. If, for example, you wanted to see all HTTP traffic related to a site at xxjsj you could use the following filter:

    tcp.port == 80 and ip.addr == 65.208.228.223


    Screenshot showing wireshark http traffic tcp dstport 80 and ip addr

    Notice only packets with 65.208.228.223 in either the source or destination columns is shown. You can also use the OR or || operators to create an “either this or that” filter.

    tcp.port == 80 || ip.addr == 65.208.228.223

    Wireshark HTTP Method Filter

    If you want to dig into your HTTP traffic you can filter for things like GET, PUT, POST, DELETE, HEAD, OPTIONS, CONNECT, and TRACE. To filter for these methods use the following filter syntax:


    http.request.method == requestmethod

    For example, if you wanted to filter for just the GET requests, enter the following filter in the Display Filter toolbar:

    http.request.method == “GET”

    Screenshot showing wireshark http traffic request method get filter


    Now you’re left with all of the GET requests for assets from the website.

    Viewing HTTP Packet Information in Wireshark

    Working with the GET Method Filter displayed above, click on a packet in the Packet List Pane and then look at the information in the Packet Details Pane. Expand the Hypertext Transfer Protocol detail:

    Screenshot showing wireshark http traffic hypertext information


    To filter for a specific response, such as a HTTP 200 (OK), HTTP 301 (Moved Permanently), or HTTP 404 (Not Found) use the following display filter:

    http.response.code == 200

    Screenshot showing wireshark http traffic response filter 200


    Change 200 to another code to search for that code. Here is a list of HTTP Status Codes.

    Follow the Full HTTP Stream to Match Get Requests with Responses


    A very handy feature of Wireshark is the ability to view streams in a human readable format from beginning to end. To this, pick a HTTP protocol packet such as the packet containing the 200 response that we saw earlier and right click on it. Click on Follow -> HTTP Stream.

    Screenshot showing wireshark http traffic follow http stream menu


    You’ll now be presented with a window that shows the entire stream including the GET (red) and HTTP/1.1 200 OK (Blue)

    Screenshot showing wireshark http traffic follow http stream


    As you can see, there is a lot to HTTP traffic and just filtering for the HTTP protocol doesn’t cut it.





    Common Display Filters with Examples

    FilterPurposeExample Use Case
    ip.addr == 192.168.1.10Show all packets to or from a specific IPFocus on traffic involving a particular client or server
    tcp.port == 443Show traffic on TCP port 443 (HTTPS)Analyze HTTPS sessions
    dnsDisplay only DNS protocol packetsTroubleshoot DNS lookup failures
    tcp.analysis.retransmissionShow TCP retransmissions (packet loss)Identify network packet loss causing slow connections
    icmpDisplay ICMP packets (ping, traceroute)Check connectivity using ping or traceroute requests
    bootpShow DHCP traffic (BOOTP protocol)Diagnose IP address assignment issues
    tls.handshakeDisplay TLS/SSL handshake messagesDebug SSL/TLS connection failures
    httpShow HTTP trafficInspect web page requests and responses

    How to Apply Filters

    • In the top filter bar, type your filter expression (e.g., ip.addr == 10.0.0.5).

    • Press Enter to apply the filter.

    • Combine filters using logical operators (andor), e.g., ip.addr == 10.0.0.5 and tcp.port == 80.


    How to Analyze Captured Packets

    • Packet List Pane: Shows each captured packet in summary form.

    • Packet Details Pane: Displays detailed protocol info and headers for the selected packet.

    • Packet Bytes Pane: Shows raw packet data in hex and ASCII.

    Useful Analysis Tips

    • Right-click a packet and select Follow → TCP Stream to view the full conversation.

    • Use Statistics menu for protocol hierarchy, endpoint conversations, IO graphs, and flow diagrams.

    • Export specific packets for sharing via File → Export Specified Packets.


    Common Troubleshooting Scenarios with Wireshark

    ScenarioWhat to Look ForWireshark Insight
    Packet loss causing slow appTCP retransmissions, duplicate ACKsConfirm network issues causing delays
    DNS resolution failuresDNS queries and responses, errorsPinpoint DNS server or configuration problems
    DHCP issuesDHCP Discover, Offer, Request, Ack messagesDetect IP address assignment failures
    SSL/TLS handshake failureTLS handshake messages, alert messagesDiagnose certificate or negotiation issues
    Unusual network activityUnknown ports, suspicious protocolsSpot potential malware or security threats

    Example: Diagnosing Packet Loss on a Video Stream

    1. Start Wireshark capture on your active network interface.

    2. Play the video stream to generate traffic.

    3. Stop capture after the issue appears.

    4. Apply filter: tcp.analysis.retransmission to see retransmitted packets.

    5. Inspect timing and sequence numbers to understand packet loss and delays.


    Final Tips

    • Always run Wireshark with proper permissions to capture all traffic.

    • Use filters early to reduce noise and focus on the issue.

    • Avoid capturing unnecessarily long sessions to minimize file sizes.

    • Remember Wireshark captures sensitive data — handle capture files securely.

    • Combine Wireshark insights with application-level logs or browser tools for holistic troubleshooting.