Netstat本地地址列的含义


20

当我这样做时,netstat -ntlp有一列称为Local Address

  • 有时它将输出IP地址为 0.0.0.0:7180
  • 有时 127.0.0.1:9001

这两种符号的含义是什么?

特定的IP地址是否充当传入连接的筛选器?例如,127.0.0.1:9001它将仅接受来自本地主机的9001端口连接?

Answers:


13

我认为您已经回答了自己的问题。

例如,apache有一个Listen选项告诉它要监听哪个地址和端口。根据设置的方式,apache它将侦听任何IP地址,特定地址:-

Listen *:80
Listen 0.0.0.0:80
Listen 127.0.0.1:80
Listen 192.168.0.5:80

以上选项显示为:-

:::80
0.0.0.0:80
127.0.0.1:80
192.168.0.5:80

并翻译为:-

  • 侦听任何IP地址(IPv4或IPv6)
  • 侦听该服务器上的任何IPv4地址
  • 仅在IPv4本地主机上监听
  • 侦听外部IPv4地址192.68.0.5

localhost如果您不希望外部任何人访问该服务,则可以将其配置为仅在该接口上进行侦听。例如,如果您正在运行LAMP服务器,则可以apache侦听所有IP地址(以便您的用户可以访问它),而mysql可以将数据库配置为只能从其访问localhost(使用它的bind=127.0.0.1指令)。这样php,在同一服务器上运行的方法将能够访问数据库,而外部(和不受信任)用户将无法访问该数据库。


:::80并不总是也暗示IPv4 unix.stackexchange.com/a/496150/333382
rfc2460

11

127.0.0.1和0.0.0.0

127.0.0.1表示本地接口或环回地址。仅可从您的本地主机访问。

0.0.0.0 是每个接口的通配符地址。

netstat -ntlp Local Address表示“打印积极倾听的TCP连接,IP地址显示为数值,并显示其PID和使用此连接程序的名称。”


实例差异

例如,如果我有

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name                 
tcp        0      0 127.0.1.1:53            0.0.0.0:*               LISTEN      1189/prog1
tcp        0      0 0.0.0.0:6666            0.0.0.0:*               LISTEN      1188/prog2

这意味着:

prog1带PID 的服务使用协议1189侦听端口。它只能从您的本地主机访问。53tcp

prog2带PID 的服务使用协议1189侦听端口。允许从该计算机所属的所有网络上的任何其他计算机访问此端口。6666tcp

资料来源:1 2 3


3

0.0.0.0 表示该进程已绑定到所有接口。

127.0.0.1表示该进程仅绑定到127.0.0.1接口(环回)。

如果您有其他接口,则可能会有x.y.z.a条目指示该进程已绑定到这些特定接口。

仅当流量到达绑定的接口时,才会通知该进程,因此,是的,它是一种过滤器,尽管通常不会以这些术语来描述。


2

“本地地址”是所讨论的套接字绑定到的地址。这是它接收连接的地址。您询问的地址是“特殊地址”。根据Linux IPv4协议的手册页

有几个特殊的地址:INADDR_LOOPBACK127.0.0.1)总是指通过回环设备的本地主机; INADDR_ANY0.0.0.0)指任何具有约束力的地址;INADDR_BROADCAST255.255.255.255)表示任何主机,并且由于INADDR_ANY历史原因对绑定具有相同的作用 。

对于地址0.0.0.0来说,这意味着套接字可以在系统上的任何接口上接收任何地址的连接。


1

如您所知,本地主机的IP仅在本地接受与这些端口的连接,而IP 0.0.0.0则指对所有人开放的端口。

例如

本地

127.0.0.1:8307 VMWARE
127.0.0.1:25   MASTER

对所有人

0.0.0.0:80    HTTP
0.0.0.0:443   SKYPE
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.