2
Sean Reifschneider, <jafo@tummy.com>
3
Thursday November 27, 2003
4
==========================
6
These scripts can be used with OpenVPN up and down scripts to set up
7
routing on a Linux system such that the VPN traffic is sent via normal
8
network connectivity, but other traffic to that network runs over the VPN.
9
The idea is to allow encryption of data to the network the remote host is
10
on, without interfering with the VPN traffic. You can't simply add a route
11
to the remote network, becaues that will cause the VPN traffic to also try
12
to run over the VPN, and breaks the VPN.
14
These scripts use the Linux "fwmark" iptables rules to specify routing
15
based not only on IP address, but also by port and protocol. This allows
16
you to effectively say "if the packet is to this IP address on this port
17
using this protocol, then use the normal default gateway, otherwise use the
20
This is set up on the client VPN system, not the VPN server. These scripts
21
also set up all ICMP echo-responses to run across the VPN. You can
22
comment the lines in the scripts to disable this, but I find this useful
23
at coffee shops which have networks that block ICMP.
25
To configure this, you need to set up these scripts as your up and down
26
scripts in the config file. You will need to set these values in the
29
up /etc/openvpn/fwmarkroute.up
30
down /etc/openvpn/fwmarkroute.down
34
setenv remote_netmask_bits 24
36
Note: For this to work, you can't set the "user" or "group" config options,
37
because then the scripts will not run as root.
39
The last setting allows you to control the size of the network the remote
40
system is on. The remote end has to be set up to route, probably with
41
masquerading or NAT. The network this netmask relates to is calculated
42
using the value of "remote" in the conf file.