Don't know if anyone else has tried this yet, but I am seeing if anyone else has gotten tun.ko working on their A500 for the openvpn? Evertime I insmod tun.ko it gives me the error "init_module 'tun.ko' failed (Exec format error)". I am assuming (from the other threads and webpages I've gone to) that we need to have one made specifcally for the a500? I also tried one that was said to be made for the xoom, that didn't work either. Things I've done... Rooted A500 Installed from Market "OpenVPN Installer" Installed Binary Installed from Market "OpenVPN Settings" Created Folder for ovpn settings and certs and copied files there. Installed Busybox Downloaded tun.ko (from get-a-robot-vpnc) Moved the file to the /system/lib/modules/ folder by remounting system with RW Insmod tun.ko (Result: init_module 'tun.ko' failed (Exec format error) Any help would be greatly appreciated UPDATED: Ok, so I am kind of a noob when it comes to working with Linux, but I got my OpenVPN to work on the A500. So figured I would share my process, by all means if I am wrong somewhere let me know but it's all working for me. Root First: xda-developers - View Single Post - *ROOTED*Rooting acer a500 Nice little step by step there, thanks monki-magic! Downloads: ** I put all of these unarchived into a folder on a USB thumb drive and transferred them that way. Huzzah for USB ports! A500 Modules ( Thanks to thor2002ro ) [DEV] A500 Kernel Modules - xda-developers Static OpenVPN http://github.com/downloads/fries/android-external-openvpn/openvpn-static.bz2 BusyBox If you did the root right you should already have this installed. OpenVPN Installer Obtained from Market OpenVPN Settings Obtained from Market Connectbot ( my preferred terminal access, you can use whatever you want for local commands ) Obtained from Market Step 1: Install OpenVPN Installer (Not sure if it's needed but I did it anyways because we're over-writing the library later) Step 2: Make needed Folders. Code: mkdir /system/xbin/bb mkdir /sdcard/openvpn Step 3: Remount your system folder rw First locate which block /system is mounted (mine was /dev/block/mmcblk0p3) Code: cat /proc/mounts | grep system Then remount as RW Code: mount -o remount,rw /dev/block/mmcblk0p3 /system Then to check if its right, you should see a RW in there... Code: cat /proc/mounts | grep system Step 4: Rename files that are about to be written over ( you never know ) Code: mv /system/xbin/openvpn /system/xbin/openvpn_old Step 5: Copy files over, this is assuming you're using a thumbdrive. Otherwise copy from wherever your files are. In this step we'll copy over your openvpn config files too. Code: cp /mnt/usb_storage/tun.ko /system/lib/modules/tun.ko cp /mnt/usb_storage/openvpn-static-2.1 /system/xbin/openvpn cp /mnt/usb_storage/myserver.opvn /sdcard/openvpn/myserver.ovpn cp /mnt/usb_storage/myserver.conf /sdcard/openvpn/myserver.conf Step 6: Change permissions (not sure if necessary but did it anyways) Code: chmod 755 /system/xbin/openvpn chmod 644 /system/lib/modules/tun.ko Step 7: Symbolic links to fix ifconfig/route issues... Code: ln -s /system/xbin/ifconfig /system/xbin/bb/ifconfig ln -s /system/xbin/route /system/xbin/bb/route Step 8: OpenVPN settings, this may vary depending on your OpenVPN server deployment... Open OpenVPN settings Press Menu button to get to "advanced" Check "Load tun kernel module" Open TUN module settings and set "load module using" to insmod Open TUN module settings and ensure path " /system/lib/modules/tun.ko " Check path to configurations " /sdcard/openvpn " (these are your .ovpn/.conf files) Check path to library " /system/xbin/openvpn " Once that is all configured and pointing to the correct locations. Drop back to the main menu of the OpenVPN settings. Check OpenVPN to start it up and then check the .conf file to start the connection up. Thats it! Note: One signifier that I noticed that ensured my connection was connected AND routing correctly is that I saw under the .conf file in OpenVPN settings the info " connected to <server ip> as <client ip> ". When I was troubleshooting it showed connected but the client ip wasn't showing and the routing wasn't working. When I got it all working both IP's showed up. Have fun!