65자를 초과하는 FQDN을 설정하려면 어떻게 해야 합니까?

65자를 초과하는 FQDN을 설정하려면 어떻게 해야 합니까?

65자보다 긴 FQDN이 필요합니다. Centos 7에서 이 문제를 해결하는 가장 쉬운 방법은 무엇입니까?

약 30자 길이의 루트 도메인 이름을 얻었고 호스트 이름은 일반적으로 40-50자입니다. 일반적으로 루트 도메인이 10자 미만이므로 문제가 되지 않지만 갑자기 문제가 발생할 수 있습니다.

첫 번째 생각은 FQDN에 도메인 이름이 포함되어 있지 않은데 어디에 설정되어 있는지 알 수 없고 올바르게 설정했다고 생각하더라도 FQDN이 65자로 잘려진다는 것이었습니다(FQDN에 도메인 이름이 포함되어 있습니까?). 도메인 이름)은 글자수 이내인가요? ). 또한 최후의 수단으로 자체 커널을 컴파일하지 않고 원격으로 이를 달성할 수 있는지도 궁금합니다.

예를 들어, 내가 제공하는 도메인 이름이 areallongexample.com이고 내 호스트 이름이 일반적으로 a.long.hostname.with.lots.of.required.fields라고 가정해 보겠습니다.

이것은 내 시스템에서 직접 가져온 것입니다.

hostname a.long.hostname.with.lots.of.required.fields.areallongexample.com
hostname: name too long
hostnamectl set-hostname "a.long.hostname.with.lots.of.required.fields.areallongexample.com"  
hostname -f a.long.hostname.with.lots.of.required.fields.areallongexample.co 
hostname  a.long.hostname.with.lots.of.required.fields.areallongexample.co

답변1

호스트 이름에는 표시된 것과 같은 점을 포함할 수 없습니다.

a.long.hostname.with.lots.of.required.fields.areallongexample.com

a.long같은 이유로 당신은 심지어 가질 수도 없습니다: 그것은 점을 포함합니다. 호스트 이름은 FQDN(정규화된 도메인 이름)의 첫 번째 점으로 구분된 구성 요소입니다. 호스트의 도메인은 점으로 구분된 경로의 나머지 부분입니다.

구성 요소의 길이 제한(63바이트 - 반드시 문자일 필요는 없음)과 전체 도메인 경로 길이(255바이트)도 있습니다. 자세한 내용은RFC 1035.

a.long.hostname.with.lots.of.required.fields호스트 이름(63바이트 미만)과 도메인 이름을 지정한 경우 areallongexample.com실제로 호스트 이름은 a이고 도메인 이름은 입니다 long.hostname.with.lots.of.required.fields.areallongexample.com.

답변2

이 문제를 해결했습니다. Hostnamectl을 통해 호스트 이름을 "a.long.hostname.with.lots.of.required.fields"로 설정했습니다. /etc/hosts를 fqdn 및 축약 버전(a.long.hostname.with.lots.of.required.fields)으로 변경합니다.

서버는 호스트 이름 -f를 실행할 때 전체 이름을 인쇄하고, 호스트 이름을 실행할 때 축약된 호스트 이름을 인쇄합니다.

[root@a /]# hostnamectl set-hostname a.long.hostname.with.lots.of.required.fields
[root@a /]# hostname
a.long.hostname.with.lots.of.required.fields
[root@a /]# hostname -f
a.long.hostname.with.lots.of.required.fields.areallongexample.com
[root@a /]# cat /etc/hosts | grep required
127.0.0.1 a.long.hostname.with.lots.of.required.fields.areallongexample.com a.long.hostname.with.lots.of.required.fields
[root@a /]# hostname -f | wc -c
66

관련 정보