web-dev-qa-db-ja.com

インターネットブラウジングを高速化するためにhostsファイルを微調整するのは良い考えですか?

昨日、 Speed DNS というFirefoxの拡張機能に出くわしました。これは、事前にDNSルックアップを実行することでブラウジングを高速化すると主張しています。著者によると、「Webページ上のすべてのリンクのDNS事前解決を行います」とレビューは、これがうまく機能していることを示しているようです。

そのため、次のようなcronジョブで構成される単純なDNSオプティマイザーを構築することが可能かどうか(または良いアイデアかどうか)疑問に思いました。

  1. 閲覧履歴(私の場合はFirefoxの )から、最も訪問されたエントリの上位[〜#〜] x [〜#〜]を抽出します。 Places.sqlite 、使用 sqliteのコマンドラインユーティリティ
  2. それぞれにpingを実行してIPアドレスを取得し、
  3. この情報を使用して、/etc/hostsファイルを更新します。

これにより、Webブラウジングが高速化され、インターネット接続は正常であるがDNSサーバーが一時的に機能しない場合(たとえば、IMは機能するがブラウザーが機能しない場合)、堅牢性が向上すると思います。大学のラボコンピューターで時々発生します。例えば)。

これは良い考えですか?それはうまくいくでしょうか? [〜#〜] x [〜#〜]の適切な値は何でしょうか? (または、言い換えると、hostsファイルが大きくなりすぎてうまく機能しなくなりますか?)さらに重要なことは、このようなことは以前に行われたことがありますか?もしそうなら、どこで見つけることができますか?

3
waldyrious

簡単な答え-それは本当に価値がないので、私は気にしません。 DNSサーバーによっては、ルックアップは比較的高速に実行されます。特に、ISP専用のサーバーを使用している場合は(待ち時間に関して)。したがって、これを行う努力は最小限の利益に値するものではありません-割り当てられたDNSサービスまたはサードパーティのDNSサービスによる速度低下が実際に発生している場合に限ります。

これを参照してください(Windowsの場合):

ipconfig/displaydns

これにより、DNS解決のキャッシュされたエントリが公開され、それぞれに独自の [〜#〜] ttl [〜#〜] があります。

ただし、hostsファイルを編集すると、静的な解像度が追加されます。私個人的には、そこにいくつかのマッピングを追加するだけで(私は確信しています)、それだけです。手動で実行すると、常に古いエントリを取得するリスクがあります。ただし、常に解決することを提案しています-ホストをクロールします。(nslookupまたはDigはpingよりもおそらく良い考えです) 。私には、冗長に思えます。つまり、スクリプトがX分ごとにポーリングするということです。結局のところ、小さな成果のように思えます。また、[〜#〜] ns [〜#〜]サーバーの責任者に質問するかどうかを決定する必要があります。そのドメインに対して直接またはDNSチェーンを介して(権限がない)。

より簡単な解決策は、より高速なDNSサービスを取得することかもしれません。サイトの名前は思い出せませんが、お住まいの地域のDNSサーバーの遅延評価を行ったものがありました。覚えている限りでは、かなり正確でした。誰かがおそらくあなたをそこに向けるでしょう。

ただし、ラボで接続の問題に直面している場合は、別の話です。では、単に代替DNSサーバーに切り替えることはできますか? (/ etc/hostsにアクセスできる場合は、トラフィックがDNS要求用に何らかの方法でフィルタリングされていない限り、可能であると思います)。


編集:わかったと思う NameBench

5
XXL

いいえ。これは無意味な重複です。

1980年代初頭にDNSによってアイデアが置き換えられたにもかかわらず、人々はhostsファイルに夢中になっています。同じ人々がDOSファミリーやDOS-Windowsのような機能の乏しいオペレーティングシステムを実行しているわけでもありません。今日では、hostsに夢中になっているWindowsユーザーでさえ、オペレーティングシステムの標準部分としてキャッシュDNSクライアントが付属しているWindowsNTを実行しています。キャッシュDNSクライアントが有効になっている場合(デフォルトの場合)、アプリケーションによるすべてのDNSルックアップはローカルにキャッシュされます。

Windows NT(のワークステーションエディション)以外のオペレーティングシステムには、キャッシュが付属しています DNSプロキシサーバーdjbdns 、BIND、MaraDNSなど(UnicesやLinuxなど)は、情報をローカルにキャッシュするだけでなく、 DNSクエリ解決 の全体をローカルでも完全に実行できます。 DNSプロキシサーバーを解決プロキシサーバーとして実行し、DNSクライアントライブラリをそのサーバーに向ければ、他の人のプロキシサーバーの可能性について心配する必要はまったくありません

いずれの場合も、WWWブラウザがDNSルックアップを試行するたびに、特定のDNS情報をキャッシュしてすぐに取得できるようにしておきたい場合は、通常の方法で事前にルックアップするだけです。 (システム提供のDNSクライアントライブラリルーチンを使用するプログラムを使用します。 深刻な欠陥nslookupのようなプログラムには、独自の個別のDNSクライアントライブラリがあり、その役割を果たしません。)いくつかの組織は意図的に非常に短いTTL値をDNSデータに使用していることに注意してください。彼らはあなたが物事を調べたい 30秒ごと(または何でも)に新たに。

3
JdeBP

場合によります。ホストファイルは実際には高速 DNSよりも優れています。しかし、名前を完全に削除し、IPアドレスだけを使用することで、さらに時間を節約してみませんか?結局、時間を節約するために必要な労力は、節約された時間を上回ります。 DNSは、動的でシンプルなために使用されます。

0
Keltari

Keltari ipは高速で簡単であることに同意しますが、内部システムのみであり、明らかにWebではありません...

Win7にはDNSに関する既知の問題があるので、うん...今日でも正しく機能していません....問題がある場合は、HOSTSファイルを使用することをお勧めします。

0
admin934834