Назад | Перейти на главную страницу

openvpn разрешает только 1 соединение с опцией ifconfig-pool-persist

У меня есть openvpn-сервер со следующей конфигурацией:

ca ...
cert ...
key ...
dh ...


local ...
port 40000
proto udp
dev tun
server 192.168.100.0 255.255.252.0
ifconfig-pool-persist "/etc/openvpn/ipp.txt"
comp-lzo
persist-key
persist-tun
keepalive 10 120
client-to-client


tun-mtu 1500
fragment 1300
mssfix

--script-security 2


--client-connect "/etc/openvpn/vpn_conn_event.py"
--client-disconnect "/etc/openvpn/vpn_conn_event.py"

# Log
status "openvpn-status.log" 
log "openvpn.log" 
#log-append "openvpn.log" 
verb 3

Он отлично работает и сохраняет постоянные IP-адреса, но иногда адрес клиента меняется, что очень расстраивает. Я проследил это дальше и обнаружил, что это происходит, когда (по какой-либо причине) клиент открывает новое соединение со старым, которое еще не отключено. Вот журнал:

| DATE                | Cert | assigned IP    | Event     |
| 25/04/2018 03:01:46 | abc  | 192.168.101.18 | CONNECT   |
| 25/04/2018 04:04:54 | abc  | 192.168.100.66 | CONNECT   |
| 25/04/2018 04:08:42 | abc  | 192.168.101.18 | DISCONNECT|
| 25/04/2018 11:09:48 | abc  | 192.168.100.66 | DISCONNECT|

Поскольку это имеет смысл, я хочу, чтобы сервер openvpn отключал любое существующее клиентское соединение с этим сертификатом перед открытием нового, поэтому сохранял IP-адрес. Есть ли способ добиться этого? Пожалуйста, обратите внимание, что опция dublicate-cn здесь не работает, так как она не будет работать вместе с ifconfig-pool-persist.

Для тех, кто заинтересован, я перешел с настройки ifconfig-pool-persist на настройку client-config-dir в сочетании с оператором ifconfig-push, который, наконец, сохраняет стабильный IP-адрес назначения. Иногда встречаются двойные связи, и я понятия не имею, почему они случаются. Даже после добавления опции duplicate-cn 1 время от времени это все равно происходит.