Hostname.local を使用してホストに SSH 経由で接続することはできません。

Hostname.local を使用してホストに SSH 経由で接続することはできません。

SSHを使用して端末からRaspberry Piに接続しようとすると、接続は永久に中断されます。ssh [email protected]

私がpingするとき[Eメール保護]、私は得るping: cannot resolve [email protected]: Unknown host

IPアドレスを使用してpingとsshを実行できます。ssh [email protected]

ホスト名を介して接続するには、ラップトップネットワーク設定(macOS)を構成する必要があるのか​​、Raspberry Pi設定(Debian)を構成する必要があるのか​​わかりません。

答え1

ホストにホスト名を指定すると、そのホストだけがこれを知ることができます。ホスト名(およびそのIPアドレス)は他のホストからまったくわかりません。ネームサービス(たとえば、DNS、NISなど)は、この知識をネットワーク全体に「配布する」という点で若干異なります。しかし、私たちの目的に応じて、ホスト自体だけがホスト名を知っています。

つまり、あるシステム(「yourpc」と呼ばれる)から別のシステム(「pi」)に接続しようとしています。これを行うには、「yourpc」が「pi」という名前に対応するIPアドレスを知る必要があります。ネームサービスがない場合は、「yourpc」を知る方法があります。つまり、ホスト名とそのIPアドレスをファイルに入力します/etc/hosts。実際、これはこの文書の具体的な目的です。

一般的な/etc/hostsファイルは次のとおりです。

# Place comments after octothorpe signs, like in shell scripts
10.1.1.1       host1
10.1.1.2       host2
10.1.1.3       host3      # an inline comment is also possible
# you can also specify "aliases" - multiple names under which the host is also known
10.1.1.4       host4  myraspberrypi
...

後で考えてアドバイスをいただいた@Archemarに感謝します。

ユーザー名はIPレベルとは関係ありません。このレベルでは、ホスト(または対応するインターフェイス)、ネットワーク、および同様のエンティティのみを扱います。ユーザーまたはその名前は、このレベルでこの図を入力しません。

上記のホストファイルの例では、以下はすべて同じです。

ssh [email protected]
ssh someuser@host4
ssh someuser@myraspberrypi

関連情報