デバイスのホスト名とフォルダパスとファイル名(デフォルトのPHPファイル)を使用して、ローカルネットワーク上のサーバーからWebページにアクセスしようとしています。最初のシステムでは、期待どおりに動作します。
ただし、同じローカルネットワークに接続されている2番目のシステムで同じ操作を試みると、ホスト名を使用してアクセスできなくなりますが、サーバーのIPアドレスを使用してページにアクセスできます。
2番目のシステムのDNSは、私のローカルネットワークのDNSであるルーターに設定されています。
ホスト名を使用してサーバーにアクセスするには、追加の構成が必要ですか?
ベストアンサー1
(家庭/小規模オフィス)ルータのDNS機能は、通常、ローカル側から到着するすべてのDNS要求をインターネットサービスプロバイダのDNSサーバーに転送し、すべての応答を要求するクライアントに再転送することに制限されます。
ルータが常にローカルネットワークに対して完全な機能を備えたDNSサーバとして機能できるという保証はありません。一部のルーターはこれを実行できますが、ほとんどは実行できません。
それにもかかわらず、DNSサービスはプラグアンドプレイ方式ではありません。通常、DNSサーバー管理者はDNSサーバー上の対応するDNSゾーンファイルを編集して、名前でアクセスできるホストのDNSレコードを追加する必要があります。現代追加動的DNSアップデートホストを許可登録する名前自体またはホストにDDNS対応のDHCPサーバーにホストの代わりにこれを実行するように指示できます。
(家庭/小規模オフィスルーターにはDHCPサーバーが組み込まれていることが多いため、これを単一の統合パッケージとして実行することもできます。)
ただし、安全でなく動的に更新できるDNSサービスは問題を引き起こす可能性があるため、これらの機能がデフォルトで有効になる可能性はほとんどありません。安全動的DNSアップデートには、どのホストがどのようなタスクを実行できるかを定義するいくつかの規則または認証の種類が必要です。したがって、この操作は自動的には実行できません。
明示的な構成を必要としないホスト名解決用に開発された他のサービスがあります。
mDNS(マルチキャストDNS)は、LinuxのオープンソースAvahiパッケージであるApple Bonjourで実装された比較的新しいソリューションで、Windows 10では非常に制限的な意味(ネットワークプリンタ検索のみ)です。
リンクローカルマルチキャスト名解決(LLMNR)は、明示的な構成を必要とせず、ローカルネットワーク上のシステムが名前で互いを見つけることを可能にする代替名前解決プロトコルです。 Windows Vista以降とLinuxでは
systemd-resolved
。
これらのサービスのすべてが利用できない場合、または名前を解決する必要があるシステムが互換性がない場合は、小規模ネットワークの従来の代替方法は解決するホストの名前とIPアドレスを追加することです/etc/hosts
。ローカルネットワーク上のすべてのホストでこれを行い、ホストファイルを同期したままにすることは本当に便利です。
(面白い事実:インターネットの初期、DNSが開発される前にhosts
インターネット全体を一元管理する1つのマスターファイルがありました。hosts
そのファイルを維持することが不可能になったという事実がDNS開発。)