If I run find out running processes were associated with each open port, I would use netstat along with the following flags:
netstat -tulpn
This program lists the following output:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 1199/dnsmasq
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1004/cupsd
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 1157/postgres
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 1121/mysqld
tcp6 0 0 ::1:631 :::* LISTEN 1004/cupsd
udp 0 0 127.0.0.1:53 0.0.0.0:* 1199/dnsmasq
udp 0 0 0.0.0.0:68 0.0.0.0:* 1070/dhclient
udp 0 0 0.0.0.0:39617 0.0.0.0:* 990/avahi-daemon: r
udp 0 0 0.0.0.0:5353 0.0.0.0:* 990/avahi-daemon: r
udp6 0 0 :::57021 :::* 990/avahi-daemon: r
udp6 0 0 :::5353 :::* 990/avahi-daemon: r
So, I can see that the mysqld server process is listening on port 3306 and the postgresql server process is listening on 5432 and my dns server is listening on 53 and so forth. In other words, when I create a network connection with my ip and those ports specified, I can access these server processes. However, there is a field that says "Foreign Address". That is supposed to represent the foreign IP address (the other computer or network device). But that doesn't make sense, because there is no other computer or network device associated with these processes. So what does this 0.0.0:* mean?