Ubuntu好像自12.04以后,就把定制的dnsmasq用作自己的DNS解析服务。只绑定在127.0.0.1上面。

但是当你安装了完整版的dnsmasq以后,却发现这个定制版的dnsmasq导致无法在127.0.0.1以外的IP上提供服务。

经过多方研究,发现经过如下两步操作以后,dnsmasq的完整版就可以完美运行了。

  1. 编辑 /etc/NetworkManager/NetworkManager.conf
    在dns=dnsmasq这一行前面加上#注释掉。
    这样就可以把这个定制版的dnsmasq停掉
  2. 编辑/lib/systemd/system/dnsmasq.service
    在[Unit]下面加上这两行:

    After=network-online.target
    Wants=network-online.target
    

    这样的目的是防止dnsmasq先于网卡前启动,导致网卡绑定失败。从而需要每次手工重启dnsmasq服务。

好了。难者不会,会者不难。这样就可以完美解决Ubuntu下面安装试用dnsmasq的问题。