質問: ルーターはどのようにしてパケットを送信するデバイスを知っていますか? 私の質問は、インターネットを介してどのように移動するかではなく、ルーターを介して特定のデバイスにどのように移動するかについてです。ホームネットワークのルーターに接続されているすべてのデバイスは、同じ外部ipを持っています。たとえば、デバイスaがページを読み込んでいて、パケットがデバイスaの外部ipを認識しており、ルーターに到達できるため、パケットが外部ソースからルーターに送信されるとします。しかし今、どのようにしてデバイスaに到達するのでしょうか。ルーターは、デバイスbではなくデバイスaにそれを送信することをどのようにして知っていますか?これにはnatが関係していると思いますが、natがこれを実現するために行うことの論理的な説明を探しています。
回答: 外部サイトへの接続を開始すると、ルーターは毎回異なる送信元ポート番号を使用します...次に、その送信元ポート番号(データが返される場所)をキーとして使用して、どのマシン上にあるかを調べますリクエスト元の内部ネットワークこれはportアドレス変換と呼ばれます(ルーターで複数のネットワークアドレスを使用できる場合のネットワークアドレス変換とは異なります)。