아웃바운드 DNS 트래픽을 다른 주소로 리디렉션하는 방법

아웃바운드 DNS 트래픽을 다른 주소로 리디렉션하는 방법

로컬 네트워크의 모든 아웃바운드 DNS 요청을 리디렉션하려고 합니다. 컴퓨터, 휴대폰 등으로 구성된 장비가 있습니다. 리디렉션을 수행하려면 어떻게 해야 합니까(예:www.도메인.com192.168.1.80).

기본적으로 부정 행위www.도메인.com네트워크상의 누구도 연결할 수 없도록 192.168.1.80에 연결www.도메인.com.

답변1

두 가지 솔루션이 귀하의 질문에 구체적으로 답변해 드립니다.

원하는 대로 호스트 파일을 수정하세요. 파일 자체에 이를 사용하는 방법에 대한 예가 있습니다.

확인을 위해 로컬 DNS 서버를 구성합니다. 대부분의 경우 라우터는 DNS 서버 역할을 할 수 있습니다.

DNS 서버를 구성하는 방법은 해당 서버를 처리하는 소프트웨어에 따라 달라지며, 라우터가 이를 사용한다고 가정할 때 dnsmasq이는 소규모 라우터에서 일반적이므로 구성 파일에 이 줄을 추가해야 합니다.

address=/www.domain.com/192.168.1.80

도메인에 대한 연결을 차단할 계획이라면 이 기능을 사용하는 것이 좋습니다. 이렇게 하면 DNS 서버가 도메인이 존재하지 않는다고 응답하게 되기 때문입니다.

server=/www.domain.com/

그러나 가장 좋은 방법은 라우터에서 netfilter 규칙을 만들어 해당 도메인 IP로 들어오고 나가는 모든 항목을 삭제하는 것입니다. 이는 귀하의 질문과 다릅니다.

iptables -A INPUT -s SERVICE_IP_HERE -j DROP
iptables -A OUTPUT -d SERVICE_IP_HERE -j DROP

iptablesIPv6인 경우 이를 로 바꿔야 합니다 ip6tables. 도메인이 둘 다 사용하는 경우 두 스택에 대한 규칙을 생성해야 합니다.

답변2

  1. 로컬 DNS 서버 구성: dnsmasq를 127.0.0.1:53으로 설정

  2. 네트워크 필터 구성: iptables -t nat -A POSTROUTING -p udp --dport 53 -j REDIRECT

관련 정보