Bug 339652

Summary: Plasma applet for NetworkManager OpenVPN configuration is missing IPV6 implementation
Product: [Plasma] plasma-nm Reporter: Cygni X <cygnix>
Component: generalAssignee: Lukáš Tinkl <lukas>
Status: RESOLVED FIXED    
Severity: normal CC: jgrulich
Priority: NOR    
Version: 0.9.3.4   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In: 0.9.3.5
Sentry Crash Report:

Description Cygni X 2014-10-03 21:39:48 UTC
NetworkManger Plasma applet  OpenVPN plugin is missing ipv6 implementation. It is missing the ipv6 tab when adding a new connection, and complains the udp6 protocol needed to make such connection is an invalid if a configuration file is imported. Another Issue is, it does not obtain an ipv6 address for a server where ipv6 is provided inside the tunnel.

Reproducible: Always

Steps to Reproduce:
1.  Using the connection editor,  add openVPN
2.  Import a configuration file with proto set to udp6
3.  Connect via ipv4 to a OpenVPN server configured to provide ipv6 inside the tunnel

Actual Results:  
There is no option to create a new connection using ipv6, and an error occurs if 'proto udp6' is used in the configuration file. Also, connecting to server configured  to provide ipv6 results in only ipv4 address being obtained.

Expected Results:  
The  editor should allow creating a connection that uses ipv6 remote address and  support udp6. When connected to an OpenVPN server that provides ipv6 inside the tunnel, both ipv4 and ipv6 addresses should be obtained by the client.
Comment 1 Jan Grulich 2014-10-06 07:28:41 UTC
Git commit cee9d493e30f2e1ef765e0498b10d047cef2a294 by Jan Grulich.
Committed on 06/10/2014 at 07:28.
Pushed by grulich into branch 'NM/0.9.8'.

Add IPv6 configuration for VPN connections (needed for OpenVPN)

M  +1    -1    settings/connectionsettings.cpp

http://commits.kde.org/libnm-qt/cee9d493e30f2e1ef765e0498b10d047cef2a294
Comment 2 Jan Grulich 2014-10-06 07:29:28 UTC
Git commit 26c1f5fa03491298fcee2a21e53522c2f3a01ea3 by Jan Grulich.
Committed on 06/10/2014 at 07:29.
Pushed by grulich into branch '0.9.3'.

Add IPv6 tab for OpenVPN connections

M  +4    -2    libs/editor/connectiondetaileditor.cpp

http://commits.kde.org/plasma-nm/26c1f5fa03491298fcee2a21e53522c2f3a01ea3
Comment 3 Jan Grulich 2014-10-06 07:30:33 UTC
Git commit 3f6a19cb417d54f2dd73fc5200d1857b819f6f5a by Jan Grulich.
Committed on 06/10/2014 at 07:28.
Pushed by grulich into branch 'master'.

Add IPv6 configuration for VPN connections (needed for OpenVPN)

M  +1    -1    src/settings/connectionsettings.cpp

http://commits.kde.org/libnm-qt/3f6a19cb417d54f2dd73fc5200d1857b819f6f5a
Comment 4 Jan Grulich 2014-10-06 07:30:49 UTC
Git commit e3a1d6ce87f2f22391b6d2ed4c2390b04b0e0ff3 by Jan Grulich.
Committed on 06/10/2014 at 07:28.
Pushed by grulich into branch 'Plasma/5.1'.

Add IPv6 configuration for VPN connections (needed for OpenVPN)

M  +1    -1    src/settings/connectionsettings.cpp

http://commits.kde.org/libnm-qt/e3a1d6ce87f2f22391b6d2ed4c2390b04b0e0ff3
Comment 5 Jan Grulich 2014-10-06 07:53:10 UTC
Git commit 0ba7bcddac6d8c8583e40bba1a5a4d904f92463d by Jan Grulich.
Committed on 06/10/2014 at 07:52.
Pushed by grulich into branch 'master'.

