~によるとhttps://networkengineering.stackexchange.com/a/57909/、192.168.1.97に送信されたパケットは、「ホストを離れずに、アドレスが192.168.1.97のネットワークで受信されたパケットとして処理されます。」ループバック 127.0.0.1 にパケットを送信するのと同じです。
nmap 127.0.0.1
より多くのサービス率が返されるのはなぜですかnmap 192.168.1.97
?
nmap 127.0.0.1
返されるサービスも必ず返されますかnmap 192.168.1.97
?リスニングサーバー192.168.1.97
もリスニングする必要がありますか127.0.0.1
?
$ nmap -p0-65535 192.168.1.97
Starting Nmap 7.60 ( https://nmap.org ) at 2019-03-23 19:18 EDT
Nmap scan report for ocean (192.168.1.97)
Host is up (0.00039s latency).
Not shown: 65532 closed ports
PORT STATE SERVICE
22/tcp open ssh
111/tcp open rpcbind
3306/tcp open mysql
33060/tcp open mysqlx
Nmap done: 1 IP address (1 host up) scanned in 9.55 seconds
$ nmap -p0-65535 localhost
Starting Nmap 7.60 ( https://nmap.org ) at 2019-03-23 19:18 EDT
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00033s latency).
Other addresses for localhost (not scanned):
Not shown: 65529 closed ports
PORT STATE SERVICE
22/tcp open ssh
111/tcp open rpcbind
631/tcp open ipp
3306/tcp open mysql
5432/tcp open postgresql
9050/tcp open tor-socks
33060/tcp open mysqlx
Nmap done: 1 IP address (1 host up) scanned in 5.39 seconds
ありがとうございます。
答え1
簡単に言うと、2つのインターフェイスは2つの異なるインターフェイス(192.168.1.97対127.0.0.1)であり、異なるファイアウォールルールおよび/またはサービスの受信が適用される場合があります。同じコンピュータにあることは比較的小さい意味です。
答え2
いいえ、外部インターフェイスのポートでリッスンするサービスが必ずしもそのポートでリッスンするわけではありませんlocalhost
。
これを次のようにテストできます。
nc -l external-ip-address port-number
次に、に対してnmap
実行し、localhost
外部IPアドレスに対して実行します。
答え3
nmap 127.0.0.1がnmap 192.168.1.97よりも多くのサービスを返すのはなぜですか?
セキュリティを強化するために、多くのサービスはデフォルトで127.0.0.1(および/またはIPv6に対応するもの::1)でのみ受信するように構成されています。
192.168.1.97を受信するサーバーは127.0.0.1でも受信しますか?
いいえ
通常、サービスはリスニングするリスニングソケットを作成できます。
- 特定のIP(リスニングソケットなど)は、その特定のIPに向かうトラフィックのみを許可します。
- 0.0.0.0 - このコンピュータに割り当てられているすべてのIPv4 IPからのトラフィックを許可します。
- ::このコンピュータに割り当てられているすべてのIPv6 IPからのトラフィックを許可します。特定のオペレーティングシステム、システム全体の設定、およびソケット固有のオプションによっては、システムのIPv4 IPに向かうトラフィックを許可したり、許可しないことがあります。
答え4
タイプ 127 のアドレスは内部使用目的にのみ使用されます。RFC1122:
内部ホストループバックアドレス。このアドレス形式はホストの外部には表示しないでください。
これは、そのサービスがローカルでリッスンしていることを意味します。これは192.168.1.97
、ルーターや他のコンピュータがあなたを知る方法であるパブリックアドレスです。 127.0.0.1/8 はある意味、ネットワークの「エミュレーション」です。テストに使用でき、ローカルサービスを実行し、サービス間でパケットを交換できます。基本的には実際のインターネットリソースと同じです。実はこれWeb開発者がすること:美しい製品が実際にインターネットに接続する本番環境に移動する前に、ローカル環境を設定し、XAMPまたはLAMPスタックをローカルで実行します。
これで、eth0やwlan0などのパブリックインターフェイスの127.xxxタイプのアドレスからパケットを受信できなくなりました。このようなことが起こったらこれを言います。火星パケット、誰かがあなたのホストやネットワークを攻撃しようとするかもしれません。
ある意味では、ルータとコンピュータと比較できます。 LANでは、ルーターのアドレスは192.168.1.0ですが、インターネットでは68.125.xx.yyです(免責事項:実際のIPアドレスではない任意の例です)。ルータはポート53(DNS)のみをインターネットに公開できますが、内部的にはポート80(HTTPコントロールパネル)と53を使用できます。パソコンでも同じ考えです。
もちろん、サービスはパブリックインターフェイスまたはローカルインターフェイスでのみ受信するように設定する必要があります。例えば、レディスサーバーセキュリティ上の理由から、127.0.0.1でのみリッスンするように事前設定されています。
また、見ることができます