ネットワーク上にSUSANと呼ばれるWindowsマシンがあります。 WindowsからVMから:
C:\>ping susan
私は、Linuxボックス自体からNETBIOS名を解決するために このガイド (および他のいくつかの同様のものを調べました)に従いました。
samba
とsamba-winbind
をインストールしました。次の/etc/nsswitch.conf
のこのhosts
行を編集しました:
hosts: files mdns4_minimal [NOTFOUND=return] dns myhostname
に
hosts: files wins mdns4_minimal [NOTFOUND=return] dns myhostname
どうやら私は今、彼女の名前でSUSANにpingできるはずです(すでに彼女のIPで彼女にpingできます)。しかし、私は得ています:
user@localhost:~ $ ping susan
ping: unknown Host susan
The Oilers Fanの回答は、Ubuntuベースのディストリビューションにもほぼ当てはまります。ライブラリの場所のみが異なります。
基本的にやっている
Sudo apt-get install libnss-winbind
私の場合は役に立ちました。
Ubuntu以外のLinuxディストリビューションの場合、/ libまたは/ lib64をチェックして、libnss_wins.soがインストールされていることを確認します。そうでない場合は、LinuxディストリビューションのRPMをWebで検索し、ライブラリをインストールします。その後、コマンドラインからldconfigを実行します(ldconfigと入力して、rootまたはsuとしてEnterキーを押します)。 Web上のすべてのチュートリアルでこの小さなギャップを見つけるのに何時間もかかった。詳細は http://users.atw.hu/linuxandwindows/linuxwinworld-chp-6-sect-1.html を参照してください。
NSCD(ネームサービスキャッシュデーモン)がシステムの名前解決に問題を引き起こしていたようです。 サービスを再起動した場合 、解決の失敗に戻る前に、ホスト名をNetBIOSで短時間解決できます。私はそれを無効にしました(systemd:systemctl disable nscd.service
)と私の名前解決が機能し始めました。
私はすでに installed winbind
(zypper in samba-winbind
(私のシステム上)、設定済み /etc/nsswitch.conf
正しく (hosts: files dns wins
)および 私の変更を確認 。
私の場合、約10MBの無料のNANDストレージスペースを備えた組み込みLinuxシステムを実行しています。上記の答えは少し誤解を招くと思います。他のアプリケーション(Samba以外のアプリケーション)がNetBIOS名を解決するには、_libnss_winbind.so
_のみが必要であることを示唆しています。
他のプログラムがwinbindd_request_response()
を使用してNetBIOSを解決できるように、その軽量ラッパーが判明しました。内部的には、ソケット呼び出しを介してwinbindd
デーモンを呼び出します。
そして、winbindd
は約22MBに準拠しているので、私の制約にとっては非常に大きなものです。
うまくいけば、これがNetBIOS名を解決するための軽量なソリューションを探している他の人々に役立つでしょう。