私は会社のクラウドサービスでUbuntu 14.04を実行しています(私のインスタンスにはElastic IPがあります)。コマンドラインを介して実行されているインスタンスのIPアドレスを確認したいが機能しません。
root@ubuntu14-graphite:~# hostname
ubuntu14-graphite
root@ubuntu14-graphite:~# hostname -i
hostname: Name or service not known
理由がわからない。
ubuntu14-graphiteにpingを試しましたが、次のように表示されます。
unknown host ubuntu14-graphite.
これは私のホストがまったく存在しないことを意味しますか?
別のサーバー(クラウドインスタンスではなく物理サーバー)があります。このサーバーにはCentOS 6.7がインストールされています。ホスト名のIPを確認しましたが、機能します/etc/hosts
。
出力は次のとおりですcat /etc/hosts
。
127.0.0.1 localhost
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
答え1
これは、「システム」(私はこの用語を広範で一般的で曖昧な意味で使用します)が、どの名前がubuntu14-graphite
ホストとそのIPアドレスに対応するかを知らないことを意味します。 (事実それはあなたの所有者のものです名前これを達成するには不十分です。 )これは、ほとんど確実にファイルubuntu14-graphite
に†行がなく、ネーミングサービス(DNSやNISなど)にもないことを意味します。したがって、この問題を解決するには、DNSやNIS(またはActiveDirectory?)などのより複雑な(分散)命名システムを使用している場合は、最終ソリューションに対応するIPアドレスを追加することです。 。 ______________† ...あなたのホストファイルの投稿で、これが実際に本当であることを確認しました。/etc/hosts
ubuntu14-graphite
/etc/hosts
どのIPアドレスをホスト名に関連付けるべきかについて議論があります。誰もがこれがホストの「有効な」アドレスでなければならないことに同意します。つまり、同様のコマンドが成功する必要があります。一部の人はループバックアドレスを使用することをお勧めします。ループバックアドレスは常に127形式です。ping A.B.C.D
.BCD;共通値は127.0.0.1と127.0.1.1です。他の人は、192.168のようなLANアドレスを使用することを提案しました。。 CD(ただし、ほとんどすべてが可能です) - しかし、動的に割り当てられたアドレスをホストファイルに入れてはいけません(そしてDNSでDHCPを使用する場合は、動的に割り当てられたアドレスを記録されたDNSに自動的に入力する必要があります)。使用しているアドレスを表示するには、ifconfig
などのコマンドを使用します。hostname -I
答え2
マシンのIPアドレスを確認する実際の方法は、コマンドを使用することですifconfig
。
実際のクラウド設定によっては、サーバーインスタンスは認定IPを知らず、VLAN IPのみを知ることができます。詳細については、プロバイダのマニュアルを参照してください。
答え3
でサービスmyhostname
にアイテムを追加します。hosts
/etc/nsswitch.conf
つまり、次の行を変更してください/etc/nsswitch.conf
。
hosts: files dns
これに関して:
hosts: files dns myhostname
通常、ホスト名は/etc/hosts
ファイルとDNSを使用して解決され、システムのホスト名はネームサービススイッチを通知することで解決できます(この設定の変更がそうであるように)。
/etc/hosts
これは、ローカルホスト名を解決できるシステムファイルについて特別な内容が表示されない理由を示しています。
このフラグの詳細についてmyhostname
は、ここ。
答え4
etc/hosts.saveにアクセスしてホスト名を確認してください。次に、/etc/hosts
ホスト名とホスト名をhosts.save
。 IPアドレスも確認してください。例:
127.0.0.1 ubuntu
127.0.1.1 ubuntu.ubuntu-domain ubuntu