Linux のホスト ファイル スイッチャー

Linux のホスト ファイル スイッチャー

OSXでhostsファイルを管理するためのユーティリティはたくさんあるようです。私は1つも見つけることができませんでした。http://www.macupdate.com/app/mac/29949/ガスマスクLinux の場合。テスト目的で 1 日に数回マッピングを切り替えるため、hosts ファイルを常に vim で開いたままにしています。

私が欲しいのは、パネルやウィジェットなどに配置できる GUI か何かで、ホスト プロファイルのセットを用意して事前に構成し、クリックするだけで設定を変更できるようなものです。そのようなユーティリティは存在するのでしょうか? 私は Ubuntu 10.04 を使用しています。

答え1

ホストスイッチャー

ホスト構成を管理および切り替えるための小さなツール。Linux、Windows、Mac OS X でテスト済みです。(Qt 4.7 の要件により、ubuntu < 10.10 では動作しません)

ホストプロファイル

Host Profiles は、クロスプラットフォームのホスト ファイル管理ツールです。ホスト プロファイルをすばやく切り替え、DNS を自動的にフラッシュします。現在、このプログラムを起動できるのは root ユーザーのみです。

Dirk Krause のツール - hostsadm

hostsadm プログラムは、MySQL データベースを読み取り、いくつかの構成、ドキュメント ファイル、およびライセンス レポートを作成します。Linux/Unix システム上のホスト関連情報は、いくつかの構成ファイル (/etc/hosts、/etc/ethers、/etc/netgroup、または対応する LDAP OU) で管理されます。ホストを追加または変更するには、複数の場所で一貫した変更が必要です。ホストに関するすべての情報を 1 か所にまとめると、メンテナンスが容易になり、一貫性が確保されます。

ネットワーク ドキュメントは構成ファイルと同じデータベースから生成されるため、構成と一致します。ライセンス レポートは同じデータベースから生成されるため、ホスト名はネットワーク ドキュメントと一致します。

Firefox: スイッチホスト

SwitchHosts を使用すると、複数のホスト ファイルをすばやく簡単に管理および切り替えることができます。もちろん、DNS の更新はすぐに実行されます。ホスト ファイルは監査され、セキュリティは安全です。

あなたが求めていたものではありませんが、知っておく価値はあります:

GNU ネームサービススイッチ

C ライブラリのさまざまな関数は、ローカル環境で正しく動作するように設定する必要があります。従来、これはファイル (例: /etc/passwd) を使用して行われていましたが、他のネームサービス (ネットワーク情報サービス (NIS) やドメイン ネーム サービス (DNS) など) が普及し、通常は固定の検索順序で C ライブラリに組み込まれました (frobnicate を参照)。

GNU C ライブラリには、この問題に対するより明確な解決策が含まれています。これは、Sun Microsystems が Solaris 2 の C ライブラリで使用した方法に基づいて設計されています。GNU C ライブラリは、その名前に倣って、この方式を Name Service Switch (NSS) と呼んでいます。

インターフェースは Sun のバージョンに似ているかもしれませんが、共通のコードはありません。私たちは Sun の実装のソース コードを見たことがないので、内部インターフェースには互換性がありません。これは、後で説明するように、使用するファイル名にも現れています。

Firefox の FoxyProxy プラグインを使用して「hosts」ファイルの編集を回避する

FoxyProxy は、Firefox とインターネット間のプロキシ サーバーとして機能します。基本的にトラフィックを 1 つのポイントに誘導できる「プロキシ」を設定します (私はトラフィックを「localhost」に誘導するものを使用しています)。その後、プロキシに関連付けられるパターンを必要なだけ追加できます。すべての設定が完了したら、ブラウザーの下部を 1 回右クリックするだけで、このプロキシをオンまたはオフにできます。私にとっては、設定は非常に簡単で、うまく機能します。

さて、ここで注意点が 1 つあります。Web サイトをさまざまなブラウザーでテストする必要がある場合があります。この場合、このブラウザー アドオンでは不十分です。しかし、日常の Web 開発のほとんどのニーズには最適です。

ドメイン名

Dnsmasq は、軽量で簡単に構成できる DNS フォワーダーおよび DHCP サーバーです。小規模ネットワークに DNS と、オプションで DHCP を提供するように設計されています。グローバル DNS にないローカル マシンの名前を提供できます。DHCP サーバーは DNS サーバーと統合されており、DHCP によって割り当てられたアドレスを持つマシンが、各ホストまたは中央構成ファイルで構成された名前で DNS に表示されるようになります。Dnsmasq は、静的および動的 DHCP リースと、ディスクレス マシンのネットワーク ブート用の BOOTP/TFTP/PXE をサポートしています。

