Тут как про суслика: «видишь суслика? — нет! — и я не вижу. а он есть.» Можно с проблемами и не столкнуться.
Вот к примеру, если вбить в поиск багтрекера по открытым багам pptp vpn видны замечательные багрепорты «Android 4.4.3 drops VPN Connection L2tp/IPSec PSK», «PPTP-VPN leaves IPv6 traffic insecure» про те же Nexus'ы.
Если взять уже закрытые баги (например по ссылкам в ответе выше), то видно что в сообщениях есть Nexus, Transformer Prime, Motorola Xoom и другие популярные устройства с официальными прошивками. Конечно баги исправляют, но исправление может занимать по времени от полгода и выше, вот тут иногда сторонние клиенты и спасают.
Да, конечно.
Если именно VPN, то нужно только все правильно самим реализовать (тоже не простая задача), в основном настройку TUN и маршрутов т.к. половина проблем с VpnService из-за неправильной настройки маршрутизации. И это не снимает проблемы с наличием поддержки TUN (иногда есть tun.ko но не загружается по умолчанию, иногда его нет), но тут можно таскать модули для разных ядер с собой. Есть даже приложение TUN.KO Installer на xda-developers, заявляют о более 6100 различных вариантов поддерживаемых устройств.
Если нужно фильтровать трафик, то используется iptables (в маркете полно таких приложений для рутованых устройств).
Если вопрос относится к любым приложениям VPN-клиентам, то ограничения и постоянные проблемы со стандартным функционалом андроида (Беспроводные сети -> VPN) известны давно и про них много написано (неработающее шифрование в PPtP, проблемы с установкой ключа в L2TP/IPsec, пример 1, пример 2 и еще 100500 проблем, гугл в помощь). Поэтому и сделали VpnService API, что бы можно было делать любые свои ЧТО-УГОДНО-клиенты с блекджеком и остальными.
Если вопрос относится к WebGuard, то нам нужно было перехватывать трафик от всех приложений, при этом не использовать какой либо внешний сервер.
Что значит не устроили «обычные» vpn, можно поподробнее? В статье мы рассказываем про перехват трафика и про то, чего стоит ожидать используя VpnService API. Тот же OpenVPN для android (net.openvpn.openvpn) тоже использует этот api.
Вот к примеру, если вбить в поиск багтрекера по открытым багам pptp vpn видны замечательные багрепорты «Android 4.4.3 drops VPN Connection L2tp/IPSec PSK», «PPTP-VPN leaves IPv6 traffic insecure» про те же Nexus'ы.
Если взять уже закрытые баги (например по ссылкам в ответе выше), то видно что в сообщениях есть Nexus, Transformer Prime, Motorola Xoom и другие популярные устройства с официальными прошивками. Конечно баги исправляют, но исправление может занимать по времени от полгода и выше, вот тут иногда сторонние клиенты и спасают.
Если именно VPN, то нужно только все правильно самим реализовать (тоже не простая задача), в основном настройку TUN и маршрутов т.к. половина проблем с VpnService из-за неправильной настройки маршрутизации. И это не снимает проблемы с наличием поддержки TUN (иногда есть tun.ko но не загружается по умолчанию, иногда его нет), но тут можно таскать модули для разных ядер с собой. Есть даже приложение TUN.KO Installer на xda-developers, заявляют о более 6100 различных вариантов поддерживаемых устройств.
Если нужно фильтровать трафик, то используется iptables (в маркете полно таких приложений для рутованых устройств).
Если вопрос относится к WebGuard, то нам нужно было перехватывать трафик от всех приложений, при этом не использовать какой либо внешний сервер.