Configure Proxy Using IP Address on macOS

Prev Next

This guide explains how to replace a proxy DNS hostname with a direct IP address on macOS, using either the Network Settings GUI or a shell script.

This is useful in environments where:

  • DNS resolution is unreliable or slow
  • You need to route traffic through a specific egress IP
  • Consistent IP usage is required for Conditional Access or firewall rules

Manual Method (System Settings)

  1. Open System Settings โ†’ Network
  2. Select your current network (e.g., Wi-Fi or Ethernet)
  3. Click Details โ†’ Proxies
  4. Under:
    • Web Proxy (HTTP) and
    • Secure Web Proxy (HTTPS)
      Replace proxy.company.com with the IP address of the proxy (e.g., 192.168.1.10)
  5. Set the port (usually 8080)
  6. Click OK and Apply

Scripted Method (Bash)

Use this shell script to apply proxy settings using a raw IP address across all network services:

#!/bin/bash

# Define proxy IP and port
PROXY="192.168.1.10"
PORT="8080"

# Get list of all network services (excluding the header)
services=$(networksetup -listallnetworkservices | tail +2)

# Apply proxy settings to each network service
for service in $services; do
  echo "Setting IP proxy for: $service"
  networksetup -setwebproxy "$service" "$PROXY" "$PORT"
  networksetup -setsecurewebproxy "$service" "$PROXY" "$PORT"
  networksetup -setproxybypassdomains "$service" $(echo $EXCLUSIONS | tr "," " ")
done