dnsmasq falha ao iniciar na inicialização do Ubuntu 13.10

dnsmasq falha ao iniciar na inicialização do Ubuntu 13.10

O dnsmasq falha ao iniciar na inicialização do Ubuntu 13.10, mostrando o erro no syslog:

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

Quando inicio manualmente, funciona muito bem. Aqui está o 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

Pelo que entendi, o NetworkManager usa uma instância de uma versão reduzida do dnsmasq que pode entrar em conflito com a versão completa. Suponho que esta seja a causa do problema. Eu gostaria de ter o host com o servidor nele, além de todos os outros hosts da rede, usando dnsmasq.

Alguma idéia sobre o que está acontecendo?

Responder1

Parece que o endereço ou a porta já está sendo usado. Tente desativar networkmanagerpara ver se isso ajuda. Provavelmente, essa não é a causa, pois você consegue chegar ao endereço ao iniciar manualmente o serviço.

Além disso, isso pode acontecer durante o tempo de inicialização se o seu endereço não tiver sido atribuído ao servidor antes do dnsmasqinício do serviço. Se for esse o caso, certifique-se de que seu servidor receba um endereço IP estático.

Responder2

Eu tive o mesmo problema em 14.04. Acabou sendo uma combinação de NetworkManager e dnsmasq. Você /var/log/syslogpode ver que a eth0 não está pronta quando o dnsmasq tenta iniciar também.

Minha solução foi desabilitar o eth0 para NM configurando o eth0 dentro do /etc/network/interfaces. Adicione iface eth0 inet dhcp... ou semelhante à configuração. Assim, eth0 está disponível quando o dnsmasq é iniciado.

Responder3

Ocorreu o mesmo erro, não iniciei minha interface eth0 e o endereço IP do servidor não foi atribuído. Então resolver o problema foi

  1. Inicie a interface eth0 e atribua IP com sudo ifup eth0e verifique comsudo ip a
  2. Reinicie o servidor dnsmasksudo service dnsmasq restart

Se ajudar minha configuração estava seguindo /etc/rede/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  

Meu objetivo era conseguir um servidor DHCP para poder redirecionar o tráfego cabeado para wlan do meu lptp

informação relacionada