라우터의 IP 대신 추가 DNS 서버를 제공하는 DD-WRT


9

특정 도메인을 내부 주소로 확인하고 그 밖의 모든 것을 전달하기 위해 DNSMasq로 설정된 DD-WRT (DD-WRT v24SP2-MULTI (03/21/11) 표준 사용) 라우터가 있습니다. 라우터 자체는 Google의 퍼블릭 DNS 서버를 사용하여 주소를 확인하도록 구성되어 있습니다.

내 설정 화면은 다음과 같습니다.

DDWRT 설정 화면

내 문제는 DHCP 클라이언트가 연결되면 라우터와 Google의 두 DNS 서버를 할당 된 DNS 서버로 얻는 것입니다.

DHCP가 할당 한 DNS 서버

때로는 무선 클라이언트가 내부 IP 주소를 가리키는 도메인을 확인하려고 시도 8.8.8.8하고 라우터 가 아닌 어떤 이유로 든 요청이 전송되기 때문에 대신 외부 IP를 가져 오기 때문에 문제가 됩니다.

라우터가 자체 IP 이외의 다른 것을 DNS 서버로 제공하기를 원하지 않습니다. 가능합니까?


1
내가 잘못했을지도 모르지만 DHCP 서버 구성 섹션이므로 라우터에 클라이언트에게 dns 옵션으로 Google 서버를 제공하도록 명시 적으로 지시하고 있습니다. 목록에서 해당 항목을 제거한 다음 Google에서 자체 DNS를 가져 오도록 라우터를 구성하십시오. 아마도 아래 답변이 올바른 방법입니다.
horatio

이를 제거하면 라우터가 DHCP를 통해 ISP로부터받은 서버를 제공합니다.
0x6A75616E

귀하는 게시물과 댓글에 "이유가 무엇이든"여러 차례를 말합니다. 이것이 8.8.8.8이 클라이언트에게 전달되는 이유입니다. 말했 으니까 보고하지 않으려면 제거해야합니다. 라우터가 DNS 서버 인 경우 라우터 주소 만 사용하십시오.
horatio

@horatio, not not .. 내 요점은 dhcp 서버가 추가 DNS 주소를 전혀 제공하지 않는 이유입니다. 장치에서 dnsmasq를 수행하고 특정 이름 확인 규칙을 적용하면 추가 DNS 서버 (라우터 자체 외에)를 제공하면 이러한 목적을 달성 할 수 없습니다.
0x6A75616E

이 섹션은 DHCP 정보를 요청 하는 클라이언트에 제공 할 DNS 서버 목록입니다 .
horatio

답변:


7

DNSMasq를 사용하는 것이 좋습니다.

당신은 당신이 원하는 무엇을 구성 할 수 있습니다 서비스 (> 서비스) 에서, 탭 하는 dnsmasq> 추가하는 dnsmasq 옵션 상자, 그러나 첫째로, 당신은 그 정적 DNS 필드를 취소 할 수 있습니다. "설정> 기본 설정"의 고정 DNS 필드

DNSMasq 옵션 상자에 다음을 추가하십시오.

dhcp-option= option:dns-server, 192.168.10.10 # DHCP option 006

server = 8.8.8.8 # DNSMasq will use these servers for forwarding the DNS requests that it can't serve
server = 8.8.4.4

이것은 나 자신을 위해 완벽하게 작동 한 것 같습니다. 그래도 매우 멍청한 질문입니다. 첫 번째 줄의 어느 부분이 DHCP 옵션 006을 지정합니까? 옵션 : dns-server?
Residualfail

@Residualfail : p; 숫자로 지정할 수도 있지만 option:dns-serverDHCP 옵션에 해당합니다 006.
palswim

