Điểm:0

Làm cách nào để làm mới/lấy máy chủ DNS mới trên Ubuntu Server 20.04?

lá cờ id

Tôi làm việc với một "máy chủ riêng ảo" trên đám mây đã cài đặt Ubuntu 20.04.

Tôi nhận thấy rằng - thỉnh thoảng - khi tôi khởi động lại máy chủ, tôi không thể ping bất cứ thứ gì:

$ping yahoo.com
ping: yahoo.com: Lỗi tạm thời trong việc phân giải tên
$ truy vấn giải quyết yahoo.com
yahoo.com: giải quyết cuộc gọi không thành công: Không tìm thấy máy chủ tên hoặc mạng thích hợp cho tên

Theo như tôi hiểu, vì đây là Ubuntu 20.04, /etc/resolv.conf không thực sự được sử dụng nữa, và hệ thống vượt qua việc xử lý DNS.

Tuy nhiên, trong mọi trường hợp, tôi không muốn chỉ định máy chủ DNS theo cách thủ công (như thủ thuật cũ để đưa 8.8.8.8 của Google vào /etc/resolv.conf) - rõ ràng, hầu hết thời gian DNS hoạt động: khi máy chủ khởi động, bằng cách nào đó, nó "lấy" được máy chủ DNS. Vì vậy, tôi muốn lặp lại quá trình này, ngoại trừ việc tôi không biết làm thế nào.

(Tương tự như vậy, nếu tôi muốn làm mới/lấy địa chỉ IP mới cho một máy, tôi biết rằng máy đó nên yêu cầu máy chủ DHCP cung cấp địa chỉ đó - vì vậy cuối cùng, thật dễ dàng để tra cứu, để thực hiện điều đó, tôi nên làm Sudo dhclient -r eth0 ví dụ)

Cũng lưu ý rằng khi độ phân giải tên DNS không hoạt động, tôi không có Máy chủ DNS được liệt kê trong đầu ra này:

$ systemd-giải quyết --status
Toàn cầu
       Cài đặt LLMNR: không
Cài đặt MulticastDNS: không
  Cài đặt DNSOverTLS: không
      Cài đặt DNSSEC: không
    DNSSEC được hỗ trợ: không
          DNSSEC NTA: 10.in-addr.arpa
                      16.172.in-addr.arpa
                      168.192.in-addr.arpa
                      17.172.in-addr.arpa
                      18.172.in-addr.arpa
                      19.172.in-addr.arpa
                      20.172.in-addr.arpa
                      21.172.in-addr.arpa
                      22.172.in-addr.arpa
                      23.172.in-addr.arpa
                      24.172.in-addr.arpa
                      25.172.in-addr.arpa
                      26.172.in-addr.arpa
                      27.172.in-addr.arpa
                      28.172.in-addr.arpa
                      29.172.in-addr.arpa
                      30.172.in-addr.arpa
                      31.172.in-addr.arpa
                      tập đoàn
                      d.f.ip6.arpa
                      Trang Chủ
                      nội bộ
                      mạng nội bộ
                      lan
                      địa phương
                      riêng
                      kiểm tra

Liên kết 2 (eth0)
      Phạm vi hiện tại: không có
Cài đặt DefaultRoute: không
       Cài đặt LLMNR: có
Cài đặt MulticastDNS: không
  Cài đặt DNSOverTLS: không
      Cài đặt DNSSEC: không
    DNSSEC được hỗ trợ: không

Tôi đã thấy rằng để xóa bộ đệm DNS, họ (https://unihost.com/help/how-to-clear-the-dns-cache/) giới thiệu:

sudo /etc/init.d/khởi động lại mạng

... tuy nhiên, tôi không muốn chạy lệnh này, vì tôi đã kết nối với máy chủ qua ssh, vì vậy tôi tưởng tượng rằng việc khởi động lại toàn bộ mạng cũng sẽ giết chết tôi ssh phiên cuối cùng và có thể có những hậu quả không mong muốn khác.

Vì vậy, tôi tự hỏi: có lệnh nào tôi có thể chạy trong một ssh làm mới hoặc lấy máy chủ DNS mới cho máy này - sử dụng cơ chế tương tự được sử dụng khi khởi động, khi DNS thực sự hoạt động trên máy này?

Điểm:1
lá cờ id

Vâng, tôi chỉ tìm thấy https://unix.stackexchange.com/questions/328131/how-to-troubleshoot-dns-with-systemd-resolved trong đó lưu ý:

... đôi khi khởi động lại qua Sudo systemctl khởi động lại systemd-resolved là một ý tưởng tốt.

Vì vậy, tôi đã thử lệnh này:

Sudo systemctl khởi động lại systemd-resolved

... và thực sự, Máy chủ DNS xuất hiện sau đó trong đầu ra của systemd-resolve --status (hoặc trạng thái giải quyết, dường như hiển thị cùng một báo cáo)

khả năng khác:

Trên Ubuntu 20.04, giải quyết systemd là một máy chủ DNS cục bộ đi kèm với hệ thống hoạt động như một trình giải quyết sơ khai và nó sẽ tự động chỉnh sửa /etc/resolv.conf với cấu hình chính xác.

...

Tệp này chứa các máy chủ DNS từ các hợp đồng thuê DHCP nhưng hãy lưu ý rằng bạn sẽ không được hưởng lợi từ tính năng lưu vào bộ nhớ đệm của trình phân giải sơ khai.

À, nếu các máy chủ DNS được lấy từ các hợp đồng thuê DHCP - thì có khả năng Sudo dhclient -r eth0 cũng có thể hoạt động.

Cuối cùng tôi cũng dám chạy:

$ sudo /etc/init.d/khởi động lại mạng
Khởi động lại mạng (thông qua systemctl): mạng.service.

... và hóa ra, điều này đã không phá vỡ của tôi ssh phiên, vì vậy điều đó cũng tốt.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.