저는 회사의 클라우드 서비스에서 Ubuntu 14.04를 실행하고 있습니다(내 인스턴스에는 탄력적 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