DAILY DOCDAILY DOC
Rust
Node
Notes
Ubuntu
Leetcode
  • it-tools
  • excalidraw
  • linux-command
Rust
Node
Notes
Ubuntu
Leetcode
  • it-tools
  • excalidraw
  • linux-command
  • linux
  • bash alias
  • chmod
  • linux useful command
  • date
  • extract translation from git diff
  • fail2ban
  • globbing
  • localhost
  • mail
  • memo 内存测试
  • nohup(no hang up)
  • setup env
  • ssh

    • ssh 教程
    • github clone
    • ssh.localhost.run 端口转发
    • ssh 安全
  • systemd service
  • 分析ubuntu系统登录日志文件
  • vpn

    • vpn 教程
    • Algo
    • clashX
    • firezone
    • lantern
    • pac 代理配置
    • Setup vpn
    • shadowsocks
    • VPN
    • VPN 速度优化
    • wireguard cron
    • 修改wireguard端口
  • webhook

localhost

localhost 127.0.0.1 0.0.0.0

127.0.0.1、0.0.0.0 和 localhost 是在计算机网络中用于本地主机(即你的计算机)的不同标识符,它们有不同的作用和用途:

  1. 127.0.0.1: 这是 IPv4 地址中的一个特殊地址,称为 "回环地址" 或 "本地主机"。它总是指向你自己的计算机,用于本地主机上的网络通信。当你将应用程序绑定到 127.0.0.1 地址时,该应用程序只能通过本地计算机上的网络接口进行访问。这通常用于开发和测试目的,以便在同一台计算机上运行的不同应用程序之间进行通信,而无需通过网络传输数据。

  2. 0.0.0.0: 这是一个特殊的 IP 地址,通常表示 "任意地址" 或 "所有地址"。当一个应用程序绑定到 0.0.0.0 地址时,它将监听所有可用的网络接口和 IP 地址。这意味着其他计算机上的设备可以通过网络访问该应用程序,前提是网络配置和防火墙允许。这通常用于将服务公开到本地网络或互联网上。

  3. localhost: localhost 是一个主机名(hostname),通常映射到 127.0.0.1。当你在应用程序中使用 localhost 作为主机名时,它实际上指向本地主机(即你的计算机)的回环地址 127.0.0.1。这是一种常见的方式,用于在应用程序中访问本地主机上运行的服务。

总结一下:

  • 127.0.0.1 是回环地址,用于本地主机上的通信。
  • 0.0.0.0 表示绑定到所有可用的网络接口和 IP 地址。
  • localhost 是一个主机名,通常映射到 127.0.0.1,用于本地主机上的通信。

在开发和配置网络服务时,你需要根据具体的需求选择正确的地址或主机名。如果你希望服务仅在本地主机上访问,通常使用 127.0.0.1 或 localhost。如果你希望将服务公开到网络上,可以使用 0.0.0.0 或具体的网络接口的 IP 地址。

常见问题

localhost访问不到,127可以访问

现在本地有一个 http 服务,通过127.0.0.1 可以访问到,但是通过localhost 访问 报错 connection refused

如果你可以通过 127.0.0.1 访问本地的 HTTP 服务,但无法通过 localhost 访问,通常这是由于网络配置或主机名解析的问题导致的。以下是一些可能的原因和解决方法:

  1. Hosts 文件检查: 首先,检查你的系统的 hosts 文件,确保 localhost 已正确映射到 127.0.0.1。在大多数操作系统上,这个文件位于 /etc/hosts(Linux 和 macOS)或 C:\Windows\System32\drivers\etc\hosts(Windows)。

    打开 hosts 文件,检查是否有以下行:

    127.0.0.1 localhost
    

    如果这行不存在,可以手动添加它。

  2. IPv6 Loopback 地址问题: 在某些情况下,系统可能会使用 IPv6 的 loopback 地址 ::1 作为 localhost,而不是 127.0.0.1。你可以尝试通过 http://[::1] 访问 localhost,看看是否能够正常连接。

  3. 服务绑定问题: 确保你的 HTTP 服务将监听地址设置为 0.0.0.0,以便可以通过所有网络接口访问。有些应用程序可能默认只监听 127.0.0.1,这样就无法通过 localhost 或其他网络接口访问。

  4. 防火墙问题: 检查系统防火墙配置,确保允许流量通过 localhost。通常情况下,localhost 上的连接不受防火墙影响,但仍然值得检查。

  5. 网络问题: 如果上述方法都不起作用,还可能涉及网络问题。有时网络驱动程序或虚拟网络适配器可能会引发此类问题。你可以尝试重启计算机,然后再次尝试。

如果你仍然无法解决问题,请提供更多关于你的操作系统和应用程序的详细信息,以便提供更具体的帮助。

Last Updated:
Contributors: rosendo
Prev
globbing
Next
mail