Это — старая версия документа!


Настройка IPv6 в OpenVPN: вариант с использованием TUN

На обоих компьютерах

Файл /etc/openvpn/vpn-hq.key будет содержать секретный ключ, который при использовании туннеля с шифрованием в режиме «shared secret» должен быть одинаковым на всех соединяемых компьютерах. Сгенерировать его можно следующим образом1):

openvpn --genkey --secret /etc/openvpn/vpn-hq.key

Помимо него, на оба компьютера следует скопировать файл:

/etc/openvpn/up-ipv6.sh
#!/bin/bash
 
INTERFACE=$1; shift;
TUN_MTU=$1;   shift;
UDP_MTU=$1;   shift;
LOCAL_IP=$1;  shift;
REMOTE_IP=$1; shift;
MODUS=$1;     shift;
 
ip link set $INTERFACE up
ip link set mtu $TUN_MTU dev $INTERFACE
 
. /etc/openvpn/$INTERFACE.ipv6
 
for A in $LOCAL_IP6; do
  ip -6 addr add $A dev $INTERFACE
done
 
for R in $ROUTE_IP6; do
  ip -6 route add $R dev $INTERFACE
done
 
exit 0

На сервере (hq.example.com)

/etc/openvpn/vpn-branch.conf
lport 1194
proto udp6
dev vpn-branch
dev-type tun
tun-ipv6
secret vpn-hq.key
script-security 2
up up-ipv6.sh
/etc/openvpn/vpn-branch.ipv6
LOCAL_IP6=2001:470:xxxx:1::1/64

На клиенте

/etc/openvpn/vpn-hq.conf
remote hq.example.com 1194
proto udp6
dev vpn-hq
dev-type tun
tun-ipv6
secret vpn-hq.key
script-security 2
up up-ipv6.sh
ping 120
ping-restart 300
up-delay
/etc/openvpn/vpn-hq.ipv6
LOCAL_IP6=2001:470:xxxx:1::2/64
ROUTE_IP6=2001:470:xxxx::/48

Включение маршрутизации

Если необходимо разрешить VPN-клиенту доступ к другим подсетям, кроме используемой непосредственно для организации туннеля, либо выпустить его «во внешний мир» через Интернет-соединение сервера, следует включить на сервере IP forwarding, для чего добавить в /etc/sysctl.conf следующие две строки и выполнить sysctl -p с правами root:

net.ipv6.conf.all.forwarding=1
net.ipv6.conf.default.forwarding=1

…а также добавить соответствующее правило в настройки используемого IPv6-файрволла:

ip6tables -A FORWARD -i vpn-branch -j ACCEPT

На клиенте же, для использования доступных через VPN-соединение маршрутов, необходимо прописать их в строке ROUTE_IP6 вышеуказанного файла настроек (если несколько – то в общих кавычках и через пробел).


openvpn-tun.1329466550.txt.gz · Последние изменения: 2012-02-17 08:15 UTC От rm
Personal Tools