Ip6table errors even though "Accept IPv6 Connections" is turned off

I’m on v1.30.3292.22. Using it in kubernetes platform (with no ipv6 support). The error is regarding a user with Network Link enabled. I expected for it to not do any ip6tables operations if I turned off ipv6 connections option. Is there something I’m missing?

[evening-forest-6911][2022-10-04 23:08:38,662][ERROR] Popen returned error exit code
  cmd         = ["ip6tables", "-I", "INPUT", "-d", "fd00:c0a8:8400:0:192:168:132:6", "-j", "DROP", "-m", "comment", "--comment", "pritunl-633ac211f3ab66168923fff0"]
  timeout     = 15
  return_code = 3
Process stderr:
  modprobe: can't change directory to '/lib/modules': No such file or directory
  modprobe: can't change directory to '/lib/modules': No such file or directory
  ip6tables v1.8.8 (legacy): can't initialize ip6tables table `filter': Table does not exist (do you need to insmod?)
  Perhaps ip6tables or your kernel needs to be upgraded.
Traceback (most recent call last):
  File "/usr/lib/python3.10/threading.py", line 973, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.10/threading.py", line 953, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3.10/site-packages/pritunl-1.30.3292.22-py3.10.egg/pritunl/callqueue.py", line 34, in _thread
    queued = self.call(timeout=0.5)
  File "/usr/lib/python3.10/site-packages/pritunl-1.30.3292.22-py3.10.egg/pritunl/callqueue.py", line 25, in call
    func(*args, **kwargs)
  File "/usr/lib/python3.10/site-packages/pritunl-1.30.3292.22-py3.10.egg/pritunl/clients/clients.py", line 2034, in _connected
    self.set_iptables_rules(
  File "/usr/lib/python3.10/site-packages/pritunl-1.30.3292.22-py3.10.egg/pritunl/clients/clients.py", line 1996, in set_iptables_rules
    self.instance.iptables.add_rule6(rule6)
  File "/usr/lib/python3.10/site-packages/pritunl-1.30.3292.22-py3.10.egg/pritunl/iptables.py", line 111, in add_rule6
    self._insert_iptables_rule(rule, ipv6=True)
  File "/usr/lib/python3.10/site-packages/pritunl-1.30.3292.22-py3.10.egg/pritunl/iptables.py", line 1229, in _insert_iptables_rule
    return self._insert_iptables_rule_cmd(rule, ipv6)
  File "/usr/lib/python3.10/site-packages/pritunl-1.30.3292.22-py3.10.egg/pritunl/iptables.py", line 1213, in _insert_iptables_rule_cmd
    ).run(15)
  File "/usr/lib/python3.10/site-packages/pritunl-1.30.3292.22-py3.10.egg/pritunl/utils/proc.py", line 80, in run
    logger.error('Popen returned error exit code', 'utils',
  File "/usr/lib/python3.10/site-packages/pritunl-1.30.3292.22-py3.10.egg/pritunl/logger/__init__.py", line 55, in error
    kwargs['traceback'] = traceback.format_stack()

Disable IPv6 in the server settings and disable accept IPv6 connections in the top right settings. I couldn’t reproduce any IPv6 iptables rules with IPv6 disabled.

Both are disabled. It turns out it’s not related to Network Link, but rather with client to client enabled. I disabled it and the errors are gone. Also some notes with client-to-client enabled:

  • these users are using openvpn, not pritunl-client
  • user status stays offline even though it still connects fine and the network link works
  • client-to-client enabled user uses openvpn, and they cannot communicate with wireguard users, only with other openvpn users