<div dir="ltr">Hi, guys, sorry for my bother.<br><br>I have read the wiki page <Route-based VPNs> (<a href="https://wiki.strongswan.org/projects/strongswan/wiki/RouteBasedVPN">https://wiki.strongswan.org/projects/strongswan/wiki/RouteBasedVPN</a>), and I noticed this sentence: <i><b> Whenever a packet is routed to a VTI device it automatically gets the configured mark applied so it will match the policy and get tunneled.<br></b></i><br>So I built a test case to confirm this feature. The topology looked like this:<br><br><br>pc1                           pc2                  pc3<br><br>              tunnel<br>eth0    -------------    eth1 - eth2   ------    eth3<br><br>                            vti1<br><br>I want to ping eth3 from eth0. The ipsec tunnel built between eth0 and eth1. vti1  is of course set up on pc2 with mark.<br><br>I created route on pc2 like this:<br><br>ip rule add dev vti1 table 1<br>ip route add default dev eth2 table 1<br><br>ip rule add dev eth2 table 2<br>ip route add default dev vti1 table 2<br><br>Now, It worked well just like I thought except for only one thing:<b> I can capture the Echo-Reply packet on vti1 from eth3</b>, but to my surprise, it was dropped at once. If I understood that sentence correctly, the packet should get the mark, match the policy and then get tunneled to eth0.<br><br>"ip -s tunnel" shows that there are some TX errors on vti1, and the reason is <b>NoRoute</b><i><b>.</b></i><br><br>I really do not know why the route is needed at this point if vti1 bind the CHILD_SA.<br><br>The version is 5.4.0<br><br>Any suggestion is welcome.<br><br></div>