Apache2 läuft zwar auf IPv4-Port 80, aber warum enthält die Ausgabe von netstat nie solche Einträge?
Posted: 13 Jan 2025, 11:02
Ich habe Apache2 erfolgreich auf Ubuntu 24.04 installiert. Der Aufruf von „curl“ unter 127.0.0.1 oder der mit der Netzwerkkarte verknüpften IP-Adresse funktioniert wie erwartet.
Wenn ich jedoch die Sockets mit sudo netstat -ltnpa inspiziere, enthält netstat nicht den IPv4-Eintrag von Port 80. Stattdessen dort ist ein IPv6-Eintrag von Port 80.
Die Verwendung der -atl-Optionen mit sudo sollte alle lauschenden TCP-Sockets auf meinem Computer anzeigen:
Bei Verwendung mit strace scheint netstat solche Informationen aus dieser speziellen Datei /proc/net/tcp abzurufen. Das gilt auch für lsof. Ich habe keine Ahnung, warum der Zugriff auf Port 80 über IPv4 funktioniert, während Netstat sagt, dass es keinen solchen Listening-Socket gibt?
Code: Select all
ubuntu@ubuntu:~$ ip addr show dev ens33 | grep inet
inet 192.168.14.129/24 metric 100 brd 192.168.14.255 scope global dynamic ens33
inet6 fe80::20c:29ff:feed:ed38/64 scope link
ubuntu@ubuntu:~$ curl 192.168.14.129 -s | grep ' apache2.conf'
|-- apache2.conf
ubuntu@ubuntu:~$ curl 127.0.0.1 -s | grep ' apache2.conf'
|-- apache2.conf
ubuntu@ubuntu:~$
Die Verwendung der -atl-Optionen mit sudo sollte alle lauschenden TCP-Sockets auf meinem Computer anzeigen:
Code: Select all
ubuntu@ubuntu:~$ sudo netstat -ltnpa
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 652/systemd-resolve
tcp 0 0 127.0.0.54:53 0.0.0.0:* LISTEN 652/systemd-resolve
tcp 0 0 192.168.14.129:46312 111.230.220.98:22 ESTABLISHED 1639/ssh
tcp 0 0 127.0.0.1:48656 127.0.0.1:22 ESTABLISHED 1639/ssh
tcp6 0 0 :::80 :::* LISTEN 1029/apache2
tcp6 0 0 :::22 :::* LISTEN 1/init
tcp6 0 0 127.0.0.1:22 127.0.0.1:48656 ESTABLISHED 1643/sshd: ubuntu [
ubuntu@ubuntu:~$