Синопсис - openvpn в "клиент-серверной" конфигурации, сервер freebsd (В общем-то, однофигственно) клиент - windows. Работаем через tun-устройства (Нафиг нам ethernet через VPN гонять?). Задачка - прописать клиенту маршрут до сети за сервером.
В случае *nix клиента и *nix сервера проблемы, в общем-то, нет у них с PtP все, нормально, а вот у виндей,
На каждого клиента выдается подсеть /30, первый-последний адреса, как обычно, сеть+broadcast, предпоследний адрес назначается клиенту, а второй - виртуальный IP-адрес сервера, причем, "виртуальный" настолько, что на ping'и, хе-хе! не отзывается.
Соответственно, человек,
В общем, к чему я это: в случае *nix-*nix используйте директиву --ifconfig-pool-linear и не трахайте себе моск, в случае windows-клиентов старайтесь использовать родной push, в случае windows+*nix клиентов пользуйтесь client-config-dir'ом + тем же push'ем (И надейтесь, что route с той стороны все поймет правильно - что, в общем-то, далеко не факт, учитывая число реализаций этой функции ), ну а если уж вам по какой-то причине захотелось прописать маршрут руками - используйте "виртуальный адрес сервера" не беспокоясь о его "непингуемости" и все будет ОК.