It was just a router which does NAT for local devices in 192.168.1.0/24. The external interface, of cause, was pppoe0. Now for some reason, I want one of the device with IP 192.168.1.200 communicate with outside through the tunnel interface tun0 created by OpenVPN. Normally I should setup OpenVPN client on that device, but it has a low frequency CPU.
Best regards, Zhi-Qiang Lei > On Mar 12, 2015, at 4:00 AM, Adam Thompson <athom...@athompso.net> wrote: > > > On 03/11/2015 10:39 AM, Zhi-Qiang Lei wrote: >> I have a OpenBSD 5.6 router with two external interfaces pppoe0 and tun0. >> >> Generally, all packets will go through pppoe0. However, now I have a special >> client with IP 192.168.1.200, is it possible to force it to use tun0? Thanks. > > From route(8): > > route -v add -inet -host 192.168.1.200 A.B.C.D > > However, since AFAIK tun(4) interfaces on OpenBSD generally only occur when using OpenVPN you'd be better off letting OpenVPN manage tunnel routes for you. > If you've written some userspace daemon that talks to tun0, then 1) WTF are you doing?, and 2) you will need to either execute the above command or its programmatic equivalent - see route(4) for details. > > -Adam