Some networks, e.g. Azure VNets, are quite restrictive about the supported procotols. Azure for example only supports TCP and UDP. Fortunately there is the Foo-Over-UDP ("FOU"), tunneling over UDP and thus bypassing the Azure limitation.
- You need a Linux distribution that supports FOU, for example Ubuntu.
RHEL for example does not support FOU (so Fedora and CentOS probably neither). - the
fou
module must be configured to be loaded automatically. (modprobe fou
,/etc/modules.conf
) - choose your "foo": e.g. IPIP.
Check your OS docs what other protocols are supported, for example viaman systemd.netdev
. - sending and receving FOU is separated, you will need to create on device for each:
- create one device for sending/encapsulation (
fou-tx
,fou-tx.netdev
) - create one device for receiving/decapsulation (
fou-rx
,fou-rx.netdev
)
- create one device for sending/encapsulation (
- attach networ