-
Notifications
You must be signed in to change notification settings - Fork 5
Description
So, there's this server which has a handful of OpenVPN instances, waiting for clients (t_server setup). Some of them have "verb 6" so I see DCO events logged.
Normally there is a regular logging of this
May 17 10:47:03 ubuntu2004 tun-udp-p2mp[58643]: dco_get_peer_stats_multi
May 17 10:47:03 ubuntu2004 tun-udp-p2mp[58643]: dco_parse_peer_multi: parsing message...
May 17 10:47:03 ubuntu2004 tun-udp-p2mp[58643]: dco_update_peer_stat / dco_read_bytes: 1055136
May 17 10:47:03 ubuntu2004 tun-udp-p2mp[58643]: dco_update_peer_stat / dco_write_bytes: 1100904
May 17 10:47:03 ubuntu2004 tun-udp-p2mp[58643]: dco_update_peer_stat / tun_read_bytes: 901032
May 17 10:47:03 ubuntu2004 tun-udp-p2mp[58643]: dco_update_peer_stat / tun_write_bytes: 944448
(one client connected, a bit of talking going back and forth)
Now, when I ran an extra client, not talking to these servers at all(!) (outbound t_client test), the kernel log gave me this:
May 17 10:36:20 ubuntu2004 kernel: [86971.350203] tun7: deleting peer with id 0, reason 1
May 17 10:36:20 ubuntu2004 tun-udp-p2p-tls-sha256[58703]: dco_do_read
May 17 10:36:20 ubuntu2004 tun-udp-p2p-tls-sha256[58703]: ovpn-dco: ignoring message (type=5) for foreign ifindex 313
May 17 10:36:20 ubuntu2004 tun-udp-p2p-tls-sha256[58703]: process_incoming_dco: received message of type 0 - ignoring
May 17 10:36:20 ubuntu2004 tun-udp-p2mp-topology-subnet[58650]: dco_parse_peer_multi: cannot store DCO stats for peer 0
May 17 10:36:20 ubuntu2004 tun-udp-p2mp-topology-subnet[58650]: dco_do_read: netlink reports error (-4): Try again
May 17 10:36:20 ubuntu2004 tun-tcp-p2mp[58634]: dco_parse_peer_multi: cannot store DCO stats for peer 0
May 17 10:36:20 ubuntu2004 tun-tcp-p2mp[58634]: dco_do_read: netlink reports error (-4): Try again
May 17 10:36:20 ubuntu2004 tun-udp-p2mp[58643]: dco_do_read
May 17 10:36:20 ubuntu2004 tun-udp-p2mp[58643]: ovpn-dco: ignoring message (type=5) for foreign ifindex 313
what irritates me is the "cannot store DCO stats for peer 0" and "error (-4)" from unrelated instances (the "ignoring foreign ifindex" lines are fine).
It is reproduceable here if you have this state:
- an number of idle server instances
- the
tun-udp-p2mpinstance has no peer 0, but it has an active peer 1 - the client instance is peer 0
what makes even less sense is that it's warning about the "topology subnet" and "tun-tcp" instances, which have no active connection whatsoever right now...
May 17 10:59:20 ubuntu2004 tun-tcp-p2mp[58634]: dco_parse_peer_multi: cannot store DCO stats for peer 0
May 17 10:59:20 ubuntu2004 tun-tcp-p2mp[58634]: dco_do_read: netlink reports error (-4): Try again
May 17 10:59:20 ubuntu2004 kernel: [88351.747603] tun7: deleting peer with id 0, reason 1
May 17 10:59:20 ubuntu2004 tun-udp-p2mp-topology-subnet[58650]: dco_parse_peer_multi: cannot store DCO stats for peer 0
May 17 10:59:20 ubuntu2004 tun-udp-p2mp-topology-subnet[58650]: dco_do_read: netlink reports error (-4): Try again
The OpenVPN code is running is commit 6c33e3761ecb476d, so with the latest and greatest counter fixes.
Kernel side is DCO version: ovpn-net-next/development-sources-6.15.0-rc5-0f03aa5 on ubuntu2004 5.4.0-216-generic