Dnsmasq は、NAT を使用してモデム、ケーブル モデム、または ADSL 接続を介してインターネットに接続されたホーム ネットワークを対象としていますが、リソースの使用量が少なく、構成が簡単であることが重要な小規模ネットワーク (最大 1000 のクライアントが動作することが確認されています) に適しています。

サポートされているプラ​​ットフォームには、Linux (glibc および uclibc 付き)、Android、*BSD、Solaris、Mac OS X などがあります。Dnsmasq は、少なくとも次の Linux ディストリビューションに含まれています: Gentoo、Debian、Slackware、Suse、Fedora、Smoothwall、IP-Cop、loppyfw、Firebox、LEAF、Freesco、fli4l、CoyoteLinux、Endian Firewall、Clarkconnect。FreeBSD、OpenBSD、NetBSD ポートとしても利用可能で、Linksys ワイヤレス ルーター (dd-wrt、openwrt、標準ファームウェア) および m0n0wall プロジェクトで使用されています。

Dnsmasq は次の機能を提供します。

  • ファイアウォールの背後にあるマシンのDNS構成はシンプルで、ISPのDNSサーバーの詳細に依存しません。
  • インターネットへのモデム リンクがダウンしている間に DNS ルックアップを実行しようとするクライアントは、すぐにタイムアウトになります。
  • Dnsmasq は、ファイアウォール マシン上の /etc/hosts ファイルから名前を提供します。ローカル マシンの名前がそこに存在する場合、各マシンで /etc/hosts を維持しなくても、すべてのマシンにアドレス指定できます。
  • 統合された DHCP サーバーは、静的および動的 DHCP リースと、複数のネットワークおよび IP 範囲をサポートします。BOOTP リレー全体で動作し、RFC3397 DNS 検索リストを含む DHCP オプションをサポートします。DHCP によって構成されたマシンの名前は DNS に自動的に含まれ、名前は各マシンで指定することも、dnsmasq 構成ファイルで名前を MAC アドレスに関連付けることで集中的に指定することもできます。
  • Dnsmasq は、インターネット アドレス (A レコードと AAAA レコード) とアドレスと名前のマッピング (PTR レコード) をキャッシュし、上流サーバーの負荷を軽減し、パフォーマンス (特にモデム接続) を向上させます。
  • Dnsmasq は、ppp または dhcp 構成から上流のネームサーバーのアドレスを自動的に取得するように構成できます。この情報は変更されると自動的に再ロードされます。この機能により、DNS 構成を自動化できるため、Linux ファイアウォール ディストリビューションのメンテナーにとって特に興味深いものになります。
  • IPv6 対応ボックスでは、dnsmasq は IPv6 経由でアップストリーム サーバーと通信し、IPv6 経由で DNS サービスを提供できます。デュアル スタック (IPv4 と IPv6) ボックスでは、両方のプロトコルと通信し、IPv6 から IPv4 または IPv4 から IPv6 へのフォワーダーとして機能することもできます。
  • Dnsmasq は、特定のドメインのクエリを、そのドメインのみを処理するアップストリーム サーバーに送信するように構成できます。これにより、プライベート DNS システムとの統合が容易になります。
  • Dnsmasq は MX レコードと SRV レコードをサポートしており、一部またはすべてのローカル マシンの MX レコードを返すように構成できます。

このスレッドでは、WICD の事前/事後スクリプトを使用することを提案しています。これにより、WICD GUI で別のネットワークを選択すると、/etc/hosts ファイルが自動的に切り替わります。

Ubuntu フォーラム - 接続に基づいてホスト ファイルを切り替える

WICD ネットワーク マネージャーは、まさにあなたが望むことを実行する機能を持っています。Synaptic (またはソフトウェア センター) からインストールできます。デフォルトのネットワーク マネージャーと同じ機能を持つため、後者はアンインストールされることに注意してください。network-manager-gnome パッケージをインストールすることで、いつでも元に戻すことができます。

WICD を使用すると、さまざまな無線および有線ネットワークに対して、異なる接続前/接続後スクリプトを使用できます。

デフォルトのネットワーク マネージャーを維持したい場合は、スクリプトを /etc/network/if-* フォルダーに直接配置するオプションがあります... ただし、私は WICD を快適に使用しているため、それらのオプションについてはあまり経験がありません。;)

答え2

はい、試すことができますダクシアン-- また、ギットハブ

GUI は提供されていませんが、GUI プログラムよりも簡単に使用できます。コマンド 1 つで実行できるシェル スクリプトです。

例えば、

$ sudo ./dacuoxian.sh google-hosts

答え3

あなたが試すことができますホストスイッチャー、それはgithubにあります。

これは wxpython によって構築された GUI ツールであり、デフォルトのエディターとして gedit を使用しているため、多数のホスト ファイル間でホストを簡単に切り替えることができます。

スクリーンショット

関連情報