---
tags: kubernetes, devops
---
# Flannel VXLAN and Kubernetes 1.16+ on CentOS/RHEL 7.x
CentOS/RHEL 7.x kernel 3.10.x has problem with checksum offloading which can cause Flannel and Kubernetes 1.16+ not working correctly (node to nodeport, node to cluster ip). The service below workarounds this issue by turning off checksum offloading
## flannel-disable-tx-checksum-offload.service
```bash
tee /etc/systemd/system/flannel-disable-tx-checksum-offload.service > /dev/null << EOF
[Unit]
Description=Turn off checksum offload on flannel.1
After=sys-devices-virtual-net-flannel.1.device
[Install]
WantedBy=sys-devices-virtual-net-flannel.1.device
[Service]
Type=oneshot
ExecStart=/usr/sbin/ethtool -K flannel.1 tx-checksum-ip-generic off
EOF
systemctl enable flannel-disable-tx-checksum-offload
systemctl start flannel-disable-tx-checksum-offload
```
## References
- https://t.du9l.com/2020/03/kubernetes-flannel-udp-packets-dropped-for-wrong-checksum-workaround/
- https://github.com/coreos/flannel/issues/1243
- https://github.com/rancher/k3s/issues/1638
- https://github.com/coreos/flannel/pull/1282