~/.ssh/configで定義されたホスト名をpingできるのはなぜですか?

~/.ssh/configで定義されたホスト名をpingできるのはなぜですか?

これは私が解決したい問題ではありませんが、以前から気になっていた問題です。

~/.ssh/config に複数のホスト名が定義されていますが、他の場所では定義されていません。 /etc/hostsに何も定義していないことは注目に値します。

しかし、私はこれらの有名な名前をpingできることがわかりました。なぜこれですか? pingユーティリティは〜/.ssh/configを具体的に見ていますか?それとも、これはオペレーティングシステム全体に適用されますか? DNSに関連していますか?

編集する:

具体的には、 ~/.ssh/config にホストが定義されています。

Host my_laptop
        Hostname 192.168.1.3
        Port 22
        User myname

...同じローカルネットワーク上の他のコンピュータからこれを取得できping my_laptopます192.168.1.3ping

しかし、、ユーザー Kusalananda が言及nslookupdig(今まで慣れていない 2 つのコマンド)、nslookup my_laptop別のコンピュータで実行すると、次のことが返されます。

Server:     192.168.1.1
Address:    192.168.1.1#53

Name:   my_laptop.home
Address: 192.168.1.3

192.168.1.1は私のホームルータのアドレスであり、ポート53がDNSに関連付けられていることを知っています。ルーターの設定を調べたところ、問題のコンピューター(「my_laptop」)も、ローカルネットワーク上のルーターのコンピューターのリストに同じホスト名で名前が付けられていることがわかりました。

したがって、私のホームルーターもDNSサーバーであり、これらのどれも〜/.ssh/configのエントリとは関係ありません。ご覧のとおり可能言い換えれば、私は一般的なネットワーキング、特にDNSについてよく知りません。実際、この質問はここにはないかもしれませんが、Stack Exchangeの他のセクションには該当しません。

ベストアンサー1

したがって、この動作はssh設定ファイルとは関係ありません。私のネットワーク上のコンピュータは、私のホームルーターで実行されているローカルDNSサーバーからDNS情報を取得します。私はそれを実行してこれを確認しました。これは、コンピュータがnslookup (hostname)実際に問題のホスト名を解決するために私のローカルルーターを見ていることを示しました。 ~/.ssh/config のホスト名は、ローカル DNS サーバーが提供するホスト名と同じです。

おすすめ記事