Sửa đổi / etc / hosts không có hiệu lực


17

Tôi đang cố gắng chặn bản thân khỏi các trang web lãng phí thời gian nhưng thay đổi tôi thực hiện thành / etc / hosts. Ví dụ:

127.0.0.1   localhost
127.0.1.1   ross-laptop

127.0.0.1   bing.com

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Tôi có thể truy cập bing.com trong Chrome hoặc Firefox mới mở - tại sao điều này không hoạt động?

Câu trả lời:


17

Bạn sẽ tìm thấy các trình duyệt và hệ thống sẽ lưu trữ mọi thứ cho bạn. Để có được điều này để áp dụng ngay lập tức, bạn nên đảm bảo xóa bộ nhớ cache và khởi động lại trình duyệt của bạn. Để kiểm tra điều này, hãy thử thực hiện kiểm tra dns từ thiết bị đầu cuối như

ping bing.com

Bạn sẽ nhận được nó trả lời lại từ 127.0.0.1. Nếu điều này hoạt động thì thay đổi tập tin máy chủ của bạn là tốt, nhưng nó chỉ được lưu trong bộ nhớ cache trong trình duyệt của bạn.


Nhưng bộ đệm có thực sự tồn tại khi khởi động lại trình duyệt? Tôi cũng gặp phải điều này. Sẽ thật tuyệt nếu có cách để vô hiệu hóa bộ đệm.
loevborg

1
Chà, tôi không chắc chắn 100% nếu bộ nhớ cache dns tồn tại khi tải lại trình duyệt. Tôi biết các tập tin bộ nhớ cache nào. Vấn đề là với các mô hình phát triển web ajax / multi request ngày nay, bạn không muốn thực hiện một cú đánh dns trên mỗi yêu cầu trong khi tải một trang. Mỗi trình duyệt sẽ thực hiện các thủ thuật riêng để giúp tăng tốc và vì vậy bạn phải kiểm tra các cơ chế bộ nhớ đệm dns của họ trên cơ sở mỗi phiên bản trình duyệt / trình duyệt.
Rick

Tôi sẽ ngạc nhiên nếu bộ đệm DNS không tồn tại thông qua khởi động lại trình duyệt, ít nhất là trong hầu hết các trình duyệt (có thể là tất cả các trình duyệt chính).
David Z

7

Bạn đã thử đặt các 127.0.0.1mục trên cùng một dòng?

120.0.0.1 abc bing.com foo

Cần làm việc.


3
Điều này đã làm việc, mặc dù tôi nghĩ rằng nó phải làm với các trình duyệt lưu vào bộ nhớ cache và không xóa bộ nhớ cache đúng cách.
Ross

0

Mở Terminal ( ALT+ F2).

Nhập sudo -ivào trường đầu vào. Kiểm tra tùy chọn Run in terminal . Cuối cùng bấm nút Run .

Nhập mật khẩu của bạn nếu cần thiết và nhấn enter. Sau đó nhập các lệnh sau.

gedit /etc/hosts

Bạn sẽ nhận được cửa sổ Gedit Text Editor.

Ví dụ: nếu chúng ta cần chặn Facebook, hãy thêm các dòng sau ngay sau đó 127.0.0.1 localhost.

0.0.0.1 facebook.com    
0.0.0.1 www.facebook.com

Bằng cách này, nó sẽ chặn trang web trong tất cả các trình duyệt bao gồm Google Chrome, Chromium, Mozilla.

Đó là nó. Khi bạn mở www.facebook.com hoặc facebook.com , bạn không thể truy cập nó. Để bật lại Facebook, hãy xóa các dòng chúng tôi đã thêm khỏi tệp /etc/hosts.

Nguồn - Blog của Subin


-1

Bên cạnh giải pháp của CragM, hãy nhớ rằng bạn có thể sử dụng tất cả địa chỉ 127.xxx cho mục đích này, không lặp lại cùng một địa chỉ.

127.0.0.1   localhost
127.0.0.2   ross-laptop
127.0.0.3   bing.com
127.0.0.4   foo.com
127.0.0.5   bar.com
......

1
Bạn có thể giải thích tại sao cùng một địa chỉ không được lặp lại?
8128

@fluteflute, tôi không chắc nhưng tôi đã từng làm điều này và nó luôn làm việc cho tôi.
Grokus

-1

Sửa đổi / etc / hosts trông giống như một vụ hack toàn cầu. Thay vào đó, tôi khuyên bạn nên thiết lập proxy http cục bộ (mực, privateoxy, v.v.) và chỉ cho trình duyệt của bạn sử dụng nó. Bằng cách này, bạn sẽ có được cách quản lý danh sách đen linh hoạt hơn ở cấp proxy.


2
Nghe có vẻ như đó sẽ là rất nhiều nỗ lực so với việc thêm một vài dòng vào /etc/hosts? Bạn có thể giải thích tại sao đây là một giải pháp tốt hơn?
8128

"Nghe có vẻ" bởi vì bạn đang đưa ra các giả định mà không cần thử. Phát hành apt-get install, chỉnh sửa tệp cấu hình và / hoặc danh sách đen và trỏ trình duyệt tới proxy cục bộ không phức tạp hơn. Sẽ tốt hơn vì bạn không thực hiện bất kỳ thay đổi toàn cầu nào đối với hệ thống của mình, bạn chỉ thiết lập một cách khác để có một số trang web bị chặn. Nếu bạn cần hoàn tác, bạn sẽ không phải chỉnh sửa / etc / hosts nữa, bạn sẽ chỉ cần đặt trình duyệt truy cập trực tiếp vào các trang web, không thông qua proxy.
vh1
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.