NetMute

Macのnetbiosdとは何か?なぜmacOSは許可を求めるのか?

ほとんどの人は、ダイアログボックスを通じてnetbiosdに出会います。作業中で、特に異常はなく、macOSが質問を投げかけてきます:アプリケーションnetbiosdに着信ネットワーク接続を許可しますか?名前は暗号のように見え、警告を引き起こす可能性がありますが、その決定に必要なコンテキストは提示されません。簡潔に言えば、netbiosdはmacOSの正常な一部であり、Appleによって署名されており、マルウェアではありません。より有用な答えは、それが多くのMacがもはや必要としないレガシーなネットワーキング層に属していることであり、そのため拒否しても本質的にリスクは低いということです。

7分で読める更新日

netbiosdが実際に何であるか

netbiosdは、macOSに付属し、Appleによってコード署名されたバックグラウンドプロセスです。その役割は、NetBIOSを実装することです。これは、Windowsマシンが何十年も使用してきた古いネットワーキングのネーミング層であり、ローカルネットワーク上で自己をアナウンスし、互いを見つけるために使われます。

NetBIOSは、あなたが現代のネットワーキングと考えるほとんどのものよりも古いものです。これは、同じオフィスネットワーク上のコンピュータが短く人間に読みやすい名前を主張し、それをブロードキャストして他のデバイスが正しいボックスを見つけられるように設計されました。Windowsはこれを採用し、ファイルやプリンターの共有と密接に結びつけ、従来のNetwork Neighborhoodブラウジングの基盤となりました。

Appleは、Macが長い間Windowsネットワークと共存する必要があったため、これのサポートを含めました。FinderのサイドバーでWindows PCを見ることができたり、ファイル共有が有効なときにWindows PCがMacを見つけたりするとき、netbiosdがその導入を助けている可能性があります。同じことは、古いネットワーク接続ストレージデバイスやネットワークプリンターにも当てはまり、多くはSMBやWindowsスタイルのブラウジングを基盤としています。

境界線は正確に理解する価値があります。netbiosdはローカルネットワーク上の発見とネーミングを処理します — どのマシンがどの短い名前に応答するかを決定し、同じサブネット上のデバイスがお互いについて学ぶことを可能にします。実際のファイル転送は、接続後にシステムの他の部分によって処理されます。

なぜmacOSのファイアウォールがこれについて尋ねるのか

macOSのアプリケーションファイアウォールはシンプルな原則で動作している:プログラムが着信接続を受け入れることを望むとき、macOSは一度だけ尋ね、その答えを記憶する。送信トラフィックはダイアログを引き起こさない。何かがリスニングしているのだ。

netbiosdは設計上リスニングを行う。名前のアナウンスは双方向の会話であり、あなたのMacは名前をブロードキャストし、他のマシンが特定の名前を保持しているか尋ねるときに到達可能でなければならない。つまり、ローカルネットワーク上でリスニングソケットを開く必要があり、これがファイアウォールが表面化させる動作だ。NetBIOS名サービスは伝統的にUDPポート137とデータグラムサービスUDPポート138を使用している;これらの番号は標準だが、実際に使用されているのはmacOSのバージョンや有効にしている共有サービスによる。

これが理由で、netbiosdは多くのシステムプロセスよりも頻繁にそのダイアログに現れる。誤動作しているわけでも、変わったわけでもない。これは、同じネットワーク上の他のマシンから到達可能であることが正常な動作の一つであり、ファイアウォールは署名者に関係なくそのようなプロセスを同じように扱う。

また、システムアップデート後に再度表示されることもある。アップグレード中にバイナリが置き換えられると、ファイアウォールはそれを以前見たプログラムと認識しないことがあり、再度尋ねる。これは予想されたことであり、何かがおかしい兆候ではない。

それはマルウェアですか、そして自分で確認できますか

netbiosdはマルウェアではない。これはAppleの純正コンポーネントであり、macOSの一部として配布されている。正常なシステムではAppleのコード署名が付いている。Activity Monitorやファイアウォールのプロンプトで見えることが侵害を示すわけではない。

それを信じる必要はない。Activity Monitorでプロセスを選択し、そのインスペクタを開いて実行ファイルのフルパスを確認すれば良い — 正規のシステムデーモンはシステムディレクトリの下にあり、ダウンロードフォルダには存在しない。Terminalに慣れているなら、codesignツールのverbose verifyオプションを使い、そのパスを指定して署名の正当性を確認できる;正当なコピーなら署名の権限はAppleだ。予期しない場所から名前を主張しているものや、検証に失敗しているものはさらに調査する価値がある。

