AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 508229
Accepted
Tim
Tim
Asked: 2019-03-24 14:52:48 +0800 CST2019-03-24 14:52:48 +0800 CST 2019-03-24 14:52:48 +0800 CST

为什么`nmap 192.168.1.97`返回的服务比`nmap 127.0.0.1`少?[复制]

  • 772
这个问题在这里已经有了答案:
`nmap local-IP-address` 和 `nmap localhost` 之间的区别 3 个答案
3年前关闭。

根据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

谢谢。

ip-address nmap
  • 4 4 个回答
  • 1604 Views

4 个回答

  • Voted
  1. Best Answer
    John
    2019-03-24T16:16:51+08:002019-03-24T16:16:51+08:00

    简而言之,它们是两个不同的接口(192.168.1.97 与 127.0.0.1),并且可能应用了不同的防火墙规则和/或服务侦听。在同一台机器上意味着相对较少。

    • 8
  2. Kusalananda
    2019-03-24T15:35:19+08:002019-03-24T15:35:19+08:00

    不,侦听外部接口上的端口的服务不一定也侦听localhost.

    你可以用类似的东西来测试它

    nc -l external-ip-address port-number
    

    然后nmap针对localhost,然后针对外部 IP 地址运行。

    • 7
  3. plugwash
    2019-03-24T17:03:58+08:002019-03-24T17:03:58+08:00

    为什么 nmap 127.0.0.1 返回的服务比 nmap 192.168.1.97 多?

    因为为了提高安全性,许多服务默认配置为仅侦听 127.0.0.1(和/或 IPv6 等效 ::1)

    监听 192.168.1.97 的服务器是否一定也监听 127.0.0.1?

    不

    通常,服务可以创建一个侦听套接字来侦听。

    1. 特定 IP,例如侦听套接字将只接受发往该特定 IP 的流量。
    2. 0.0.0.0 ,这将接受分配给机器的所有 IPv4 IP 的流量。
    3. :: 这将接受分配给机器的所有 IPv6 IP 的流量。它可能会或可能不会接受发往机器上 IPv4 IP 的流量,具体取决于特定的操作系统、系统范围的配置和特定于套接字的选项。
    • 6
  4. Sergiy Kolodyazhnyy
    2019-03-24T20:52:34+08:002019-03-24T20:52:34+08:00

    根据RFC1122,127类型的地址仅供内部使用:

    内部主机环回地址。这种形式的地址不得出现在主机之外。

    这意味着这些服务正在本地侦听。这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。与您的计算机相同的想法。

    当然,必须将服务配置为仅侦听公共或本地接口。例如,出于安全原因, Redis 服务器预配置为仅侦听 127.0.0.1。

    也可以看看

    • 0.0.0.0 和环回 IP 地址有什么区别?
    • 维基百科关于 localhost 的文章
    • 2

相关问题

  • 在 Bash 中查找 IP 并写入文件

  • nmap 绕过 iptables 规则 | 红帽 5.6 [关闭]

  • 用空格替换随机 IP 地址端口中的数字

  • 使用 awk 仅打印 IP 和 OPEN 端口字段

  • 一种在主机上查找开放端口的方法

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve