resolv.conf의 네임서버 항목 수

resolv.conf의 네임서버 항목 수

네임서버 항목은 몇 개나 제공할 수 있나요 /etc/resolv.conf? 나는 우리 ISP의 2개의 네임서버 항목을 첫 번째와 두 번째로 지정했습니다. 하지만 가끔 문제가 발생하기 때문에 Google 공개 네임서버 항목을 추가하고 싶습니다. 3번째와 4번째 항목이 차이가 있나요?

이것은 resolv.conf우리의 프록시(오징어) 서버에 있는 것입니다. 나는 Squid가 /etc/resolv.conf이름 확인을 위해 사용한다는 것을 이해합니다.

답변1

실제로 /etc/resolv.conf에는 세 개의 서버 항목만 허용됩니다.

보다:http://linux.die.net/man/5/resolv.conf

답변2

듀얼 스택 시스템의 3개 네임서버 제한을 ​​극복하기 위한 원래 솔루션은 dnsmasq를 설치하는 것이었지만 해결 방법으로 인해 설치 및 유지 관리 비용이 너무 많이 증가했기 때문에(저는 많은 lxc 컨테이너를 운영하고 있습니다) 더 간단한 솔루션이 필요했습니다. 감사하게도 존재합니다. .

3개의 네임서버 제한을 ​​극복하는 systemd-resolved를 사용할 수 있다는 것을 발견했습니다. 대부분의 최신 배포판에는 기본적으로 모든 것이 설정되어 바로 사용할 수 있습니다. 네임서버 IP를 지정하는 /etc/systemd/resolved.conf 파일이 있습니다. conf 파일을 편집하고 네임서버를 추가한 다음 systemctl restart systemd-resolved를 실행하세요. 완료!

누군가 resolv.h의 MAXNS가 더 이상 존재하지 않는다고 언급한 것을 발견했습니다. 제가 github에서 살펴본 소스 버전에도 MAXNS가 없었는데, 얼마 전 3개의 네임서버 제한에 직면했던 기억이 있어서 여전히 적용되는 것 같습니다.

편집: 기본 /etc/systemd/resolved.conf에는 3개 이상의 DNS 서버를 지정할 수 있음을 나타내는 항목이 주석 처리되어 있지만 /run/systemd/resolve/resolv.conf를 보면 이 주석이 표시됩니다.

"구성된 DNS 서버가 너무 많습니다. 다음 항목은 무시될 수 있습니다."

처음 3개 뒤에 추가 DNS IP 목록이 표시됩니다.

그래서 우리는 여전히 3개의 DNS 서버에만 갇혀 있는 것 같습니다. 그 이유를 이해하기는 다소 어렵습니다. 제한에 대한 타당한 이유가 있는 경우 최소한 기본 resolv.conf 파일에 제한을 명시해야 하며 파일에서 제안된 DNS 항목이 3을 초과해서는 안 됩니다. 마지막 사례는 확인자가 오류를 발생시키는 것입니다. DNS 항목이 유효하지 않을 때 다시 시작하면 종료됩니다.

답변3

원하는 만큼 효과적으로 많은 수의 네임서버를 가질 수 있습니다. 두 번째로 진행하기 전에 첫 번째 해결 방법이 실패한다는 점을 기억하세요. 이름 확인 시도가 세 번째 및 네 번째 이름 서버에 도달하기까지는 어느 정도 시간이 걸립니다.

편집: 이 답변에 대한 의견에서 설명했듯이 제가 틀렸습니다. 기본적으로 네임서버는 3개로 제한되며 이는 컴파일 시간 옵션인 것으로 보입니다(따라서 런타임 중에 변경하기 쉽지 않음).

관련 정보