Estoy ejecutando un servidor OpenVPN y quiero asignar a un cliente específico una IP estática.
Este es mi server.conf. Creo que esto configura el conjunto de IP virtuales para abarcar del 10.5.24.209 al 10.5.24.223.
port 443
proto tcp
dev tun
sndbuf 0
rcvbuf 0
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA512
tls-auth ta.key 0
topology subnet
server 10.5.24.208 255.255.255.240
#This netmask should span IPs .208-.223.
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 168.xx.xx.xx"
keepalive 10 120
cipher AES-256-CBC
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
crl-verify crl.pem
client-to-client
client-config-dir ccd
Este es el contenido de /etc/openvpn/ccd/W7LocalVM
, donde W7LocalVM es el nombre común de mi cliente. No entiendo muy bien lo que hace esta directiva, pero creo que la primera IP debería ser la IP estática deseada de mi cliente, y la segunda IP debería ser la IP de mi servidor.
ifconfig-push 10.5.24.210 10.5.24.209
Sin embargo, cuando intento conectar mi cliente con la configuración de este servidor, aparece el siguiente error:
Mon Aug 07 14:07:34 2017 Set TAP-Windows TUN subnet mode network/local/netmask = 10.5.24.208/10.5.24.210/10.5.24.209 [SUCCEEDED]
Mon Aug 07 14:07:34 2017 MANAGEMENT: Client disconnected
Mon Aug 07 14:07:34 2017 ERROR: --ip-win32 dynamic [offset] : offset is outside of --ifconfig subnet
Mon Aug 07 14:07:34 2017 Exiting due to fatal error
Pensé que la IP 10.5.24.210 estaría dentro de la subred definida en el lado del servidor, y no entiendo por qué recibo este error. ¿Alguien podría ayudarme en esto?
Respuestas:
Este problema se crea porque openvpn está tratando de analizar sus opciones de ifconfig como una ip seguida de una máscara de subred.
Según la página del manual:
Dentro de su código de servidor, configura su topología
subnet
y luego la envía al cliente utilizando laserver
instrucción.De acuerdo con la documentación anterior, en lugar de presionar su ifconfig usando la dirección "local", "remota", debe agregar lo siguiente a "/ etc / openvpn / ccd / W7LocalVM":
La última línea probablemente no sea necesaria, pero se deja como ejemplo lo que ifconfig-push "debería" hacer en el lado del servidor para que la conexión funcione.
fuente