I'm trying to configure a virtual GTP-U interface in OVS, however when I try the below command (from https://docs.openvswitch.org/en/latest/faq/configuration/):
Q: Does Open vSwitch support GTP-U?
A: Yes. Starting with version 2.13, the Open vSwitch userspace datapath supports GTP-U (GPRS Tunnelling Protocol User Plane (GTPv1-U)). TEID is set by using tunnel key field.
$ ovs-vsctl add-br br0
$ ovs-vsctl add-port br0 gtpu0 -- set int gtpu0 type=gtpu options:key=<teid> options:remote_ip=172.31.1.1
It throws the below error:
ovs-vsctl: Error detected while setting up 'gtpu0': could not add network device gtpu0 to ofproto (Address family not supported by protocol). See ovs-vswitchd log for details.
ovs-vsctl: The default log directory is "/usr/local/var/log/openvswitch".
In the log message, this is what comes up:
...|dpif|WARN|system@ovs-system: failed to add gtpu0 as port: Address family not supported by protocol
...|bridge|WARN|could not add network device gtpu0 to ofproto (Address family not supported by protocol)
I have the linux gtp module loaded with modprobe:
root@ubuntu:~# lsmod | grep gtp
gtp 28672 0
udp_tunnel 20480 1 gtp
and also loaded the builtin OVS kernel module:
root@ubuntu:~# lsmod | grep openvswitch
openvswitch 167936 2
nsh 16384 1 openvswitch
nf_conncount 24576 1 openvswitch
nf_nat 49152 3 openvswitch,iptable_nat,xt_MASQUERADE
nf_conntrack 172032 5 nf_nat,nfnetlink_cttimeout,openvswitch,nf_conncount,xt_MASQUERADE
nf_defrag_ipv6 24576 2 nf_conntrack,openvswitch
libcrc32c 16384 3 nf_conntrack,nf_nat,openvswitch
What am I missing here? Any idea where this error is even coming from?