Nó thay thế máy chủ tên (DNS) được sử dụng trên máy của bạn bằng dịch vụ Google Public DNS . Nếu việc chạy lệnh đó giúp bạn thoát ra, bạn có thể gặp sự cố DNS trong cài đặt mặc định do mạng của bạn cung cấp (DHCP). Mặc dù sẽ tốt hơn để giải quyết nguyên nhân gốc rễ của vấn đề, đây là câu trả lời chung cho câu hỏi của bạn.
Giải thích về lệnh
sudo echo nameserver 8.8.8.8 > /etc/resolv.conf
sudo
nâng cao đặc quyền để được root trong trường hợp này.
echo
chỉ xuất các đối số theo sau cho đầu ra tiêu chuẩn (trong trường hợp này là đầu ra nameserver 8.8.8.8
)
>
chuyển hướng đầu ra tiêu chuẩn đến một tệp (ghi đè lên nó) trong một vỏ Unix thông thường.
/etc/resolv.conf
là tập tin mà đầu ra được ghi vào.
- Có một dòng
nameserver 8.8.8.8
trong /etc/resolv.conf
làm cho hệ thống sử dụng máy chủ tên có địa chỉ IP 8.8.8.8
để phân giải tên miền thành địa chỉ IP. (phiên bản rất ngắn của những gì thực sự xảy ra)
8.8.8.8
là một trong những địa chỉ được Google công bố về nơi các dịch vụ DNS công cộng của họ đang lắng nghe.
sudo
sai lầm
Mặc dù lời giải thích này nghe có vẻ hợp lý, nhưng điều này sẽ không hiệu quả, vì một lỗi bạn sẽ gặp phải:
bash: /etc/resolv.conf: Permission denied
Tại sao? Chuyển hướng đầu ra được xử lý bởi shell của bạn (ở đây: Bash) và không được tính đến cho lệnh được sử dụng cho sudo
. Tương tự như cách nhân trong toán học đã được ưu tiên so với việc thêm. Vì vậy, nó chỉ echo
có đặc quyền nâng cao, nhưng vỏ của bạn thì không! Để giải quyết điều này, người ta nên chạy lệnh này như
sudo sh -c "echo nameserver 8.8.8.8 > /etc/resolv.conf"
hoặc, bằng cách sử dụng một đường ống và tee
để xuất nó thành một tệp:
echo nameserver 8.8.8.8 | sudo tee /etc/resolv.conf #prints to screen as well
Quản lý mạng và Ubuntu
Trên Ubuntu, đây chỉ là một thay đổi tạm thời, vì Trình quản lý mạng "quản lý" /etc/resolv.conf
tệp. Sửa đổi địa phương sẽ được ghi đè. Đó là lý do tại sao bạn nên cấu hình cái này trong Trình quản lý mạng để duy trì nó.
Cấu hình bằng Network Manager
Tôi khuyên bạn nên định cấu hình PC của mình đúng cách bằng Network Manager. Tôi giả sử bạn đang sử dụng DHCP trên mạng của mình tại đây (phổ biến nhất). Sau đó, làm điều này để thực hiện tương tự như lệnh bạn đang sử dụng:
Mở Chỉnh sửa kết nối :
Chỉnh sửa cấu hình kết nối bạn đang sử dụng.
Trên tab Cài đặt IPv4 :
Phương pháp: Chỉ địa chỉ tự động (DHCP)
Cài đặt này làm cho nó thực hiện một yêu cầu DHCP thông thường cho cấu hình địa chỉ IP của máy chủ của bạn, nhưng nó sẽ bỏ qua các tùy chọn không bắt buộc khác như các máy chủ DNS được đề xuất.
- Máy chủ DNS:
8.8.8.8
- Nhấn Lưu
Làm xong.
Ghi chú quan trọng
Trong mạng cục bộ hoặc doanh nghiệp, máy chủ DNS cục bộ có thể được sử dụng cho máy chủ cục bộ. Bạn sẽ mất chức năng này bằng cách trực tiếp yêu cầu máy chủ của Google giải quyết tên cho bạn. Vì vậy, nếu ví dụ máy chủ DNS cục bộ sẽ biết "máy in" là gì, thì bạn sẽ mất sử dụng máy in của mình bằng tên đó.
Vì vậy, xin vui lòng, sửa chữa máy chủ DNS cục bộ của bạn thay vào đó. Nếu đó chỉ là một công cụ chuyển tiếp đơn giản đến máy chủ DNS bị hỏng của ISP của bạn và bạn không thể thay đổi điều đó (ví dụ: bộ định tuyến tất cả trong một được quản lý bởi ISP), thì 8.8.8.8
giải pháp này có thể là lựa chọn duy nhất của bạn.