Вы находитесь здесь: version6.ru » Настройка IPv6 в OpenVPN
Это — старая версия документа!
Настройка IPv6 в OpenVPN
OpenVPN поддерживает IPv6 как внутри, так и снаружи туннеля. Однако поддержкой этой на сегодняшний день можно воспользоваться только с помощью собственного скрипта для поднятия интерфейса. Этот скрипт (up-ipv6.sh
) приведён ниже.
Рассмотрим настройку OpenVPN-туннеля при полном отсутствии IPv4, т.е. туннель работает поверх UDP/IPv6, внутри туннеля – только IPv6-трафик.
Для этого примера предположим, что мы хотим связать главный офис фирмы (HQ) с одним из её филиалов (Branch) в режиме VPN точка-точка, с разделяемым секретным ключом (vpn-hq.key
), IPv6 нам предоставляет tunnelbroker.net, в главном офисе используются различные подсети из 2001:470:xxxx::/48
, а VPN-клиенту мы решили выдать 2001:470:xxxx:1::/64
.
На обоих компьютерах
- /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 I in $LOCAL_IP6; do ip -6 addr add $I 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 /etc/openvpn/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 /etc/openvpn/up-ipv6.sh
- /etc/openvpn/vpn-hq.ipv6
LOCAL_IP6=2001:470:xxxx:1::2/64 ROUTE_IP6=2001:470:xxxx::/48