DD-WRT : DNSMasq 확장 호스트가 작동하지 않습니다


12

DD-WRT (펌웨어 : DD-WRT v24-sp2 (09/08/09) 미니)를 실행하는 Linksys 라우터가 있습니다. DHCP 할당 시스템의 DNS 이름을 성공적으로 확인했지만 해당 도메인을 정규화 한 경우에만 가능합니다. "확장 호스트"DNSMasq 추가 옵션을 사용하더라도이 정확한 기능을 활성화해야합니다.

내 dnsmasq.conf는 다음과 같습니다.

interface=br0
resolv-file=/tmp/resolv.dnsmasq
domain=example.com
dhcp-leasefile=/tmp/dnsmasq.leases
dhcp-lease-max=51
dhcp-option=lan,3,10.77.0.5
dhcp-authoritative
dhcp-range=lan,10.77.0.100,10.77.0.149,255.255.0.0,1440m
dhcp-host=00:1A:A0:1D:82:5A,astatichostname,10.77.1.40,infinite
expand-hosts

참고로 example.com과 astatichostname은 내가 사용하는 실제 거래 이름의 자리 표시 자입니다. 네트워크는 10.77.0.0/16을 사용하고 라우터는 10.77.0.5를 사용합니다.

결과 :

> nslookup astatichostname 10.77.0.5
Server:     10.77.0.5
Address:    10.77.0.5#53

** server can't find astatichostname: NXDOMAIN

> nslookup astatichostname.example.com 10.77.0.5
Server:     10.77.0.5
Address:    10.77.0.5#53

Name:   astatichostname.example.com
Address: 10.77.1.40

DNSMasq에서 확장 호스트를 방해 할 수있는 다른 것이 있습니까?

답변:


8

이 질문은 오래되었지만 문제에 대한 최고의 Google 결과 중 하나이며 마침내 알아 냈습니다.

문제는 그렇지 expand-hosts않습니다. 그것에 대한 문서는 매우 모호하지만 , dns 쿼리가 아닌의 expand-hosts항목을 호스트하기 위해 도메인을 추가하는 것 /etc/hosts입니다. 예를 들어

/ etc / hosts :

10.77.0.5 astatichostname

dnsmasq.conf :

expand-hosts
domain=example.com

그런 다음 dns 쿼리는 (에 대한 DNS 쿼리 외에도)로 astatichostname.example.com해결됩니다 .10.77.0.5astatichostname



해결책:

그래서, 솔루션의 항목을 만들 DD-WRT를 얻는 것입니다 /etc/hosts그들에 도메인없이, 다음의 한 부분으로 그 호스트 항목을 고려하는 dnsmasq에게 example.com완전한 A 레코드의 DNS 쿼리가 들어올 때 도메인.
당신에게이 작업을 수행하려면 해야한다 :

  1. example.com도메인을 설정 -> 기본 설정 페이지의 옵션 설정 아래 에있는 도메인 이름 필드에 두십시오 .
  2. LAN 도메인 상의 설정 서비스 에서 페이지 DHCP 서버 .
  3. 추가 expand-hosts추가하는 dnsmasq 옵션 상의 서비스 에서 페이지 하는 dnsmasq

1 단계 domain=dnsmasq.conf파일에 넣을 설정을 제어 합니다. 2 단계 는 입력 된 항목에서 도메인을 제거합니다 /etc/hosts. 3 단계 /etc/hosts는 정규화 된 DNS 쿼리가 들어올 때 도메인을 항목으로 가져 옵니다.


나는 dd-wrt가 이것을 멋지고 간단하게 만들어서 기쁘다 ...


2

내 DD-WRT에서 다음이 작동합니다.

expand-hosts
local=/lan/
domain=lan

local설정 이 누락 되었기 때문이라고 생각 합니다. 또한 lanGUI에서 "LAN 도메인"으로 설정했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.