5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[Catalina][Safari] Mac でプロキシの設定を簡単に切り替える

Last updated at Posted at 2019-11-27

はじめに

Chrome だと拡張機能を利用すれば簡単にプロキシの設定を切り替えられます.
ちなみに私が愛用しているのは Proxy SwitchyOmega です.

しかしながら,Safari でプロキシを使うには OS のネットワーク設定を変更しなければなりません.
そのこと自体に変わりはありませんが,比較的簡単に切り替えられる方法を見つけたので載せておきます.

やり方

通常,OS の環境設定からプロキシを設定する場合
「システム環境設定」→「ネットワーク」→「詳細…」→「プロキシ」
のように辿っていくと思います.

下の画像は,「SOCKSプロキシサーバ」で設定する場合の例です.

スクリーンショット 2019-11-27 15.29.28.png

ただ,プロキシを使用する度にこうした必要事項を入力するのは面倒ですよね.

そこでおすすめしたいのが「ネットワーク環境」の追加です.
おそらく,みなさんが普段使用しているのは「自動」という名前のネットワーク環境だと思います.
「システム環境設定」→「ネットワーク」→「ネットワーク環境」→「ネットワーク環境を編集」
のように辿っていくと,「+」ボタンからネットワーク環境を追加できるのです.

スクリーンショット 2019-11-27 15.28.15.png

今回は「プロキシ」という名前のネットワーク環境を追加しました.

あとは今まで通り「詳細…」から自分に必要な設定を加えていきましょう.
プロキシを使いたい場合のみ,作成したネットワーク環境に切り替えて「適用」すれば OK です.

おまけ

私は SSH ダイナミックポートフォワード する場合にプロキシを使用します.
研究室外からの通信を遮断しているマシンに,SSH 経由でブラウザからアクセスしたいからです.

詳しいことは別の方の記事を参考にしてください.

~/.ssh/config で以下のような記述をしておくと

~/.ssh/config
Host fwd-hoge
    HostName <IPアドレス or ホスト名>
    User <ユーザ名>
    IdentityFile ~/.ssh/id_rsa
    DynamicForward 1080

簡単なコマンドでダイナミックポートフォワードが可能です.

$ ssh fwd-hoge

その後は,上に載せた画像のように 1080 番ポートでプロキシ設定すれば大丈夫です.
もちろん <IPアドレス or ホスト名><ユーザ名> で SSH できることが大前提となっています.

おわりに

ネットワーク環境の追加はプロキシに限定した話ではありません.
いつも使用するネットワーク設定があり,それを頻繁に切り替えたい場合に有効だと思います.

追記

専用のスクリプトを書いて切り替える方法もあるようですね.

ついでに,この記事で使用されている networksetup コマンドの man を見てみました.


NETWORKSETUP(8)           BSD System Manager's Manual          NETWORKSETUP(8)

NAME
     networksetup -- configuration tool for network settings in System Preferences.

SYNOPSIS
     networksetup [-listnetworkserviceorder] [-listallnetworkservices] [-listallhardwareports] [-detectnewhardware]
                  [-getmacaddress hardwareport] [-getcomputername] [-setcomputername computername]
                  ...(中略)...
                  [-setsocksfirewallproxy networkservice domain portnumber authenticated username password]
                  [-setsocksfirewallproxystate networkservice on | off] [-getproxybypassdomains networkservice]

ありましたね.
ということは,以下のコマンドで domainportnumber も指定できそうな気配です.

$ networksetup -setsocksfirewallproxy wi-fi localhost 1080

できました.ネットワーク環境を追加するより,むしろこの方が便利かも…

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?