出版

Linux マシンはホスト名経由で Windows マシンと通信できますか?そうでない場合は、以下の手順で設定できます。

ネットワーク上のすべてのマシンは互いに認識できるはずですよね?それは素晴らしいアイデアです。しかし、LinuxマシンからWindowsマシンにホスト名経由で通信する必要がある場合は別です。しかし、そのままではそれは不可能です。LinuxマシンからWindowsのホスト名にpingをいくら実行しても、「ホスト名が見つかりません」という結果が返ってきます。しかも、毎回。pingコマンドさえ発行すれば、失敗という結果が表示されます(図A)。
図A

この問題を解決する方法があります。これはLinux側でのみ実行されます。この問題を解決するために必要なコンポーネントを簡単に追加する方法をご紹介します。インストール手順が異なるため、Elementary OSデスクトップとFedora Serverインスタンスの両方でデモを行います。
Elementary OS (または Ubuntu) の修正
まず、Elementary OS をインストールします。この手順は、Debian や Ubuntu ベースのディストリビューションでも同じです。Ubuntu ベースのディストリビューションがホスト名経由で Windows と通信できるようにするには、winbind と libnss-winbind をインストールする必要があります。そのためには、ターミナルウィンドウを開き、以下のコマンドを実行します。
sudo apt install winbind libnss-winbind
インストールが完了したら、 sudo nano /etc/nsswitch.confコマンドで/etc/nsswitch.confファイルを開き、次の行を探します。
hosts: files mdns4_minimal [NOTFOUND=return] dns
その行を次のように変更します。
hosts: files mdns4_minimal [NOTFOUND=return] dns wins mdns4
ファイルを保存して閉じます。
ここで、同じ ping コマンドをホスト名に対して発行すると、応答が表示されます (図 B )。
図B

Fedora Serverの修正
Fedora Server の場合、修正方法は全く異なります。winbind と lbnss-winbind をインストールする代わりに、ターミナルを開いて次のコマンドを実行します。
sudo dnf install samba-winbind-clients
上記のコマンドは必要な依存関係(samba-winbindとsamba-winbind-modules)を取得します。Fedoraで必要な作業はこれだけです。インストールが完了すると、Windowsマシンにホスト名でpingが通るようになります。
pingだけではない
この修正を適用すると、ホスト名経由でWindows共有に接続したり、その他必要なサービスに接続したりできるようになります。複数のプラットフォームが混在するネットワーク環境で作業している場合、こうした小さな違いが大きな効果を発揮する可能性があります。
こちらもご覧ください
- Dockerネットワークの作成と管理方法
- Firefox Sendを使って安全にファイルを共有する方法
- ローカルおよびリモートSSHポート転送の使用方法
- Fedora デスクトップおよびサーバーで dnsmasq を設定する方法
- dnsmasqを使ってLinuxマシンのDNSキャッシュを高速化する方法
- ビデオ: Ubuntu 16.04 サーバープラットフォームのインストール方法
- インターネット接続を確認して修復する方法

ジャック・ウォーレン
ジャック・ウォーレンは、TechRepublic、The New Stack、Linux New Mediaなどで受賞歴のあるライターです。20年以上にわたり様々なトピックを執筆し、オープンソースの熱心な推進者でもあります。ジャック・ウォーレンに関する詳細は、ウェブサイトjackwallen.comをご覧ください。