launchdでブロックされたサイトを追加した後、/ etc / hostsがドメインをブロックしないのはなぜですか? [閉鎖]

launchdでブロックされたサイトを追加した後、/ etc / hostsがドメインをブロックしないのはなぜですか? [閉鎖]

月曜日から金曜日までの午前9時から午後3時の間に、osX 10.12.2のChromeで複数のウェブサイトをブロックするようにLaunchdを設定しようとしました。

launchd を cp /etc/hosts_BLOCKED_sites.txt /etc/hosts に設定しました。

Launchdがファイルを正しくコピーしているようです。

$ls -la /etc/hosts

-rw-------  1 root  wheel  619 Dec 29 09:00 /etc/hosts  

$ sudo 猫 /etc/hosts

##  
# Host Database  
#  
# localhost is used to configure the loopback interface  
# when the system is booting.  Do not change this entry.  
##   
127.0.0.1   localhost   
255.255.255.255 broadcasthost  
::1             localhost   


# Blocked sites redirected to 0.0.0.0  
127.0.0.1 reddit.com  
127.0.0.1 www.reddit.com  
127.0.0.1 facebook.com  
127.0.0.1 www.facebook.com   

# Block Facebook IPv6
fe80::1%lo0 facebook.com
fe80::1%lo0 reddit.com
::1 facebook.com
::1 www.facebook.com
::1 www.reddit.com  
::1 reddit.com  

ただし、アクセスをブロックするように/ etc / hostsを設定した後でも、Chromeでブロックされたウェブサイトを開くことができます。

/etc/hostsがサイトへのアクセスをブロックしない理由についての提案はありますか?

編集:Chromeがウェブサイトをブロックしようとしましたが失敗しました。
sudo Killall -HUP mDNSRレスポンダコマンドラインから
chrome://net-internals/#dnsを介してChrome DNSキャッシュをフラッシュしてみました。
Chromeソケットをフラッシュしてみました。 chrome://netinternals/#sockets

IPv6形式も追加しました。
違いはありません。ブロックされたすべてのウェブサイトはChrome v55.0.2883.95を介して引き続きアクセスできます。

ベストアンサー1

アプリケーションは必須相談に来てください/etc/hosts。必要な効果を得るには、をインストールして設定しますdnsmasqdnsmasq.conf以下のターゲット関連スニペットを参照してください。

# Add domains which you want to force to an IP address here.
# The example below send any host in double-click.net to a local
# web-server.
address=/local/0.0.0.0
address=/double-click.net/0.0.0.0
address=/google.com/0.0.0.0
address=/reddit.com/0.0.0.0  
address=/www.reddit.com/0.0.0.0
address=/facebook.com/0.0.0.0
address=/www.facebook.com/0.0.0.0

次に、/etc/resolv.conf次のように設定します。

nameserver 127.0.0.1

また、0.0.0.0notにリダイレクトしてください127.0.0.1。はるかに早く。バインドされていないソフトウェアでも同じ効果が得られます。両方とも、DNSとDHCPのためのより多くの制御を提供します。

おすすめ記事