Điểm:0

Nâng cấp Ubuntu 20.04 - Phân giải tên DNS không thành công trên mạng nội bộ

lá cờ kr

Công ty của tôi phân phối phần mềm cho khách hàng trên máy ảo Ubuntu. Gần đây, chúng tôi đã cập nhật tất cả các máy ảo khách từ Ubuntu 16/18 lên Ubuntu 20.04.

Chúng tôi đã gặp sự cố trong đó độ phân giải tên DNS không hoạt động trên mạng nội bộ. Nó hoạt động bên ngoài mạng (chúng tôi có thể ping các trang web bên ngoài), nhưng chúng tôi không thể kết nối với các máy trên mạng nội bộ bằng tên DNS - chỉ bằng địa chỉ IP. Trong nhiều trường hợp, chúng tôi có thể phân giải tên DNS nội bộ trên máy ảo cũ (Ubuntu 16/18), nhưng nó không hoạt động khi chúng tôi cài đặt máy ảo mới bằng cách sử dụng cùng cài đặt mạng.

Chúng tôi thường thiết lập VM với một IP tĩnh. Bộ phận CNTT của khách hàng cung cấp cho chúng tôi thông tin mạng và (các) máy chủ dns nội bộ của họ và chúng tôi thiết lập 00-installer-config.yaml tập tin phù hợp

/etc/netplan/00-installer-config.yaml thiết lập ví dụ:

mạng:
  ethernet:
    enp0s10f0:
      địa chỉ: [192.168.10.200/24]
      cổng4: 192.168.10.1
      máy chủ tên:
        địa chỉ: [192.168.10.1, xxx.xxx.xxx.xxx, v.v.]
  phiên bản: 2

Trên các máy ảo cũ, chúng tôi thường không thể ping các máy nội bộ bằng tên DNS cho đến khi chúng tôi thêm tên miền cục bộ. Ví dụ. ping fs01 sẽ không hoạt động nhưng ping fs01.clientdomain.local sẽ làm việc. Tuy nhiên, trên máy ảo Ubuntu, điều này dường như không giúp được gì cả. Chúng tôi luôn phải hoàn nguyên về địa chỉ IP của máy chủ tệp thay vì sử dụng tên miền. Trong hầu hết các trường hợp, điều này không sao vì IP là tĩnh và không thể thay đổi, nhưng điều này không phải lúc nào cũng đúng và chúng tôi muốn có thể kết nối qua tên DNS.

Mạng và tên miền thực sự không phải là điểm mạnh của tôi. Nếu bất cứ ai có thể đưa ra đề xuất về những điều cần thử hoặc các lĩnh vực cần nghiên cứu sẽ được đánh giá cao!

CẬP NHẬT

Tôi đã thử đề xuất thêm địa chỉ IP máy chủ tên nội bộ vào nslookup lệnh và chụp một số ảnh chụp màn hình. Có vẻ như VM có thể tìm thấy máy chủ với nslookup, nhưng chỉ khi tôi bao gồm IP máy chủ định danh một cách rõ ràng.

192.168.1.4 là máy chủ tên và cũng là máy chủ lưu trữ mà chúng tôi đang cố gắng kết nối.

Ghi chú: Điều này đã hoạt động trên Ubuntu 18.04 VM cũ, sử dụng cùng một máy chủ tên nội bộ và tên máy chủ FQDN.

Bình thường

user@ubuntu:~$ ping <hostname.domain.local>
    ping: <hostname.domain.local>: Lỗi tạm thời trong việc phân giải tên

nslookup đơn giản

user@ubuntu:~$ nslookup <hostname.domain.local>
    Máy chủ: 127.0.0.53
    Địa chỉ: 127.0.0.53#53

    ** máy chủ không thể tìm thấy <hostname.domain.local>: SERVFAIL

nslookup với IP máy chủ tên

user@ubuntu:~$ nslookup <hostname.domain.local> 192.168.1.4 
    Máy chủ: 192.168.1.4## Tiêu đề ##
    Địa chỉ: 192.168.1.4#53

    Tên: <hostname.domain.local>
    Địa chỉ: 192.168.1.85
    Tên: <hostname.domain.local>
    Địa chỉ: 192.168.1.4

Trong trường hợp này, máy chủ tên 192.168.1.4 là mục máy chủ tên duy nhất trong tệp yaml của chúng tôi. Vì vậy, tôi không hiểu làm thế nào đây có thể là một số vấn đề với thứ tự máy chủ định danh trong tệp:

