Hello Steffen, Checking further with printk's, I can see vti_tunnel_init being called for both ip_vti0 and vtil tunnels. But, when vti_tunnel_xmit is called, it is called with ip_vti0 tunnel and not the vtil tunnel. I am not sure if I am setting the route wrong. I saw a comment that vti_tunnel_xmit is called by dev_queue_xmit function. I could not figure out what dev_queue_xmit does though. master# echo "1" | sudo tee /proc/sys/net/ipv4/ip_forward 1 master# modprobe ip_vti master# ipsec start Starting strongSwan 5.2.0 IPsec [starter]... master# ip tunnel add vtil mode vti local 192.168.0.11 remote 192.168.1.232 ikey 1 okey 1 master# ip link set vtil up master# sleep 10 master# ip route add 192.168.1.0/24 dev vtil master# ip route list default via 192.168.0.1 dev enp4s0 metric 202 127.0.0.0/8 dev lo scope host 192.168.0.0/24 dev enp4s0 proto kernel scope link src 192.168.0.11 metric 202 192.168.1.0/24 dev vtil scope link ip link list . . . 13: ip_vti0@NONE: mtu 1428 qdisc noqueue state UNKNOWN mode DEFAULT group default link/ipip 0.0.0.0 brd 0.0.0.0 14: vtil@NONE: mtu 1428 qdisc noqueue state UNKNOWN mode DEFAULT group default link/ipip 192.168.0.11 peer 192.168.1.232 master# ip tunnel list ip_vti0: ip/ip remote any local any ttl inherit nopmtudisc key 0 vtil: ip/ip remote 192.168.1.232 local 192.168.0.11 ttl inherit key 1 Just wanted to check if you have any suggestions to go about debugging this. Thanks Joe