/etc/hosts를 사용하여 도메인 이름 별칭 만들기

/etc/hosts를 사용하여 도메인 이름 별칭 만들기

내 외부 IP 주소가 자주 변경되기 때문에 내 도메인은 LAN의 외부 IP를 가리키는 동적 DNS를 사용하도록 설정되어 있습니다. 그러나 나는 이 호스트를 사용할 수 있도록 별칭을 만들고 싶습니다 home. 그래서 다음을 내 호스트에 추가합니다 /etc/hosts.

example.com home

그러나 도메인 이름이 마음에 들지 않는 것 같습니다. IP로 변경하면:

0.0.0.0 home

그러면 작동하겠지만, 물론 이는 동적 DNS의 목적을 무너뜨리는 것입니다!

가능합니까?

답변1

이 파일에는 /etc/hostsIP 주소와 호스트 이름만 포함됩니다. 이 방법을 통해 원하는 방식으로 문자열 "home"의 별칭을 지정할 수 없습니다.

자체 DNS 서버를 실행하는 경우 CNAME레코드 를 추가하여 home.example.com별칭을 만들 수 있지만 domain.example그렇지 않으면 운이 좋지 않습니다.

가장 좋은 방법은 동일한 DNS 클라이언트를 사용하여 정규화된 이름을 업데이트하는 것입니다.

답변2

/etc/hosts이전에 언급한 바와 같이, 그 목적은 이름-IP 조회를 위한 alias( ) 기능을 제공하는 것이 아닙니다 . CNAME적절한 DNS 서버를 설정하고 구성할 때 CNAME항상 정확한 homeIP를 확인하는 방법이 분명히 있지만 example.com단순한 별칭보다 조금 더 복잡합니다.

변경 자체는 스크립트의 한 줄로 쉽게 자동화할 수 있습니다.

sudo sed -i "s/.* home/$(dig +short domain.com|tail -1) home/" /etc/hosts

IP 변경을 감지하는 방법이 이미 있는 경우 이를 프로세스에 쉽게 추가할 수 있습니다. 그렇지 않으면 x간단한 cron 작업을 사용하여 주기당 한 번만 적용 범위를 예약하는 무차별 접근 방식을 설정할 수 있습니다.

인용하다:

답변3

설명하는 상황을 처리하는 가장 쉬운 방법은 DNS 검색 도메인을 domain.com.

home.domain.com또한 을 가리키는 DNS 레코드를 만듭니다 domain.com.

홈 라우터에서는 DHCP 검색 도메인을 설정할 수 있어야 합니다. 대부분의 모바일 장치에서도 이를 허용합니다.

그러면 직접 다음을 수행할 수 있습니다.

ping home

ping 을 해야 합니다 home.domain.com.

검색 도메인을 설정하는 정확한 방법은 기기마다 다르지만 거의 모든 기기에서 검색 도메인을 설정할 수 있습니다.

그러면 자신을 다음으로 제한할 필요가 없습니다 home. ping을 보내 printer거나 정규화된 도메인 이름에 대해 생각조차 하지 않을 phone수도 있습니다 ...fridge

답변4

DYNDNS나 이와 유사한 것을 등록해야 할 것 같습니다.

정말로 /etc/hosts를 사용하려면 IP를 모니터링해야 합니다. 변경이 발생하면:

  • /etc/hosts의 항목 변경
  • 호스트 캐시 다시 로드
  • 지속적인 모니터링

고쳐 쓰다 이를 사용하는 경우 dhcpcd스크립트의 "-c" 옵션을 사용하여 /etc/hosts-entry를 변경한 다음 호스트 캐시를 다시 로드할 수 있습니다.

이는 dhcp 클라이언트의 기능에 따라 다릅니다.

관련 정보