mạng:
  ethernet:
    enp0s10f0:
      địa chỉ: [192.168.1.21/24]
      cổng4: <cổng>
      máy chủ tên:
        tìm kiếm: [<domain.local>]
        địa chỉ: [192.168.1.4]
  phiên bản: 2
jtessier72 avatar
lá cờ cn
Cổng của bạn có phải cũng là máy chủ DNS của bạn như trong ví dụ không? Ngoài ra, đầu ra của 'nslookup là gì ' và 'nslookup '. Có vẻ như bạn không thể truy cập máy chủ DNS.
lá cờ kr
Đôi khi CNTT cung cấp cho chúng tôi cổng là một trong những máy chủ DNS của họ. Thông thường chúng khác nhau mặc dù. Chúng tôi đã thử thực hiện nslookup trên tên máy chủ một lần và không thể tìm thấy nó. Nhưng chúng tôi đã có thể kết nối với máy chủ DNS, điều này rất lạ. Gần đây, chúng tôi đã thực hiện một bản cập nhật trong đó lần đầu tiên chúng tôi có thể kết nối bằng tên máy chủ, nhưng miền của họ là ".ca" trái ngược với ".local" (tức là `hostname.domain.ca`). Tôi không chắc tại sao điều đó lại tạo nên sự khác biệt
jtessier72 avatar
lá cờ cn
Trên các máy ảo cũ, việc thêm hậu tố tìm kiếm clientdomain.local sẽ hữu ích - vì nếu bạn nhập ping fs01, nó sẽ nối các hậu tố tìm kiếm theo thứ tự khi cố gắng phân giải tên. Bạn có thể so sánh địa chỉ IP của máy chủ định danh. Khi bạn nói rằng bạn có thể kết nối với máy chủ dns - đó là bằng ping hay một số phương tiện khác?
lá cờ kr
Vâng, đó chỉ là một lệnh ping đơn giản tới máy chủ DNS mà chúng tôi đã thử. Tôi nghĩ CNTT có thể đã thực hiện nslookup trực tiếp tới máy chủ DNS trong một trường hợp nhưng tôi không thể nhớ chính xác. Ai đó đã gợi ý cho tôi thực hiện một `nslookup ` thay vì chỉ chỉ định máy chủ lưu trữ, vì vậy tôi chắc chắn sẽ thử điều đó vào lần tới
lá cờ ru
Xin cho biết bạn đã quên định cấu hình miền tìm kiếm của mình. Nếu `tên máy chủ` được cho là `tên máy chủ.foo.bar` khi bạn đang sử dụng FQDN, các miền tìm kiếm của bạn cần được thiết lập cho `foo.bar` trong cấu hình. Thêm `search: [clientdomain.local]` vào phần 'máy chủ định danh' của bạn.
lá cờ kr
Xin lỗi tôi đã quên bao gồm điều đó, tôi đã sao chép nội dung tệp theo cách thủ công. Tôi đã cập nhật đầu ra cấu hình ở trên để chính xác hơn. Lần này, chúng tôi đã thử thêm miền tìm kiếm và tôi đã chạy lại các lệnh `ping/nslookup` nhưng nó không ảnh hưởng đến vấn đề phân giải tên nội bộ của chúng tôi
lá cờ ru
@ user2437443 Tôi cho rằng bạn đã chạy `netplan apply` sau khi thay đổi hoặc khởi động lại sau đó, vì nếu không thì nó sẽ không hoạt động. Nó cũng sẽ không hoạt động trừ khi 192.168.1.4 (máy chủ DNS) biết rằng có miền tìm kiếm DNS. Và đảm bảo rằng bạn không bao gồm `` vì đó không phải là một phần của miền. Ngoài ra, SERVFAIL có nghĩa là khi hệ thống cố gắng truy vấn 192.168.1.4, đã xảy ra lỗi nên máy chủ DNS không thể trả lời bằng một phản hồi hợp lệ. Điều đó cho thấy máy chủ DNS bạn đang sử dụng bị hỏng hoặc bị định cấu hình sai chứ không phải sự cố phía máy khách.
jtessier72 avatar
lá cờ cn
Bạn có thể thấy máy chủ DNS đang hoạt động thực sự là gì: systemd-resolve --status | grep 'Máy chủ DNS' -A2

Đă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.