호스트 이름을 설정하면 어떤 결과가 발생합니까?


13

Amazon EC2 서버가 여러 대 있는데 Chef를 사용하여 구성을 관리하고 있습니다. 기본 bash 프롬프트가 더 유용하도록 호스트 이름을 설정하고 싶습니다.

새 서버를 시작한 직후에는 다음과 같이 설정됩니다.

root@ip-10-123-123-123

이 상자에서 Ubuntu 12를 사용하고 있기 때문에 hostname에 대한 해당 매뉴얼 페이지를 참조했습니다 . 설정 방법에 대한 많은 좋은 정보가 있으며 호스트 이름과 fqdn에 대해 조금 이야기하지만 실제로 알고 싶은 것을 말하지는 않습니다.

호스트 이름을 설정하면 어떤 결과가 발생합니까?

호스트 이름을 설정하는 것이 대부분 사용자와 sysadmins의 편리한 항목이라고 가정하고 싶습니다. 상자에 얼굴 / 멋진 이름을 지정하여 명령 프롬프트, 전송 된 전자 메일, 등)이지만 긍정적이지 않습니다.

/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

내가 올바른 길을 가고 있습니까? 호스트 이름을 설정하면 어떤 결과가 발생합니까?

최신 정보

나는에서 내 EC2 인스턴스의 호스트 이름 변경 시도 ip-10-123-123-123webserver하고 hostname --fqdn더 이상 작품. 다시 넣으면 정상적으로 작동합니다. Apache는 시작할 때 fqdn을 안정적으로 결정할 수 없다는 오류를 표시합니다. fqdn을 손상시키지 않고 호스트 이름을 설정하는 방법이 있어야한다고 가정합니다.


나는 또한 발견 우리가 EC2 인스턴스에 대한 기억하기 쉬운 호스트 이름을 설정할 수 있습니다? 내가 찾은 것을 기반으로 답변을 게시했지만 여전히 약간의 구멍이 있습니다.
cwd

답변:


15

DNS 또는 / etc / hosts를 통해 호스트 이름을 확인할 수 있어야한다고 덧붙였습니다. 그렇지 않은 경우 많은 도구가 호스트 이름 조회 실패로 인해 지연이 길어질 수 있습니다. 많은 GUI 프로그램 에서이 문제가 발생했습니다.


이것은 매우 중요한 포인트입니다. 가능하다면 한 번 이상 투표를했을 것입니다. 감사합니다!
cwd

이것은 실제로 않는 질문에 대답. 호스트 이름을 실제로 해결되는 것으로 변경하면 hostname --fqdn여전히 작동합니다.
bryant

12

호스트 이름 ( hostname명령으로 설정 및 표시되며 일반적으로에 저장 됨 /etc/hostname)은 로컬 응용 프로그램에서 사용됩니다. 다른 시스템에서는 알 수 없으며 호스트에 접속하는 데 사용할 수 없습니다. 호스트 이름은 일반적으로 셸 프롬프트에 표시되며 커밋을 수행 할 때 버전 제어 소프트웨어와 같은 다양한 응용 프로그램에서 로깅 용도로 사용할 수 있습니다.

호스트 이름과 다른 시스템이 시스템을 지정하는 데 사용할 수있는 이름 사이에는 기술적 인 연결이 없습니다. DNS는 일반적으로 인터넷 맥락에서 기계 (또는 더 정확하게, 네트워크 인터페이스)의 이름을 사용하는 것입니다. 호스트 이름이 세계 대부분의 시스템 네트워크 인터페이스 DNS 이름의 첫 번째 구성 요소와 동일한 지 확인하는 것이 좋습니다. 예를 들어, 서버가 eth0이더넷 인터페이스를 통해 다른 지역에 연결되어 있고 IP 주소의 eth0이름이 foo.example.com이면 foo호스트 이름 으로 선택하는 것이 좋습니다 . 그렇게하면 foo.example.com종종 FQDN 이라고합니다.시스템의 (정규화 된 도메인 이름) 그러나 당신은 그것들을 불일치하게 남겨 둘 수 있습니다; 불일치는 관리자에게 혼란을 줄 수 있지만 소프트웨어에는 문제가되지 않습니다.

호스트 이름은 일부 네트워크 프로토콜에서 호스트를 식별하는 데 사용될 수 있습니다. 그렇다면 호스트에서 실행중인 로컬 프로세스에서 전송해야합니다. 예를 들어, 일부 설정에서 DHCP 클라이언트는 호스트 이름을 DHCP 서버로 보내 IP 주소를 얻습니다. DHCP 서버는 청구 된 호스트 이름을 사용하여 클라이언트에 부여 할 IP 주소를 결정할 수 있습니다. 이러한 설정에서는 호스트 이름이 DNS 이름과 일치해야합니다.

관련 : Emacs에서 호스트 이름이 다른 이유는 무엇입니까? ; 호스트 이름을 사용하여 LAN에서 머신에 액세스 할 수있게하는 방법


1
다른 기계에 의해 알려져 있지 않다는 것은 사실이 아닙니다. 이 호스트 이름은 DHCP 임대를 요청할 때 많은 OS에서 DHCP 서버로 전송되며 많은 DHCP / DNS 서버는이를 사용하여 로컬 DNS 영역을 업데이트합니다. 호스트 이름은 mDNS에 의해 사용되며, 삼바에 의해 사용되며 (대부분의 기본 삼바 설치에서) HTTP 서버에 표시됩니다.
Stéphane Chazelas

@sch DHCP 언급에 대한 좋은 지적. httpd에 대한 귀하의 의견을 얻지 못했습니다 : 네트워크를 통해 호스트 이름을 보내도록 결정할 수있는 로컬 프로세스이지만 호스트가 보내지 않은 한 호스트 이름은 여전히 ​​다른 컴퓨터에 알려지지 않았습니다.
Gilles 'SO- 악마 중지'10

나는 이것이 좋은 대답이라고 생각하지만 조금 더 놀고 난 후에 나는 그것이 완전한지 확실하지 않습니다. 호스트 이름 (ip-10-123-123-123)을 다른 것으로 변경하면 hostname --fqdn더 이상 ec2 인스턴스에서 작동하지 않으며 아파치 시작시 fqdn을 안정적으로 결정할 수 없다는 경고가 나타납니다. 이 모든 것들이 어떻게 연결되어 있는지에 대한 자세한 정보를 어디에서 찾을 수 있는지 잘 모르겠습니다. 시작해 주셔서 감사합니다.
cwd

1
hostname --fqdn로깅에 (DNS)가 사용 된 것으로 보입니다. unix.stackexchange.com/questions/319737/…
sourcejedi
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.