/etc/hosts を使用してドメイン名エイリアスを作成する

/etc/hosts を使用してドメイン名エイリアスを作成する

私の外部IPアドレスは頻繁に変更されるので、私のドメインはLANの外部IPを指す動的DNSを使用するように設定されています。しかし、私はこのホストを使用できるようにエイリアスを作成したいと思いますhome。だから、私のホストに以下を追加します/etc/hosts

example.com home

しかし、ドメイン名が気に入らないようです。 IPに変更した場合:

0.0.0.0 home

それではうまくいきますが、もちろんこれは動的DNSの目的を崩すことです!

可能ですか?

答え1

このファイルには/etc/hostsIPアドレスとホスト名のみが含まれています。この方法では、目的の方法で文字列「home」のエイリアスを指定することはできません。

独自のDNSサーバーを実行している場合は、CNAMEレコードを追加してhome.example.comエイリアスを作成できますが、domain.exampleそれ以外の場合は幸運ではありません。

最善の方法は、同じDNSクライアントを使用して完全修飾名を更新することです。

答え2

/etc/hosts前述のように、その目的は名前-IP照会のためのalias()機能を提供することではありません。CNAME適切なDNSサーバーを設定して構成するときは、CNAME常に正しいhomeIPを確認する方法は明らかですが、example.com単純なエイリアスよりも少し複雑です。

変更自体はスクリプトの1行で簡単に自動化できます。

sudo sed -i "s/.* home/$(dig +short domain.com|tail -1) home/" /etc/hosts

IP変更を検出する方法がすでにある場合は、それをプロセスに簡単に追加できます。それ以外の場合は、x単純なcron操作を使用して、1サイクルに1回だけ適用範囲をスケジュールする無差別アプローチを設定できます。

引用:

答え3

説明する状況を処理する最も簡単な方法は、DNS検索ドメインをdomain.com

home.domain.comまた、を指すDNSレコードを作成しますdomain.com

ホームルーターでは、DHCP検索ドメインを設定できる必要があります。ほとんどのモバイルデバイスでもこれを許可します。

これにより、次のことができます。

ping home

pingする必要がありますhome.domain.com

検索ドメインを設定する正確な方法は端末によって異なりますが、ほとんどすべての端末で検索ドメインを設定できます。

これにより、自分自身を次に制限する必要はありませんhome。 pingを送信したりprinter、完全修飾ドメイン名を考えたくないかもphoneしれません...fridge

答え4

DYNDNSなどを登録する必要があるようです。

本当に/etc/hostsを使用するには、IPを監視する必要があります。変更が発生した場合:

  • /etc/hostsのエントリの変更
  • ホストキャッシュの再ロード
  • 継続的なモニタリング

修正する これを使用している場合は、dhcpcdスクリプトの「-c」オプションを使用して/etc/hosts-entryを変更してから、ホストキャッシュを再ロードできます。

これは dhcp クライアントの機能によって異なります。

関連情報