O Cisco IPSec, o Juniper Junos Pulse e o Cisco AnyConnect podem ser configurados para VPN sob demanda para determinados hosts / redes de destino, pois fazem parte da rota e podem realizar a necessidade de estabelecer uma conexão VPN primeiro para se conectarem a esses hosts / redes;
Portanto, no caso de seu servidor VPN PPTP baseado em Linux, até onde esse servidor não é seu gateway de roteamento padrão, a VPN on Demand não tem sentido. Nesta configuração, o seu servidor deve ser um gateway compatível com Cisco IPSEC no Linux e o gateway de roteamento padrão dos seus dispositivos iOS também.
No caso do dispositivo Apple iOS, a VPN on Demand permite que o dispositivo iOS estabeleça uma conectividade transparente e segura para uma rede corporativa remota, sem configuração manual no lado do usuário.
Este recurso VPN on Demand não pode ser configurado manualmente no dispositivo iOS e requer uma autenticação baseada em certificado e atualmente é suportado no Cisco IPSec, no Juniper Junos Pulse e no Cisco AnyConnect.
Para ativar e configurá-lo em dispositivos iOS, você deve criar um perfil de configuração e provisionar o dispositivo.
Outra forma de VPN on Demand está disponível em dispositivos Mac OSX onde o Safari decide estabelecer uma conexão VPN para se conectar a determinados domínios / redes (por exemplo, vpn.mycompany.com) que você já listou como VPN on Demand e configurou seu perfil de configurações de conexão (senha / certificado).
Mais informações:
OSX VPN on Demand: link
Para um Cisco IPSec Gateway no Linux, recomendo que você use o pacote Open source StrongSwan para sua VPN do iOS sob Demanda
Use o parâmetro --enable-cisco-quirks para criar o StrongSwan para torná-lo compatível com o Cisco IPSEC. É um gateway IPsec baseado em certificação estável no linux que é compatível com os requisitos de VPN on Demand do iOS.
Verifique o seguinte link para a configuração do iOS no StrongSwan:
A autenticação usa XAUTH e certificados (authby = xauthrsasig) .A configuração descrita foi testada e confirmada trabalhando em um iPad 2 com iOS 4.3.1, mas espera-se que funcione em todos os outros dispositivos iOS (iPhone, iPad, iPod Touch ) executando uma versão atualizada do iOS.