Bug 488884 - The RDP server is only listening for legacy-IP (IPv4) connections
Summary: The RDP server is only listening for legacy-IP (IPv4) connections
Status: RESOLVED FIXED
Alias: None
Product: KRdp
Classification: Plasma
Component: general (show other bugs)
Version: 6.1.0
Platform: Arch Linux Linux
: NOR minor
Target Milestone: ---
Assignee: Unassigned bugs mailing-list
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-06-21 10:59 UTC by fell
Modified: 2024-07-24 18:12 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In: 6.1.3
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description fell 2024-06-21 10:59:23 UTC
TLDR: KRdp does not support IPv6.

SUMMARY
When starting an RDP server from the new page in system settings, it automatically creates a legacy-IP (IPv4) socket and is not reachable via IPv6. This is indicated by the listen adresses shown in the GUI and also confirmed by running `ss` and observing that the bound IP address is `0.0.0.0`, preventing IPv6 connections. There is no option to enable IPv6.

STEPS TO REPRODUCE
1. Start RDP server via system settings.
2. Run `ss -tl | grep 3389`.

OBSERVED RESULT
 - Observe, that the displayed IP addresses in the GUI are only IPv4.
 - Observe, that the listening IP in the command line output is `0.0.0.0`, which prevents IPv6 connections.

EXPECTED RESULT
 - The server should support IPv6 by default.
 - The displayed IP addresses after starting it from the GUI should include at least one IPv6 address.
 - The listening IP should be `::` to support both IPv4 and IPv6 connections.

SOFTWARE/OS VERSIONS
Operating System: Arch Linux
KDE Plasma Version: 6.1.0
KDE Frameworks Version: 6.3.0
Qt Version: 6.7.1
Kernel Version: 6.9.5-zen1-1.1-zen (64-bit)
Graphics Platform: wayland
Processors: 24 × AMD Ryzen 9 3900X 12-Core Processor
Memory: 31.3 GiB of RAM

ADDITIONAL INFORMATION
This bug may be related to https://bugs.kde.org/show_bug.cgi?id=352434
Comment 1 Akseli Lahtinen 2024-06-24 06:54:30 UTC
Can confirm. KRDP should be listening any incoming connections (0.0.0.0 is used as catchall). Seems this does not extend to ipv6, or something else is failing.

Operating System: Fedora Linux 40
KDE Plasma Version: 6.1.80
KDE Frameworks Version: 6.4.0
Qt Version: 6.7.1
Kernel Version: 6.9.5-200.fc40.x86_64 (64-bit)
Graphics Platform: Wayland
Processors: 12 × AMD Ryzen 5 3600 6-Core Processor
Memory: 15.5 GiB of RAM
Graphics Processor: AMD Radeon RX 6600
Comment 2 Bug Janitor Service 2024-07-10 09:58:38 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/krdp/-/merge_requests/51
Comment 3 Arjen Hiemstra 2024-07-10 13:52:49 UTC
Git commit 5dabf37b5556dd596de2392cd60b6d310ae5ba04 by Arjen Hiemstra.
Committed on 10/07/2024 at 09:58.
Pushed by ahiemstra into branch 'master'.

server: Use QHostAddress::Any if no listening address is set

This ensures we listen on both IPv4 and IPv6, instead of using "0.0.0.0"
which implies we only listen on IPv4.

M  +4    -3    server/main.cpp

https://invent.kde.org/plasma/krdp/-/commit/5dabf37b5556dd596de2392cd60b6d310ae5ba04
Comment 4 Arjen Hiemstra 2024-07-11 08:04:39 UTC
Git commit 67aaa5a7e58eadec456d88feb11343dda22a90a3 by Arjen Hiemstra.
Committed on 11/07/2024 at 08:03.
Pushed by ahiemstra into branch 'Plasma/6.1'.

server: Use QHostAddress::Any if no listening address is set

This ensures we listen on both IPv4 and IPv6, instead of using "0.0.0.0"
which implies we only listen on IPv4.


(cherry picked from commit 5dabf37b5556dd596de2392cd60b6d310ae5ba04)

Co-authored-by: Arjen Hiemstra <ahiemstra@heimr.nl>

M  +4    -3    server/main.cpp

https://invent.kde.org/plasma/krdp/-/commit/67aaa5a7e58eadec456d88feb11343dda22a90a3