GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Centos – Systemd Version 219 von Centos 7 auf zufälligem UDP-Port lauschen?

Warum wird systemd-resolved von systemd Version 219 auf einem zufälligen UDP-Port lauschen?

Einer meiner Rechner lauscht auf Port 58557 (CentOS 7 mit systemd Version 219).

sudo netstat -tunlp|grep -P '^Active|^Proto|systemd'
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address  Foreign Address  State  PID/Program name
udp        0      0 0.0.0.0:58557  0.0.0.0:*               372/systemd-resolve

Ein anderer Rechner lauscht auf Port 52010 (auch CentOS 7 mit systemd Version 219).

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address  Foreign Address  State  PID/Program name
udp      768      0 0.0.0.0:52010  0.0.0.0:*               398/systemd-resolve

Sobald ich die Maschinen neu starte, systemd-resolved lauscht auf einem anderen UDP-Port.

Ich habe eine dritte Maschine, auf der Fedora 27 mit systemd läuft Version 234. Hier, systemd tut nicht einen zufälligen UDP-Port öffnen.

Als Randnotiz habe ich LLMNR deaktiviert , beide in /etc/systemd/network/20-eth0.network und /etc/systemd/network/20-eth0.network , das kann es also nicht sein. Auch LLMNR würde Port 5355 öffnen.

$ grep LLMNR /etc/systemd/resolved.conf
LLMNR=no
$ grep LLMNR /etc/systemd/network/20-eth0.network
LLMNR=no

Akzeptierte Antwort:

Wie ich in einem Kommentar zur Frage erwähnt habe, habe ich systemd-resolved ausgeführt in strace, während watch[ing] netstat -tunlp . Mir ist aufgefallen, dass der Port nur geöffnet wird, wenn ich die erste Anfrage zur Auflösung eines DNS-Namens mache.

Ich habe den Datenverkehr mit tcpdump -i eth0 -nn -w capture_file erfasst , den Port notiert, den ich in netstat sehe und sah mir die Ausgabe mit Wireshark an. Der Filter in Wireshark ist einfach:udp.port eq 37078 (unter Verwendung des zuvor notierten udp-Ports).

Ich kann bestätigen, dass der UDP-Port, der von systemd-resolved geöffnet wird ist der Port, der für die Kommunikation mit dem DNS-Server verwendet wird.


Cent OS
  1. Aktualisieren Sie die PHP-Version auf 5.5 in CentOS 6

  2. Aktualisieren Sie die PHP-Version auf 5.6 in Centos 6

  3. Upgrade auf CentOS 6.2 von CentOS 6.1 / CentOS 6.0

  4. Führen Sie ein Upgrade von CentOS 6.3 auf CentOS 6.4 durch

  5. Aktualisieren Sie von CentOS 6 auf CentOS 7

So installieren Sie Java unter CentOS 8

Informationen zum Upgrade von CentOS 7 auf CentOS 8

4 Möglichkeiten, die CentOS-Version zu überprüfen

So aktivieren Sie SSH auf CentOS

So installieren Sie PHP 7.4 auf CentOS 8

So überprüfen Sie die CentOS-Version