1
내가 너무 빨리 말한 것 같습니다. 내부 DNS가 종료 된 후 DNS가 Google의 DNS로 다시 떨어지는 것처럼 보이지 않습니다. = (
Residualfail

4

공식 DD-WRT 사이트에서 가져온 정보 : http://www.dd-wrt.com/wiki/index.php/OpenDNS

나머지 dns 서버를 라우팅 할 수없는 IP로 설정하고 (이 경우 10.0.0.0& 10.0.0.1) ISP의 DNS 서버를 라우팅 할 수 없습니다. 지금까지는 존재하지 않는 DNS 서버에서 대기하는 지연없이 작동하는 것 같습니다.


라우팅 할 수없는 주소는 네트워크 스택에 의해 즉시 삭제되므로 지연이 없습니다. 약간의 오버 헤드가 발생하고 해킹이지만 실제 문제는 없어야합니다.
누군가

3

DDWRT를 사용하지 않으므로 반 질문 / 반 답변입니다.

DHCP 서버로서의 수동 DNSMasq는 "추가 DNSMasq 옵션"섹션에 있습니다 :

DNSMasq의 웹 인터페이스에는 "서비스"탭의 추가 DNSMasq 옵션에 입력하여 설정할 수있는 추가 옵션이 있습니다.

ISP에서 DNS 서버를 통과하려는 경우 다음 매개 변수를 사용할 수 있습니다.

dhcp-option=6, x.x.x.x, y.y.y.y

여기서 xxxx = DNS1 yyyy = DNS2

이것은 ISP 서버를 전달하는 것이 선택 사항이므로 위의 줄을 찾아서 삭제하면 서버를 꺼야합니다.


1
dhcp-option = 6,192.168.10.10을 설정하여 해당 IP 주소를 DNS 서버 IP로 DHCP 클라이언트에 전달합니다.
thane

1
포인터 주셔서 감사합니다. 내가하고하는 dnsmasq는 (그것을 전환) (나는 ddwrt에 사용 된 데몬 DNS는) 모두 uDHCPd에 있지만 아무 소용 :( 해당 시도 그것은 어떤 이유에서 추가 DNS 레코드를 제공 유지합니다..
0x6A75616E

이 경우 DD-WRT 포럼 에 질문을 게시해야합니다 .
harrymc

2

클라이언트가 외부 DNS에 도달하지 못하게하려면 해당 주소를 DHCP 서버 구성에 두지 마십시오.

외부 DHCP 클라이언트 (DNSMASQ는 DNS 클라이언트 환경 설정을 사용합니다) 구성에서 Google의 DNS 서버를 추가하고 싶을 것입니다.

특별한:

WAN 링크 구성에 추가 (모든) DNS 서버를 추가해야합니다. DNSMasq는이를 사용하며 DHCP 클라이언트가 공급자로부터 획득 한 것은 절대 사용하지 않습니다.


귀하의 기여에 감사드립니다. 그러나 그것은 질문의 맥락에서 의미가 없습니다. DNSMasq는 클라이언트의 DNS 요청을 실제 DNS 서버로 전달하여 일부 응답을 즉시 수정할 수 있습니다. 구성에서 dns 서버를 제거하면 라우터가 ISP 할당 서버로 되돌아갑니다. "구성 수정"이라고 말하여 내 질문에 대답하고 있지만 질문 자체는 "구성 수정 방법"입니다.
0x6A75616E

2

DD-WRT의 일반적인 구성 옵션은 라우터가 ISP의 기본 DNS 서버 외부로 DNS를 라우팅하도록 허용하는 것입니다. 당신이 성공적으로 한 일; 그러나 요청이 CLIENT 시스템에서 생성되어 라우터에 연결되므로 클라이언트 시스템의 구성된 DNS에 우선 순위가 항상 부여됩니다.

당신이 설명하는 것은 클라이언트가 라우터와 연결되어 있다는 것입니다. 맞습니다. 그러나 DNS는 라우터 IP + 2 다른 DNS 설정을 보여줍니다. 클라이언트 컴퓨터를 확인하고 IPV4 설정이 수동으로 구성하지 않고 연결에서 DNS 서버 구성을 동적으로 가져 오도록 설정되어 있는지 확인하십시오.

클라이언트 구성

그런 다음 DD-WRT 라우터가 올바르게 설정되어 있는지 확인하십시오.

라우터 구성

위의 구성에서 몇 가지 문제가 있습니다. DHCP 주소 범위를 시작 시간 200과 끝 시간으로 설정했습니다 255. 200에서 시작하여 끝나도록 변경하는 것이 좋습니다 254. 일반 구성의 *.*.*.255경우 브로드 캐스트 주소이며 연결된 클라이언트에 할당하는 데 사용하는 일반 IP 주소가 아니라면 255 주소를 끈 상태로 두십시오 .

로컬 DNS 설정을 강조 표시했습니다 127.0.0.1. 이는 라우터 에서 로컬 DNS 서버를 실행하고 있음을 의미 합니다 . 그렇지 않은 경우로 변경 0.0.0.0하거나 네트워크의 로컬 DNS 서버로 적절한 주소를 변경하십시오 .

서버와 클라이언트가이 방식으로 구성되면 라우터 DNS IP 주소 만 나타납니다. 모든 요청은 라우터와 연결된 DNS 서버를 통해 라우팅됩니다.

로컬 DNS 서버에 대한 참고 사항 라우터가 특정 로컬 주소를 로컬 IP에 연결하려면 적절한 DD-WRT 화면에서 DNSMasq 구성 옵션에 추가하거나 로컬 DNS 서버를 사용하여 적절한 IP 주소를 입력하십시오. 해당 서버 (일반적으로 네트워크 범위 내의 정적 서버) 이런 식으로 해결 순서는 먼저 로컬 서버가되고 2 개의 외부 서버가됩니다. 그러나 여전히 클라이언트 만 라우터 IP를 DNS 서버로 볼 수 있습니다.


귀하의 답변에 감사드립니다!, 네트워크의 모든 클라이언트에 DNS 서버가 하드 코딩되어 있지 않은지 확인했습니다. 실제로 모든 경우에 192.168.10.10 (라우터 자체)이 첫 번째로 기록 할 DNS 서버로 돌아옵니다. 어떤 컴퓨터는 DHCP가 현재 제공하고있는 보조 DNS 서버에 무작위로 충돌하는 일이 발생합니다. 백만 가지를 시도해 보았지만 그 자체 만 제공 할 방법이없는 것 같습니다. 다른 컴퓨터에서 다른 dnsmasq 인스턴스를 실행하여 dns2 및 dns3로 사용할 수도 있습니다. 그러한 해킹! lol. 다시 thx.
0x6A75616E

2

라우터가 죽은 후 비슷한 문제가 발생하여 깜박이는 WRT160N을 실행해야했습니다.

네트워크의 192.168.2.30에서 로컬 DNS 서버로 작동하는 상자가 있습니다. 기본적으로 DHCP가 해당 주소를 DNS 서버로만 제공하기를 원합니다. DNS가 다른 곳으로 가고 싶지 않습니다.

"펌웨어 : DD-WRT v24-sp2 (12/19/10) 미니"를 사용하고 있습니다.

DNSMasq 설정, DHCP 설정, 로컬 DNS 또는 내가 사용하는 것의 조합은 중요하지 않습니다. DNS 서버 2와 DNS 서버 3이 비어 있거나 DNS 서버 1과 일치하면 DD-WRT는 이러한 지점에 대해 Comcast의 DNS 서버를 전달해야합니다. 로컬이 아닌 쿼리에 대해 OpenDNS로 192.168.2.30을 전달하므로 이것을 원하지 않습니다.

나는 DD-WRT 의이 오래된 (지금까지) 버전의 버그로 이것을 작성하고 192.168.2.30에서 자체 DHCP 서버를 설치 / 구성하고 라우터에서 DHCP를 비활성화 할 것입니다.


1
그것은 실제로 나쁜 생각이 아닙니다 ... 다른 상자에 dhcp를 설정하고 ddwrt로 조이는 것을 종료 할 수 있습니다.
0x6A75616E

1
이 문제는 2016 년 2 월 빌드에 여전히 존재하며 기능 인 것 같습니다. 라우터를 버리고 Linux PC로 돌아 가려고합니다. 라우터 소프트웨어를 구축하는 사람들은 GUI의 예기치 않은, 드문, 그리고 무책임한 행동으로 인해 발생하는 개인 정보 문제를 더 잘 이해해야합니다. 내가 직접 해킹해야한다면, 비교적 복잡하고 제한된 시스템을 사용할 필요는 없다. 그리고 다른 컴퓨터에서 DNS와 DHCP를 이미 실행하고 있다면 라우터에 남은 것은 무엇입니까? 패킷 밀기?
누군가

1

답변 검색을 우연히 발견했기 때문에 몇 년 늦게 추가되었습니다 ... 2 개의 IP 주소를 처리하기 위해 가상 인터페이스를 pi-hole에 추가했습니다.

eth0 192.168.10.10
eth0.1 192.168.10.11
eth0.2 192.168.10.12

이를 통해 3 개의 상자를 모두 로컬 주소로 채울 수 있었으며 dd-wrt 라우터가 5, 3 개의 로컬 및 2 개의 업스트림 ISP DNS를 전달하더라도 내 컴퓨터가 적중하지 않습니다.


0

덜 해킹 된 방법으로 시작 : LAN 및 DNS 인 경우 DNS가 세 개의 IP에서 수신 대기하도록 여분의 주소가 있다고 확신합니다.

라우팅 할 수없는 주소를 갖는 것에 대한 이익은 능동적으로 관련이 없어야하지만 적어도 당신은 깨진 것에 의존하지 않고 라우터가 그것에 응답합니다. 언젠가는 바뀌지 않을 것이라고 확신 할 수 없습니다.

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