На компьютере есть два сетевых интерфейса:
- eth0 - по нему получаем интернет
- tun0 - подключение к OpenVPN серверу
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.88.0.6 P-t-P:10.88.0.5 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
tun0 не настроен как default gw, но на самом vpn сервере форвардинг настроен и пакеты принимаются если ставить его как default gw.
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.137.1 0.0.0.0 UG 0 0 0 eth0
10.88.0.1 10.88.0.5 255.255.255.255 UGH 0 0 0 tun0
10.88.0.5 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
192.168.137.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0
И есть скриптина-клиент для примера http://pastebin.com/pkUda7hn Там есть socket.bind(('10.88.0.6', 0)). И ожидается что подключение будет идти через vpn, но все равно происходит через default gw. Может нужно прописать еще какие-то роуты?