Подключение к VPN-серверу IPsec IKEv1 на устройствах AndroidAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Подключение к VPN-серверу IPsec IKEv1 на устройствах Android

Сообщение Anonymous »

У меня есть второе:
Моя компания купила VPN-серверы с приложением iOS для управления VPN-подключением к этим серверам. Мне нужно написать такое же приложение для устройств Android. Я никогда не работал с VPN-соединением на Android и вообще.
В коде Swift есть некоторые манипуляции:

Код: Выделить всё

let prtcl = NEVPNProtocolIPSec()
prtcl.username = vpnAcc.vpnAcc
prtcl.passwordReference = keychainService.load(key: "password")
prtcl.serverAddress = vpnAcc.server
prtcl.remoteIdentifier = vpnAcc.remoteID
prtcl.authenticationMethod = NEVPNIKEAuthenticationMethod.sharedSecret
prtcl.sharedSecretReference = keychainService.load(key: "shared")
prtcl.useExtendedAuthentication = true
prtcl.disconnectOnSleep = false
На VPN-сервере есть: IP, имя пользователя, пароль, PSK (предварительный общий ключ) для установления соединения.
После поиска в документации Apple о NEVPNProtocolIPSec Я обнаружил, что это VPN-соединение IPSec IKEv1.
Прежде всего я попробовал использовать встроенный VPN-клиент на Android с разными версиями устройств (11, 10 и 7 версии ОС). Этот клиент находится в Настройки-Сеть-VPN (на разных устройствах может быть по-разному). Когда я выбираю «Добавить профиль», есть несколько типов подключения: PPTP, L2TP/IPSec PSK, L2TP/IPSec RSA, IPSec Xauth PSK, IPSec Xauth RSA, IPSec Hybrid RSA, IKEv2/IPSec MSCHAPv2, IKEv2/IPSec PSK, IKEv2/IPSec RSA.
Итак, я попробовал добавить профиль, используя IPSec Xauth PSK вводит IP, имя пользователя, пароль и PSK в соответствующие поля, но это не работает, соединение не устанавливается. Я также попробовал все, что содержит «PSK» в названии: L2TP/IPSec PSK и IKEv2/IPSec PSK. Тоже нет результата.
Может быть есть какие-то ограничения по IPSec в ОС Android?
Я много раз гуглил, пытался собрать библиотеку Strongswan, но для подключения IKEv1 нет поддержки PSK.
Есть идеи, что я могу сделать, чтобы установить VPN-соединение? Может быть, моей компании придется обновить серверы до IKEv2? И как после этого обновления я могу установить VPN-соединение программно?

Подробнее здесь: https://stackoverflow.com/questions/789 ... id-devices
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»