安心のもう一つの側面も同じくらい重要だ。netbiosdはローカルネットワークのプロセスであり、インターネットのものではない。 NetBIOS名サービスはブロードキャストベースで、あなたのローカルサブネット内に限定されている — インターネットを越えてルーティングされることはなく、ルーターも通常の動作ではそのトラフィックを外に転送しない。これの下にある恐怖、未知のデーモンが静かにあなたのデータをどこかに送っているという懸念は当てはまらない。netbiosdが何を言っているかは、あなたの自宅やオフィスのデバイスに対してだけだ。

この区別はmacOS上のプロセス調査においても重要だ:ローカルネットワーク上でリスニングしているプロセスと、リモートサーバーと持続的に接続しているプロセスは全く異なるものであり、異なるレベルの精査が必要だ。

許可すべきか拒否すべきか

ほとんどのシステムデーモンに対して正直なアドバイスは許可して次に進むことだ。拒否すると依存しているものが壊れるからだ。netbiosdは例外の一つであり、少し考える時間を持つ価値がある。

一つ質問しよう:Windowsの共有フォルダや古いNASボックス、Windowsスタイルのブラウジングに依存するネットワークプリンタに接続したことはあるか?答えがいいえ、特にAppleの家庭内で全てApple製品なら、netbiosdを拒否しても気付かないだろう。NetBIOSはレガシーだ。Appleのプラットフォーム上の最新のSMB探索は他の仕組みに頼っており、NetBIOS依存のデバイスがないネットワークでは、netbiosdが話す相手は何もない。

もし答えがはいなら、より注意深くなるべきだ。着信接続を拒否すると発見が壊れる可能性がある — デバイスが自動的にFinderのサイドバーに表示されたり、WindowsマシンがあなたのMacを見つけたりする部分だ。通常は、名前やアドレスを明示的に指定して接続すれば、一覧に表示されるのを待たずにアクセスできるため、失敗は不便さにとどまることが多い。プリンタやNASが突然表示されなくなる場合、これが原因の一つだ。ファイアウォール設定で決定を逆にするのは簡単だ。

また、プロンプトに対してよりクリーンな選択肢もある。netbiosdの多くの動作は、Windows互換のファイル共有が有効になっていることに依存している。一度だけ転送のために有効にし、その後使わなくなった場合は、共有設定でそれをオフにすれば良い。

何を選ぶにしても、意図的に選択しよう。最悪の結果は、読まずにAllowをクリックしてしまうことだ。これが多くの人が理解できていないファイアウォール設定になってしまう原因だ。

大局:あなたのMacはあなたが見えないほど多く話している

netbiosdは珍しいことではない。一般的なMacは、ネットワークに触れる数十のバックグラウンドプロセスを実行している — いくつかはAppleと通信し、いくつかはローカルでサービスを通知し、いくつかはインストールして忘れたアプリのために接続を維持している。ファイアウォールのプロンプトは、着信接続を受け入れたい狭いサブセットだけを表示する。外向きに到達するすべては、探さない限り見えないままだ。

この非対称性が本当の問題だ。あなたは、あなたのサブネット内に制限されたレガシーなネーミングデーモンについて中断される一方で、リモートサーバーへの接続を静かに維持しているプロセスはダイアログを一切生成しない。Activity Monitorは、プロセスが存在し、どのくらいのバイトを移動したかを教えるが、どのドメインに到達したかはわからず、停止させる方法も提供しない。

その可視性のギャップを埋めるためにNetMuteが作られた。それは、ドメインレベルのロギングを伴うリアルタイムのアプリごとおよびプロセスごとのネットワークトラフィックを表示し、プロセス名とバイト数の代わりに各アプリが実際に接続している場所を見せる。アプリごとのファイアウォールはワンクリックで何でもブロックし、一時的なルールは自動的に期限切れになるため、素早いテストが静かに永続化されることはない。ネットワークプロファイルは、接続しているWi-Fiネットワークに応じて異なるルールを適用し、信頼できるホームネットワークと空港のホットスポットで異なる警戒レベルを必要とする場合に役立つ。

ポイントは、より多くのものをブロックすることではない。それは、あなたがここに来た理由 — このプロセスは何で、誰と話しているのか — という質問に答えることだ。新しい名前が現れるたびに答えを探す必要はない。

netbiosdに関するよくある質問

あなたのMacのすべてのアプリが何に接続しているかを見る

NetMuteは、ドメインレベルのロギングを伴うリアルタイムのアプリごとのネットワークアクティビティを表示し、ワンクリックで任意のアプリをブロックできる。Mac App Storeから無料でダウンロード可能で、Premiumのための一度きりのアプリ内購入オプションもある。サブスクリプションは不要。

NetMuteをダウンロード