macOSでsandbox.network.allowMachLookupが有効にならない問題の修正
原文(日本語に翻訳)
macOSで sandbox.network.allowMachLookup が有効にならない問題を修正しました。
原文(英語)
Fixed sandbox.network.allowMachLookup not taking effect on macOS
概要
Claude Codeのサンドボックス機能においてネットワーク設定の sandbox.network.allowMachLookup オプションが、macOS環境では正しく適用されない問題がありました。この設定はmacOS固有のMach IPCメカニズムを通じたDNSルックアップなどのサービス参照を制御するものですが、設定値が無視されていました。この修正により、macOSでもこの設定が正しく機能するようになります。
基本的な使い方
修正前の動作
json
// settings.json でのサンドボックス設定
{
"sandbox": {
"network": {
"allowMachLookup": false // macOSでMach IPCルックアップを無効化
}
}
}# macOSでの動作
# 修正前: allowMachLookup: false を設定しても、
# Mach IPCを通じたサービスルックアップが許可されていた
# → サンドボックスのネットワーク制限が機能していなかった修正後の動作
json
// 同じ設定
{
"sandbox": {
"network": {
"allowMachLookup": false
}
}
}# macOSでの動作
# 修正後: allowMachLookup: false が正しく適用され、
# Mach IPCを通じたサービスルックアップが制限される
# → サンドボックスのネットワーク制限が期待通りに機能する実践例
### セキュアなサンドボックス環境での制限強化
外部ネットワークアクセスを制限した厳密なサンドボックスを設定:
json
// ~/.claude/settings.json
{
"sandbox": {
"network": {
"allowMachLookup": false,
"allowDns": false,
"allowedHosts": []
}
}
}bash
# macOSでClaude Codeを起動
claude
# 修正後: allowMachLookup の設定が有効になり、
# Mach IPCを通じたシステムサービスの参照が制限される
# → より厳密なネットワークサンドボックスが実現できる### 企業環境でのセキュリティポリシー適用
企業のセキュリティポリシーに従ったサンドボックス設定:
json
// 企業用設定例
{
"sandbox": {
"network": {
"allowMachLookup": false,
"allowedHosts": [
"api.anthropic.com",
"internal-proxy.company.com"
]
}
}
}# macOS環境での動作
# 修正後: 設定が正しく有効化され、
# 承認されたホストへのアクセスのみが許可される
# Mach IPCを通じた追加のサービス参照は制限される### 開発環境でのサンドボックス許可設定
開発時にMachルックアップを許可する設定:
json
// 開発環境設定(ローカルサービスへのアクセスを許可)
{
"sandbox": {
"network": {
"allowMachLookup": true // 開発環境では許可
}
}
}# macOSでローカル開発サービスを使用する場合
# 修正後: allowMachLookup: true が正しく適用され、
# ローカルのMachサービス(DNS-SD等)が利用可能になる注意点
sandbox.network.allowMachLookupはmacOS固有の設定です。LinuxやWindowsでは適用されません。- Mach IPCはmacOSのプロセス間通信メカニズムで、DNS-SDやBonjour、その他のシステムサービスの参照に使用されます。
- この設定を
falseにすると、一部のネットワーク機能が制限される場合があります。mDNS(ローカルネットワークの自動検出)などに影響が出る場合があります。 - セキュリティ要件が高い環境では
falseに設定し、必要に応じて個別のホストをallowedHostsで許可することを推奨します。 - この修正によりmacOSのサンドボックス機能がより確実に動作するようになり、セキュリティポリシーの一貫した適用が可能になります。