ホストファイルのドメイン名へのIP範囲マッピング

ホストファイルのドメイン名へのIP範囲マッピング

私はWi-Fiで働いています。これは、ネットワークに接続するたびにシステムIPが変更されるためです。私の仕事のためには、私のIPを特定のドメイン名にマップする必要があります。したがって、IPを更新するには、毎日ホストファイルを変更する必要があります。これは本当に迷惑なことであり、解決策があることを願っています。したがって、ホストファイルの対応するドメイン名にIP範囲を追加する必要があります。それを行う方法はありますか?

答え1

実際、DHCP 割り当て IP アドレスをホストファイルに入れる必要はありません。たとえば、ブラウザにそれを指し、http://your-domain-here/ローカルWebサーバーに応答させることができます。 (他のクライアント/サーバー設定と同じ)この場合、ドメインを次に始まるIPであるlocalhost IPにマッピングするだけです。127.127.0.0.1 を使用すると、リバースルックアップに奇妙な答えが出る可能性があるため、使用しないことをお勧めします。ホストファイルにない新しいホストを選択するだけです。

別のオプションは、固定RFC1918空間IPアドレス(192.168.xx、10.xxx、172.16–31.xx)を選択し、それをローカルインターフェイスに追加し、そのIPアドレスを使用することです。

現在のIPアドレスにマッピングする必要がある場合は、通常、DHCPを介してコンピュータがIPアドレスを取得したときに実行するどこかにシェルスクリプトを配置できます。 dhclientを使用すると、スクリプトを/etc/dhcp/dhclient-enter-hooks.d/dhclient-script(8) のマニュアルページ文書化されていますが、以下の(非常にテストされていない)操作が機能する可能性があります(moreutilsパッケージの「スポンジ」を使用)。

#!/bin/sh

MY_DOMAIN=your-domain.com

if [ "$reason" != "BOUND" ] && [ "$reason" != "REBIND" ]; then
    exit 0
fi

grep -v " $MY_DOMAIN\$" /etc/hosts | sponge /etc/hosts   # really should escape the dots in the domain, but probably doesn't matter.
printf '%s %s\n' "$new_ip_address" "$MY_DOMAIN" >> /etc/hosts

これは非常にテストされていません。/etc/hosts試す前に必ずバックアップしてください!

答え2

あなたは書く、

私はWi-Fiで働いています。これは、ネットワークに接続するたびにシステムIPが変更されるためです。

これら2つのステートメントを連結しないでください。お客様のIPアドレスは、固定値(「静的」アドレス)で手動で割り当てることも、ネットワーク上のDHCPサーバーによって動的に(「動的」アドレス)割り当てることもできます。システムがWiFiまたはケーブルで接続されているかどうかは問題ではありません。 IPアドレスを取得する2つのオプションがあります。

さらに興味深いのは、DHCPサーバーがネットワークに接続するたびに同じIPアドレス(時々非公式に「固定」アドレスとも呼ばれる)を提供するように構成できることです。これが私のホームネットワークの設定方法です。

異なるネットワーク間でローミングしている場合(通常は)固定IPアドレスを使用できないため、固定アドレスが最善のアプローチである可能性があります。

一方、ドメインのホストエントリがクライアントシステムを指すようにするだけで、動的DNSプロバイダを見つけることができます。 1つの例はですが、dyn.com考慮すべき他の多くのものがあります。 IPアドレスへの変更をキャプチャし、中央サーバーに通知する小さなソフトウェアをクライアントにインストールします。お客様のドメイン名のエントリが更新されます。パズルの最後の部分は、物理AドメインのレコードをCNAMEクライアントシステムを指すDDNSドメインエントリを指すレコードに置き換えることです。

答え3

スコープがサポートされていないため、ホストファイルの1行に各アドレスを追加してIPアドレスのリストを繰り返すスクリプトを作成するか、私の考えでは、仮想マシンでWebアプリケーションNATをホストすることをお勧めします。ホストアダプタが固定IPアドレスを持つようにします。

関連情報