dnsmasq no se inicia al iniciar Ubuntu 13.10

dnsmasq no se inicia al iniciar Ubuntu 13.10

dnsmasq no se inicia al iniciar Ubuntu 13.10 y muestra el error en el syslog:

dnsmasq failed to create listening socket for 192.168.0.10: Cannot assign requested address

Cuando lo inicio manualmente, funciona muy bien. Aquí está el dnsmasq.conf:

bogus-priv
server=212.27.40.240
server=212.27.40.241
local=/mydomain.0./
# interface=eth0
listen-address=127.0.0.1
listen-address=192.168.0.10
expand-hosts
domain=mydomain.0.
dhcp-range=192.168.0.20,192.168.0.100,24h
dhcp-option=3,192.168.0.1
dhcp-option=vendor:MSFT,2,1i
cname="www.mydomain.0",myhost

Según tengo entendido, NetworkManager utiliza una instancia de una versión reducida de dnsmasq que puede entrar en conflicto con la versión completa. Supongo que esta es la causa del problema. Me gustaría que el host con el servidor, además de todos los demás hosts de la red, utilicen dnsmasq.

¿Alguna idea sobre lo que está pasando?

Respuesta1

Parece que la dirección o el puerto ya se están utilizando. Intente desactivarlo networkmanagerpara ver si esto ayuda. Lo más probable es que esta no sea la causa, ya que podrá acceder a la dirección cuando inicie manualmente el servicio.

Además, esto puede suceder durante el arranque si su dirección no ha sido asignada al servidor antes de que dnsmasqcomience el servicio. Si este es el caso, asegúrese de que a su servidor se le asigne una dirección IP estática.

Respuesta2

Tuve el mismo problema en 14.04. Resultó ser una combinación de NetworkManager y dnsmasq. Como /var/log/syslogpuede ver, eth0 no está listo cuando dnsmasq también intenta iniciar.

Mi solución fue deshabilitar eth0 para NM configurando eth0 dentro de /etc/network/interfaces. Agregar iface eth0 inet dhcp... o similar a la configuración. Por lo tanto, eth0 está disponible cuando se inicia dnsmasq.

Respuesta3

Tuve el mismo error, no inicié mi interfaz eth0 y no se asignó la dirección IP del servidor. Entonces resolver el problema fue

  1. Inicie la interfaz eth0 y asigne una IP sudo ifup eth0y verifíquela consudo ip a
  2. Reinicie el servidor dnsmasksudo service dnsmasq restart

Si ayuda, mi configuración estaba siguiendo /etc/red/interfaces

allow-hotplug eth0
iface eth0 inet dhcp
    address 192.168.2.1
    netmask 255.255.255.0
    network 192.168.2.0
    broadcast 192.168.2.255
    dns-nameservers 8.8.8.8
    dns-search lan
    post-up /sbin/iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

/etc/dnsmasq.conf

interface=eth0      # Use interface eth0  
listen-address=192.168.2.1 # Explicitly specify the address to listen on  
bind-interfaces      # Bind to the interface to make sure we aren't sending things elsewhere  
server=8.8.8.8       # Forward DNS requests to Google DNS  
domain-needed        # Don't forward short names  
bogus-priv           # Never forward addresses in the non-routed address spaces.  
dhcp-range=192.168.2.50,192.168.2.150,12h # Assign IP addresses between 172.24.1.50 and 172.24.1.150 with a 12 hour lease time  

Mi propósito era conseguir un servidor dhcp para poder redirigir el tráfico cableado a la wlan de mi lptp.

información relacionada