hacer que dnsmasq escuche en una sola interfaz

hacer que dnsmasq escuche en una sola interfaz

Tengo dnsmasq ejecutándose en una Raspberry Pi con Raspbian. El pi tiene un dispositivo wifi en wlan0 y está conectado a la red local/Internet en eth0. Mi objetivo es que dnsmasq resuelva todos los hosts a la IP estática del pi solo para conexiones wifi. Este es mi dnsmasq.conf

address=/#/192.168.42.1
interface=wlan0

Ahora, sin embargo, cuando hago ssh al pi a través de eth0 y hago ping a google.com, también se resuelve en 192.168.42.1. Quizás sea por esto (de la página de manual):

Dnsmasq agrega automáticamente la interfaz loopback (local) a la lista de interfaces para usar cuando se usa la opción --interface

Si es así, ¿cómo puedo hacer para que dnsmasq solo escuche las conexiones wifi?

Solución alternativa

Para mis propósitos, estaba bien que la lógica fuera: "Si hay un cable Ethernet enchufado, apáguelo dnsmasq. Si un cable Ethernet está desconectado, vuelva a encenderlo".

Por lo tanto, solía ifplugdgestionar el proceso. En el archivo /etc/ifplugd/ifplud.actionque agregué service dnsmasq stopal caso "arriba" y service dnsmasq startal caso "abajo". ¡Éxito total!

Respuesta1

prueba en su lugar

except-interface=eth0

para evitar que dnsmasq escuche eth0

Respuesta2

Estás haciendo esto de manera equivocada. dnsmasq no tiene ninguna culpa.

La mayoría de los solucionadores de DNS en Linux utilizan /etc/resolv.conf. Lo que se define allí es independiente de la interfaz. De hecho, tiene que ser así: no sabes qué interfaz y ruta tomar a menos que tengas la dirección IP numérica.

Entonces, básicamente, lo que quieres no se puede hacer.

A menos, por supuesto, que en realidad no esté destinado al host dnsmasq, sino a los clientes WiFi o lo que sea. En ese caso, debe eliminar el respondedor DNS local resolv.confy hacer que utilice el flujo ascendente (su enrutador, ISP, Google DNS, OpenDNS, ...) directamente.

Un ejemplo típico resolv.confpodría verse así cuando se utiliza Google DNS:

nameserver 8.8.8.8
nameserver 8.8.4.4

información relacionada