Cómo habilitar la compatibilidad con VPN en Android Emulator

Me gusta usar una VPN PPTP en el emulador de Android. Mi proveedor de VPN es Witopia. Los ajustes funcionan en un teléfono real (HTC Desire).

No funciona, la conexión sólo se agota después de un tiempo.

Adb logcat imprime:

D/VpnManager( 1527): succeeded to connect to VPN service D/com.android.settings.vpn.AuthenticationActor( 1527): ~~~~~~ connect() succeeded! I/SProxy_mtpd( 2211): Stop VPN daemon: mtpd D/VpnSettings( 1527): received connectivity: Witopia: connected? CONNECTING err=0 D/SProxy_mtpd( 2211): mtpd is stopped after 0 msec D/SProxy_mtpd( 2211): stopping mtpd, success? true I/SProxy_racoon( 2211): Stop VPN daemon: racoon D/SProxy_racoon( 2211): racoon is stopped after 0 msec D/SProxy_racoon( 2211): stopping racoon, success? true D/VpnService( 2211): Local IP: 10.0.2.15, if: eth0 D/VpnService( 2211): VPN UP: down I/SProxy_mtpd( 2211): Start VPN daemon: mtpd D/SProxy_mtpd( 2211): mtpd is running after 0 msec D/SProxy_mtpd( 2211): service not yet listen()ing; try again D/mtpd ( 2224): Waiting for control socket D/mtpd ( 2224): Received 19 arguments I/mtpd ( 2224): Using protocol pptp I/mtpd ( 2224): Connecting to 203.131.247.213 port 1723 I/SProxy_mtpd( 2211): got data from control socket: 19 I/mtpd ( 2224): Connection established (socket = 10) D/mtpd ( 2224): Sending SCCRQ D/mtpd ( 2224): Received SCCRP -> Sending OCRQ (local = 32087) I/mtpd ( 2224): Tunnel established D/mtpd ( 2224): Received OCRQ (remote = 52286) I/mtpd ( 2224): Session established I/mtpd ( 2224): Creating PPPoX socket F/mtpd ( 2224): Socket() Address family not supported by protocol 

Seguido por el mensaje de usuario: No se puede conectar a la red. ¿Quieres intentarlo de nuevo?

Mientras tanto en adb logcat

 E/VpnService( 2211): onError() E/VpnService( 2211): java.io.IOException: Connecting timed out E/VpnService( 2211): at com.android.server.vpn.VpnService.waitUntilConnectedOrTimedout(VpnService.java:206) E/VpnService( 2211): at com.android.server.vpn.VpnService.onConnect(VpnService.java:136) E/VpnService( 2211): at com.android.server.vpn.VpnServiceBinder$2.run(VpnServiceBinder.java:114) E/VpnService( 2211): at java.lang.Thread.run(Thread.java:1096) I/VpnService( 2211): disconnecting VPN... D/VpnSettings( 1527): received connectivity: Witopia: connected? DISCONNECTING err=0 I/SProxy_mtpd( 2211): Stop VPN daemon: mtpd D/SProxy_mtpd( 2211): mtpd is stopped after 0 msec D/SProxy_mtpd( 2211): stopping mtpd, success? true I/SProxy_racoon( 2211): Stop VPN daemon: racoon D/SProxy_racoon( 2211): racoon is stopped after 0 msec D/SProxy_racoon( 2211): stopping racoon, success? true D/VpnService( 2211): onFinalCleanUp() I/VpnService( 2211): restore original suffices --> null D/VpnSettings( 1527): received connectivity: Witopia: connected? IDLE err=101 

Supongo que esto es un problema de permiso o el emulador de Android no lo admite.

Mi plataforma es MacOSX, Emulator está ejecutando Android 2.2.

Esta pregunta está relacionada con:

  • Https://stackoverflow.com/questions/3223344/does-vpn-in-the-android-emulator-2-2work
  • Https://stackoverflow.com/questions/3442865/setting-up-a-vpn-in-the-emulator
  • El emulador androide accederá a una red usando un vpn en la máquina host

Sí, es como cuestión kernal:

  1. No hay módulo tun.ko (consulte http://forum.xda-developers.com/showthread.php?t=630703&page=2 )
  2. No hay soporte lkm (módulo de kernel cargable) (http://code.google.com/p/get-a-robot-vpnc/issues/detail?id=100)

Así que creo que necesitas un kernel personalizado http://code.google.com/p/batterymine/wiki/BuildingInModuleSupport

También necesitarás copiar al emulador otros módulos: slhc.ko, ppp * .ko

Tuve el mismo problema con un emulador 2.2. Cambié a un emulador 4.2 y está trabajando muy bien a través de la VPN.

  • Comando de voz para desbloquear la pantalla de Android
  • <P> estilo incorrecto a menos que se aplique el color de fondo
  • Problemas de rendimiento de Genymotion con Android 4.4.4, 5.0.0 y 5.1.0
  • Detenga el acceso a Internet en el emulador android
  • Cómo ejecutar el archivo .APK en el emulador
  • Android 2.2 SDK - Inseguro JavaScript intenta acceder al marco con la URL - Google Checkout
  • Actividades no exportadas: lanzadas en emuladores; SecurityException en los teléfonos
  • Envío y recepción de texto mediante el emulador de Android
  • ¿Cómo incrustar un diseño dentro de otro en mi caso?
  • Corrupción de la textura de Android opengl
  • Soporte URDU o Árabe en android para emulador y dispositivo
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.