Cuando lo hago, netstat -ntlp
hay una columna llamada Local Address
:
- a veces daría salida a la dirección IP como
0.0.0.0:7180
- y aveces
127.0.0.1:9001
¿Cuáles son las implicaciones de ambas notaciones?
¿La dirección IP específica actúa como un filtro para las conexiones entrantes? Por ejemplo 127.0.0.1:9001
, ¿solo aceptará conexiones de localhost en el puerto 9001?
:::80
no siempre implica IPv4 también unix.stackexchange.com/a/496150/333382127.0.0.1 y 0.0.0.0
127.0.0.1
significa interfaz local o dirección de bucle invertido. Solo accesible desde su localhost.0.0.0.0
es una dirección comodín para cada interfaz.Activado
netstat -ntlp
Local Address
significa "Imprimir conexiones TCP activas de escucha, mostrar las IP como valores numéricos y mostrar el PID y el nombre del programa que usa esta conexión".Diferencia por ejemplo
Por ejemplo, si tengo
eso significa:
El servicio
prog1
con PID1189
escucha en el puerto53
con protocolotcp
. Solo es accesible desde su host local.El servicio
prog2
con PID1189
escucha en el puerto6666
con protocolotcp
. El acceso a este puerto está permitido desde cualquier otra computadora en todas las redes de las que la computadora forma parte.Fuentes: 1 2 3
fuente
0.0.0.0
significa que el proceso está vinculado a todas las interfaces.127.0.0.1
significa que el proceso está vinculado solo a la127.0.0.1
interfaz (loopback).Si tuviera otras interfaces, podría tener
x.y.z.a
entradas que indiquen que el proceso estaba vinculado a esas interfaces específicas.Solo se informará a un proceso si el tráfico llega a las interfaces a las que está vinculado, por lo que sí, es una especie de filtro, aunque generalmente no se describe en esos términos.
fuente
La "dirección local" es la dirección a la que está vinculado el socket en cuestión. Esta es la dirección en la que recibe conexiones. Las direcciones que está preguntando son "direcciones especiales". De acuerdo con la página del manual para el protocolo Linux IPv4 :
Lo que esto significa para la dirección
0.0.0.0
es que el socket puede recibir conexiones para cualquier dirección en el sistema, en cualquier interfaz.fuente
Como dijiste, la IP de localhost solo acepta conexiones a esos puertos localmente, mientras que la IP 0.0.0.0 se refiere a puertos que están abiertos para todos.
Por ejemplo
Local
A todos
fuente