I am confused about following netstat output. There are two kind of local ports.
The first is:
[::]8100
The second is:
[::1]8100
I know that [::1] is a loopback address for IPv6. My question is:
What does [::] mean?
Thank you in advance for your help.
Best Answer
::
is the unspecified address (0:0:0:0:0:0:0:0
), and it is only used in packets as the source address of a host that does not yet have an address and is trying to get an address assigned. What you see in the output means that a process is binding to port8100
for all destination addresses in the host.::1
is the loopback address (0:0:0:0:0:0:0:1
), and anything sent to that address will loop back inside the host. What you see means a process is binding to port8100
on the loopback address, and that means anything sent to the loopback address on that port will go the that process.Neither address can be seen as a destination address on a network outside of the host, and the unspecified address can only be used as a source address for a host that has not yet been assigned an address but is looking for an address. The loopback address should never be used as a source address on a network outside of the host.
RFC 4219, IP Version 6 Addressing Architecture explains how the two addresses are compressed in section 2.2. Text Representation of Addresses:
It further goes on to explain both the unspecified and loopback addresses: