こんにちは、Ryoです。
先日ファイルサーバーを新設/立上げ等を行った際にアクセスしようとしたらIPアドレス直打ちはOK、サーバー名ではNG(アクセス不可)という状況になりましたので、備忘録としてその際に対処した内容を書いておこうと思います。
1.現象
「ファイル名を指定して実行」から直接IPアドレスを入力すれば接続できるものの、サーバー名(コンピューター名)では接続できないという状況です。
画像のように\\192.168.1.〇〇〇(〇〇〇はアクセス先のアドレスを指しているので、1~255の何れかの数値)とすれば接続できる状態を「IPアドレス直打ちOK」と表現しています。
ここにIPアドレスではなくサーバー名(コンピューター名)を\\(名前)として入力してもアクセスできず「\\〇〇(サーバー名)にアクセスできません」や「ネットワークパスがみつかりません」というエラーが表示されている状態でした。
2.対処
上に書いた現象に対する要因は各環境で様々なので、以下に記載する対処が全ての事象には当てはまらないものと思います。ですが、私の使用環境下では解決できたこともあるので一つの事例として参考までに。
ウェブで調べればたくさん出てきますが、俗に言う「名前解決」でサーバー名とIPアドレスの関連付けを行うことで対処しています。
先ず必要となるのがサーバー名(コンピューター名/ホスト名)とIPアドレスです。もしIPアドレスがわからない場合は以下のような方法で確認することもできます。
「Windowsシステムツール」⇒「コマンドプロンプト」起動
コマンドプロンプトが起動したら「ping サーバー名」を入力し実行すると、IPアドレスが表示されますので確認できます。
IPアドレスが確認できたら次にアクセスさせたい自身のパソコン内にある以下のフォルダを開きます。
C:\Windows\System32\drivers\etc
この中にある「hosts」ファイルに「コンピュータ名とIPアドレスを関連付ける」記述を行います。
書換に不安がある場合は元のファイルをデスクトップなどにコピーしておけば良いと思います。
この「hosts」ファイルを「メモ帳」で開き、そのテキストデータ最下部にアクセスしたいIPアドレスとサーバー名を書き込んで上書き保存すればOKです。
私の場合は接続させたい場所が2ヶ所ありましたので2行記述しています。例では192.168.1.○○としていますが、場合によっては192.168.2.○○であったり、192.168.4.○○だったりもしますから、そこは環境に合わせて記述すれば良いと思います。
この処理でサーバー名で普通に接続できておりますので、私の事象では無事解決できています。
◆hostsファイルで問題解決しない場合の対処
hostsファイルに記述しても名前解決出来ない場合、もう一つの手段としてNetBIOS系の「lmhosts」を使用すると解決できる場合があります。
このlmhostsはhostsファイルと同じフォルダに「lmhosts.sam」というサンプルファイルで存在していますので、これを修正して使用します。
まずメモ帳などで開き、最下部あたりに以下書式で記入します。
≪書式≫
IPアドレス サーバー名 #PRE
ちなみに#PREは「lmhostsファイルの内容をメモリ上にキャッシュするオプション」です。
アクセスしたいサーバーに対して必要事項を記述したら保存しますが、その際には.samの拡張子を削除して「lmhostsという拡張子無しのファイルを保存」します。一旦上書き保存した後、ファイル名から拡張子を削除しても大丈夫です。
保存後は「コマンドプロンプト」を起動し、「nbtstat -R」コマンドを実行すれば、先程記述したlmhostsファイルの内容が直ぐに反映されます。コマンドプロンプト起動時には「管理者として実行」にします。
nbtstatと-Rの間には「半角スペース(空白)」が存在していますので、ご注意を。
コマンド実行する「nbtstat -R」はNetBIOS名キャッシュを削除し、lmhostsファイルに#PREで定義した項目をキャッシュにリロードするためのものです。
私の場合はhostsファイルで解決できなかったPCに対し、このlmhostsで名前解決できています。
3.まとめ
この名前解決に至るまでにファイアーウォール設定の見直しなどを行ったりしていましたが効果がなく、最終的には上述通りhostsファイル/lmhostsファイルへの書込み、定義することで解決出来ました。
対処事例として残しておきたいという考えから書いてみましたが、この内容が同様の問題で悩まれている方の参考に少しでもなれれば幸いです。
以上、IP直打ちはOKでもサーバー名(コンピュータ名)でアクセスできない時の対処についてでした!
Ryo