Compartilhando um pool de IPs para duas instâncias openvpn (um TCP e um UDP)

4

Atualmente estou executando o OpenVPN no meu VPS, ouvindo na porta 1194 via TCP. Eu preciso usar o TCP, pois às vezes eu preciso encapsular o tráfego em um proxy HTTP. No entanto, eu também gostaria de poder usar o UDP, que deve ser mais rápido. No entanto, não quero criar duas sub-redes, pois também tenho minhas máquinas conectadas umas às outras e gostaria de tê-las todas em uma sub-rede.

Existe alguma maneira em que duas instâncias compartilhem um pool de IPs?

Aqui está minha configuração do servidor, para referência:

dev tun
proto tcp
persist-key
persist-tun
log-append /var/log/openvpn
comp-lzo

port 1194
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem
ifconfig-pool-persist ipp.txt
server 192.168.192.0 255.255.255.0
topology subnet
client-to-client
push "dhcp-option DNS 192.168.192.1"
push "dhcp-option DOMAIN my.example.com"

# Daemon settings
user nobody
group nogroup
    
por Mikeage 22.08.2010 / 21:25

2 respostas

1

Ok, resolvi isso.

Primeiro, mudei para uma rede em ponte. Eu criei um dispositivo de ponte e dois dispositivos de toque conectados (não tenho um dispositivo de rede na ponte). O servidor UDP escuta em 192.168.192.1 [e em tap0], o TCP em 192.168.192.2 [e em tap1]. A ponte em si recebe 192.168.192.1, mas não acho que isso seja tão importante. Ambos possuem o mesmo arquivo ifconfig-pool-persist.

Isso funcionou, mas não consegui me conectar de clientes conectados via UDP a clientes conectados via TCP ou vice-versa (clientes com o mesmo método podiam falar uns com os outros). Eu adicionei uma regra de firewall:

iptables -A FORWARD -i br0 -o br0 -j ACCEPT

e agora tudo funciona.

    
por 24.08.2010 / 16:33
0

O tráfego que você coloca na VPN é independente do protocolo usado para o túnel. Em um túnel OpenVPN, você pode colocar o tráfego AFAIK (TCP, UDP, ICMP, ...).

EDIT: Eu realmente não acho que você pode ter duas instâncias do OpenVPN com a mesma sub-rede que lhe daria uma tabela de roteamento impossível. O que você pode fazer é separar sub-redes ou rotear entre elas. Eu nunca fiz isso, mas acho razoável pensar que funcionará.

    
por 22.08.2010 / 21:40

Tags