以下を使用してLinuxサーバー(Windows7ホストの仮想マシンで実行)をpingするとき:
ping -a 192.168.56.***
以下に示す結果を取得します。サーバー名を解決できないのはなぜですか?
Pinging 192.168.56.*** with 32 bytes of data:
Reply from 192.168.56.***: bytes=32 time<1ms TTL=64
Reply from 192.168.56.***: bytes=32 time<1ms TTL=64
Reply from 192.168.56.***: bytes=32 time<1ms TTL=64
Reply from 192.168.56.***: bytes=32 time<1ms TTL=64
何が問題なの?
答え1
出力は完全に大丈夫に見えます。
多くの(ほとんど?)ping実装はリバースDNSルックアップを実行しません。 IP アドレスを転送すると、IP アドレスが表示されます。
結局のところ、なぜDNSを気にするのですか? PingにはIPアドレスのみが必要です。ホスト名を渡すと、pingはDNSルックアップを実行してアドレスを取得します。 IPアドレスを渡すと、pingはそのIPアドレスのみを使用します。
リバースDNSルックアップを実行するには、次のようにDNSを処理するように設計されたツールを使用host 192.168.56.42
しますnslookup 192.168.56.42
。あるマシンが別のマシンの名前を知るには、/etc/hosts
そのマシンの:に名前を設定するだけでは不十分です。これにより、他のマシンに名前がわかりません。 Unixシステム(インターネットプロトコル以前の時代のほとんどのシステムと同様)でシステム名を宣言する一般的な方法は、DNSを使用して登録することでした。一部の仮想マシンソフトウェアは自動的に仮想マシンにDNSサービスを提供し、ホスト上のWindowsで宣言された名前を/etc/hosts
提供します。HOSTS.TXT
サーバーにDNSサーバーがない場合は、DNSサーバーを設定してください(参照:この回答可能な方法を見つける)。
LinuxがWindowsのネットワーク検索プロトコル(NetBIOS?)をサポートする方法があるかもしれませんが、私はそれに慣れていないので、私は方法を教えてくれません。動作している場合は、設定が必要な場合があります。サンバLinuxシステムはネットワークに自分自身を知らせるように設定します(Windowsはデフォルトで完全に開く傾向がありますが、Linuxはデフォルトで注意を払うので、事前に名前のブロードキャストをオンにする必要があります)。
答え2
DNSゾーンには、このサーバーのDNSエントリがありません。