Package: openvpn
Version: 2.4.0-6+deb9u1
Severity: important
Tags: ipv6

Hi,

after upgrading my OpenVPN server from jessie to stretch, I found myself
without an OpenVPN server. The log is rather unhelpful, reading:

Jul  3 23:33:11 torres ovpn-server[5730]: do_ifconfig, 
tt->did_ifconfig_ipv6_setup=1
Jul  3 23:33:11 torres ovpn-server[5730]: /sbin/ip link set dev tun0 up mtu 1278
Jul  3 23:33:11 torres ovpn-server[5730]: /sbin/ip addr add dev tun0 
10.8.0.1/24 broadcast 10.8.0.255
Jul  3 23:33:11 torres named[1129]: listening on IPv4 interface tun0, 
10.8.0.1#53
Jul  3 23:33:11 torres ovpn-server[5730]: /sbin/ip -6 addr add 
2a01:238:4071:3202::1/64 dev tun0
Jul  3 23:33:11 torres ovpn-server[5730]: Linux ip -6 addr add failed: external 
program exited with error status: 2
Jul  3 23:33:11 torres ovpn-server[5730]: Exiting due to fatal error
Jul  3 23:33:11 torres named[1129]: no longer listening on 10.8.0.1#53
Jul  3 23:33:11 torres systemd[1]: [email protected]: Main process exited, 
code=exited, status=1/FAILURE
Jul  3 23:33:11 torres systemd[1]: [email protected]: Unit entered failed 
state.
Jul  3 23:33:11 torres systemd[1]: [email protected]: Failed with result 
'exit-code'.

>From an strace, I get more help:

11589 write(2, "RTNETLINK answers: No buffer space available\n", 45) = 45
11589 exit_group(2)                     = ?
11589 +++ exited with 2 +++
11580 <... wait4 resumed> [{WIFEXITED(s) && WEXITSTATUS(s) == 2}], 0, NULL) = 
11589
11580 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=11589, 
si_uid=0, si_status=2, si_utime=0, si_stime=0} ---
11580 getpid()                          = 11580
11580 sendto(3, "<27>Jul  3 23:25:35 ovpn-server[11580]: Linux ip -6 addr add 
failed: external program exited with error status: 2", 113, MSG_NOSIGNAL, NULL, 
0) = 113
11580 getpid()                          = 11580
11580 sendto(3, "<29>Jul  3 23:25:35 ovpn-server[11580]: Exiting due to fatal 
error", 66, MSG_NOSIGNAL, NULL, 0) = 66
11580 close(3)                          = 0
11580 exit_group(1)                     = ?
11580 +++ exited with 1 +++

(why do I need to scrape this from strace?)

Uncommenting the server-ipv6 stanza from my server.conf makes the server
come up. Since I need IPv6, that's not an option. Both the OpenVPN
versions from stretch and stretch-security are affected.

Downgrading to the OpenVPN from jessie-security fixed the issue for me.

Greetings
Marc

-- System Information:
Debian Release: 9.0
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.11.8-zgsrv20080 (SMP w/2 CPU cores; PREEMPT)
Locale: LANG=en_DK.utf8, LC_CTYPE=en_DK.utf8 (charmap=UTF-8), 
LANGUAGE=en_DK.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages openvpn depends on:
ii  debconf [debconf-2.0]  1.5.61
ii  init-system-helpers    1.48
ii  iproute2               4.9.0-1
ii  libc6                  2.24-11+deb9u1
ii  liblz4-1               0.0~r131-2+b1
ii  liblzo2-2              2.08-1.2+b2
ii  libpam0g               1.1.8-3.6
ii  libpkcs11-helper1      1.21-1
ii  libssl1.0.2            1.0.2l-2
ii  libsystemd0            232-25
ii  lsb-base               9.20161125

Versions of packages openvpn recommends:
pn  easy-rsa  <none>

Versions of packages openvpn suggests:
ii  openssl     1.1.0f-3
pn  resolvconf  <none>

-- Configuration Files:
/etc/default/openvpn changed:
AUTOSTART="server"
OPTARGS=""
OMIT_SENDSIGS=0


-- debconf information:
openvpn/create_tun: false

-- server.conf:
local 85.214.68.41
port 1194
proto udp
dev tun
ca caconcat.crt
cert server.crt
key server.key  # This file should be kept secret
dh dh1024.pem
server 10.8.0.0 255.255.255.0
server-ipv6 2a01:238:4071:3202::/64
ifconfig-pool-persist ipp.txt
route 10.1.0.0 255.255.0.0
client-config-dir client-config-dir
ccd-exclusive
keepalive 10 120
cipher AES-256-CBC
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 4
link-mtu 1400
topology subnet
push "topology subnet"

Reply via email to