SSLVPN (macOS 上の FortiClient) によってプッシュされるデフォルトの DNS サーバーを変更したいと考えています。VPN 経由でネットワーク リソースにアクセスするには、IP アドレスを使用します。当然、別の DNS サーバーを使用することに関心があるとしても、正しい宛先/サブネットへのトラフィックが VPN トンネル経由で正しくルーティングされるように、ルーティング テーブルを変更したくありません。
注記:古い投稿それは質問への答えのようでしたが、macOS Catalina で何をすべきか正確にはわかりませんでした。
VPN接続時scutil --dns
Macのターミナルで実行すると、以下の出力が得られます。
リゾルバ #1 検索ドメイン[0] : mycompanyFQDN.com ネームサーバー[0] : 10.1.2.3 ネームサーバー[1] : 10.4.5.6 ネームサーバー[2] : 192.168.1.1 フラグ: 補足、リクエスト A レコード 到達: 0x00000002 (到達可能) 注文数: 100000 リゾルバ #2 ネームサーバー[0] : 10.1.2.3 ネームサーバー[1] : 10.4.5.6 ネームサーバー[2] : 192.168.1.1 フラグ: リクエストAレコード 到達: 0x00000002 (到達可能) 注文数: 200000
および他のいくつかの ip6 (オプション: mdns) リゾルバ
VPNが接続されていない場合scutil --dns
Macのターミナルで実行すると、以下の出力が得られます。
リゾルバ #1 ネームサーバー[0] : 192.168.1.1 フラグ: リクエストAレコード 到達: 0x00020002 (到達可能、直接到達可能なアドレス) リゾルバ #2 ドメイン: ローカル オプション: mdns タイムアウト: 5 フラグ: リクエストAレコード 到達: 0x00000000 (到達不能) 注文数: 300000
および他のいくつかの ip6 (オプション: mdns) リゾルバ
要約すると、私の質問は、VPN が接続されるたびに DNS サーバーを 192.168.1.1 に変更するにはどうすればよいかということです。シェル スクリプトまたは同様の方法を使用してこれを自動的に実行できることを期待しています。
前もって感謝します。
編集 (2020/12/22): コメントに従って私がすでに試したことをまとめると、VPNをオンにした後、scutilを実行してプライマリサービスIDを見つけて、次のように入力します。リスト次の行に、ターミナルで以下のコマンドを試しました(scutilをsudoとして実行した後)。
状態を取得:/Network/Service/forticlientsslvpn/DNS d.サーバーアドレスを追加 * 192.168.1.1 192.168.1.2 状態を設定:/ネットワーク/サービス/forticlientsslvpn/DNS
ただし、上記のコマンドをエラーなしで正常に実行した後、scutil --dns を実行すると、同じ古い DNS サーバーがまだ表示されます。これは、DNS キャッシュをフラッシュした後でも同様です。192.168.1.1 192.168.1.2 が表示されると予想していましたが、FortiClient VPN によってプッシュされた DNS がまだ表示されます。