メイン コンテンツにスキップ

MacOS でプロキシと除外設定を構成する

このガイドでは、IP ベースのプロキシを使用する際に、MacOS でプロキシ設定と除外を構成する方法について説明します。これには、次のような WebSockets に依存するアプリケーション向けの除外リストも含まれます。

  • Slack
  • Lucidchart
  • Figma

これらのアプリは、デフォルトで WebSockets をサポートしていない Squid のようなプロキシ環境では、しばしば正常に動作しません。

手動の方法(システム設定)

  1. System SettingsNetwork に移動します。
  2. 使用中のインターフェース(例: Wi-Fi)を選択します。
  3. DetailsProxies をクリックします。
  4. Under web proxy (HTTP) and secure web proxy (HTTPS):
    • proxy.company.comプロキシ IP(例: 192.168.1.10)に置き換えます
    • ポートを設定します(一般的には 8080)。
  5. bypass domains に必要なドメインを追加します(以下を参照)。
  6. OK をクリックし、次に Apply をクリックします。

このスクリプトの動作

  • プロキシ設定をすべてのネットワークインターフェースに適用します
  • HTTP および HTTPS プロキシを設定します
  • プロキシを使用しないバイパス ドメインの一覧を設定します
  • networksetupおよび MDM 管理対象デバイスでの使用に最適です

スクリプトによる方法(bash)

#!/bin/bash

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

# Domains to exclude from proxy — especially for WebSocket-based apps
EXCLUSIONS="localhost,127.0.0.1,*.microsoftonline.com,*.core.windows.net,*.slack.com,*.figma.com,*.lucidchart.com,*.lucid.app"

# Get all active network services
services=$(networksetup -listallnetworkservices | tail +2)

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