---
title: "MacのVPNでスプリットDNS：社内の名前が解決できない · Kilobatガイド"
url: "https://kilobat.app/ja/guides/vpn-split-dns-internal-names.html"
description: "VPNがオンなのに、Macでintranet.corp.exampleのような社内ホストにつながらない場合は、ドメインごとのリゾルバを確認し、/etc/resolverで追加します。"
---

DNS

# VPN接続中に社内の名前が解決されない

macOSは、あるドメインのクエリを特定のDNSサーバに、それ以外のクエリを別のサーバに送れます。VPNは社内の名前にこのスプリットDNSを使います。

対象：現在のすべてのmacOS。 · 確認日：2026年10月29日

## 症状

- `intranet.corp.example`のような社内の名前は解決できないのに、公開サイトは使えます。
- 社内のIPアドレスでは接続できるのに、その名前では接続できません。
- `dig`や`nslookup`は失敗するのにブラウザでは使える、またはその逆です。

## 考えられる原因

- **VPNがそのドメインのリゾルバを追加していない。**VPNは、どのドメインを自分のDNSサーバに送るかをmacOSに伝える必要があります。
- **macOSのルールを無視するテストツール。**`dig`は`/etc/resolv.conf`にあるサーバを使い、アプリが使うドメインごとのリゾルバは使いません。
- **手動で設定したDNSサーバ。**Wi-Fiに手動で設定したDNSサーバは、社内の名前を知りません。
- **検索ドメインのない短い名前。**`intranet`のような短い名前を完全な名前にするには、検索ドメインが必要です。

## 確認方法

1. VPNを接続します。すべてのリゾルバを表示します。会社のドメインの`domain`行があるリゾルバを探します。

   ```
   scutil --dns
   ```
2. `dig`ではなく、macOSのリゾルバで名前を検索します。

   ```
   dscacheutil -q host -a name intranet.corp.example
   ```
3. サービスの検索ドメインを表示します。

   ```
   networksetup -getsearchdomains Wi-Fi
   ```

## 解決方法

1. VPNでどのドメインとDNSサーバを使うべきか、管理者に問い合わせます。
2. ドメインごとのリゾルバ用のフォルダがなければ作成します。

   ```
   sudo mkdir -p /etc/resolver
   ```

   管理者パスワードが必要です。
3. ドメイン名を付けたファイルを作成します。サーバごとに`nameserver`行を1つずつ書きます。

   ```
   sudo nano /etc/resolver/corp.example
   ```

   管理者パスワードが必要です。
4. 社内DNSサーバのアドレスを1行で入力します。

   ```
   nameserver 10.0.0.53
   ```
5. ファイルを保存します。`scutil --dns`を実行し、新しいドメインがあるか確認します。
6. 完全な名前を使うか、「システム設定」>「ネットワーク」> サービス >「詳細」>「DNS」で検索ドメインを追加します。
7. 不要になったらファイルを削除します。

   ```
   sudo rm /etc/resolver/corp.example
   ```

   管理者パスワードが必要です。

## Kilobatを使う場合

1. プライベートな名前の場合、`why`はどのVPNリゾルバに問い合わせたか、そのリゾルバが応答するかを示します。

   ```
   kilobat why intranet.corp.example
   ```

## よくある質問

**ブラウザでは使えるのにdigが失敗するのはなぜですか？**

`dig`は`/etc/resolv.conf`にあるサーバに問い合わせます。ブラウザはmacOSのリゾルバを使い、こちらはドメインごとのリゾルバも使います。

**/etc/resolv.confを編集してもいいですか？**

いいえ。resolverのmanページによると、このファイルはmacOSが自動的に管理しています。「ネットワーク」設定か`/etc/resolver`を使ってください。

## 出典

- resolver(5)、macOS 27.2に付属のmanページ
- scutil(8)、macOS 27.2に付属のmanページ
- dig(1)、macOS 27.2に付属のmanページ
- [Appleサポート：MacでDNS設定を変更する](https://support.apple.com/guide/mac-help/change-dns-settings-on-mac-mh14127/mac)

出典は2026年10月29日に確認しました。manページはmacOSに付属のものです。「ターミナル」で`man <name>`を実行すると開けます。

## 関連ガイド

- [MacでDNSの問い合わせがVPNの外に出てしまう](https://kilobat.app/ja/guides/vpn-dns-leak-mac.html): VPNがオンのときは、ふつうDNSの問い合わせはVPNのサーバに送られるようにしたいものです。
- [MacでVPNに接続しているのにインターネットに接続できない](https://kilobat.app/ja/guides/vpn-connected-no-internet.html): VPNは通信をトンネル経由で送ります。
- [MacでDNSの名前解決ができない](https://kilobat.app/ja/guides/dns-server-not-found.html): DNSが失敗すると、Macはapple.comなどの名前をIPアドレスに変換できません。
- [1つのサイトやAPIに接続できない原因を見つける](https://kilobat.app/ja/guides/recipes/why-cant-it-connect.html): インターネットは使えるのに1つのアドレスだけ失敗するとき、Kilobatは各レイヤーを順番に確認します。
