Ubuntu 18.04 DNS resolution fails after a while

5,642

There is a known bug with resolved stub service, see https://github.com/systemd/systemd/issues/10298

The workaround I found was to change the symlink for /etc/resolv.conf to point to /run/systemd/resolve/resolv.conf

It seems to be a problem that affects static routes. I didn't have the problem when using DHCP.

Share:
5,642

Related videos on Youtube

Ninja Dude
Author by

Ninja Dude

Updated on September 18, 2022

Comments

  • Ninja Dude
    Ninja Dude over 1 year

    When I ping google.com on my Ubuntu 18.04, it gives me

    ping: google.com: Temporary failure in name resolution
    

    I would then proceed to run

    sudo service systemd-resolved start
    

    My /etc/resolv.conf has a symbolic link as shown

    /etc/resolv.conf -> /run/systemd/resolve/stub-resolv.conf
    

    The content is as follow

    # This file is managed by man:systemd-resolved(8). Do not edit.
    #
    # This is a dynamic resolv.conf file for connecting local clients to the
    # internal DNS stub resolver of systemd-resolved. This file lists all
    # configured search domains.
    #
    # Run "systemd-resolve --status" to see details about the uplink DNS servers
    # currently in use.
    #
    # Third party programs must not access this file directly, but only through the
    # symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,
    # replace this symlink by a static file or a different symlink.
    #
    # See man:systemd-resolved.service(8) for details about the supported modes of
    # operation for /etc/resolv.conf.
    
    nameserver 127.0.0.53
    options edns0
    

    My question is after running sudo service systemd-resolved start, it would work for a while (Maybe couple of hours), then when i ping google.com again, it would give the name resolution error. How can I permanently enable my system to resolve name resolution? I believe it is something to do with the systemd-resolved? Have been experiencing this over a couple of days. Thanks

    -- Update --

    A hackish way would be to set up sudo crontab to restart the service every few hours.

    • alfred
      alfred about 4 years
      As you say, starting the systemd-resolved can recover your situation, can you update the output of systemctl status systemd-resolved
    • Ninja Dude
      Ninja Dude about 4 years
      When i restart it, it becomes active. but after a couple of hours it becomes inactive. How can i make this permanent? thanks
    • alfred
      alfred about 4 years
      resolved, not networkd...you paste networkd state. You can update your question with those output, it is easier to see.
    • Ninja Dude
      Ninja Dude about 4 years
      systemd-resolved.service - Network Name Resolution Loaded: loaded (/lib/systemd/system/systemd-resolved.service; enabled; vendor preset: enabled) Drop-In: /etc/systemd/system/systemd-resolved.service.d └─override.conf Active: failed (Result: start-limit-hit) since Tue 2020-02-18 01:16:03 +08; 8h ago Process: 2951 ExecStart=/lib/systemd/systemd-resolved (code=exited, status=0/SUCCESS) Main PID: 2951 (code=exited, status=0/SUCCESS) Status: "Shutting down..."
    • Ninja Dude
      Ninja Dude about 4 years
      I have editied the output of systemctl status systemd-resolved
    • alfred
      alfred about 4 years
      Looks like resolved service is shut down by unknown reason. Can you update journalctl -u systemd-resolved output to your question, not comments?
  • Ninja Dude
    Ninja Dude about 4 years
    I have tried to edit /run/systemd/resolve/stub-resolv.conf and changed it to 8.8.8.8 but i still encounter the issue. I am getting my ip via dhcp
  • Lê Minh Quân
    Lê Minh Quân about 4 years
    Are there others device like your phone ...etc occur the same problems or just ubuntu ?