Add IPv6 tab for OpenVPN connections

M  +4    -2    libs/editor/connectiondetaileditor.cpp

http://commits.kde.org/plasma-nm/0ba7bcddac6d8c8583e40bba1a5a4d904f92463d
Comment 6 Jan Grulich 2014-10-06 07:53:33 UTC
Git commit 199c41123be12860c758e97db6a658ccb4d25b90 by Jan Grulich.
Committed on 06/10/2014 at 07:52.
Pushed by grulich into branch 'Plasma/5.1'.

Add IPv6 tab for OpenVPN connections

M  +4    -2    libs/editor/connectiondetaileditor.cpp

http://commits.kde.org/plasma-nm/199c41123be12860c758e97db6a658ccb4d25b90
Comment 7 Cygni X 2014-10-07 15:26:51 UTC
(In reply to Jan Grulich from comment #6)
> Git commit 199c41123be12860c758e97db6a658ccb4d25b90 by Jan Grulich.
> Committed on 06/10/2014 at 07:52.
> Pushed by grulich into branch 'Plasma/5.1'.
> 
> Add IPv6 tab for OpenVPN connections
> 
> M  +4    -2    libs/editor/connectiondetaileditor.cpp
> 
> http://commits.kde.org/plasma-nm/199c41123be12860c758e97db6a658ccb4d25b90

Thanks for giving this the utmost priority.
Comment 8 Jan Grulich 2014-10-07 15:31:20 UTC
If you want to try it, do not forget to also compile the latest libnm-qt (NM/0.9.8 branch), otherwise it won't work.
Comment 9 Cygni X 2014-10-07 22:06:03 UTC
(In reply to Jan Grulich from comment #8)
> If you want to try it, do not forget to also compile the latest libnm-qt
> (NM/0.9.8 branch), otherwise it won't work.

Unfortunately the issue are not resolved. The first issue; if say for example the OpenVPN server IP is 192.168.1.192, once connected to a server that has configured ipv6 inside the tunnel (see https://community.openvpn.net/openvpn/wiki/IPv6), the client should receive an ipv6 address as well as ipv4. Testing the server from the client side with the following command 'openvpn --config foo.ovpn' achieves the correct result.

The second issue is, connecting using ipv6; the client fails as it does not understand 'proto udp6' if imported from a configuration file -- it complains.  Again, tested and working with command 'openvpn --config foo.ovpn' which achieves the desired result.
Comment 10 Jan Grulich 2014-10-08 06:37:22 UTC
Hmm, question is if it's supported by NetworkManager OpenVPN plugin. Could you please try to import your openvpn connection in nm-connection-editor (the gnome's one) and check if it's imported correctly and works as expected (without editing it in our editor)?
Comment 11 Cygni X 2014-10-09 01:27:48 UTC
(In reply to Jan Grulich from comment #10)
> Hmm, question is if it's supported by NetworkManager OpenVPN plugin. Could
> you please try to import your openvpn connection in nm-connection-editor
> (the gnome's one) and check if it's imported correctly and works as expected
> (without editing it in our editor)?

Gnome fails on openSUSE 13.1  as well.
Comment 12 Jan Grulich 2014-10-09 08:00:31 UTC
It looks that NetworkManager OpenVPN plugin doesn't support it (yet). In this case there is nothing we can do about it in plasma-nm.
Comment 13 Cygni X 2014-10-09 12:13:20 UTC
(In reply to Jan Grulich from comment #12)
> It looks that NetworkManager OpenVPN plugin doesn't support it (yet). In
> this case there is nothing we can do about it in plasma-nm.

Thanks for the effort.  So one should probably contact NetworkManager OpenVPN plugin developer to complain? Also, should this be marked as resolved?
Comment 14 Jan Grulich 2014-10-09 12:23:18 UTC
It should be marked as resolved. Our OpenVPN plugin was missing IPv6 configuration which is fixed now, but regarding the missing funcionality you have to contact NM developers.