Hi again Luca, Forgot to mention that the fixed app is already in Google Play and the code in github in case you want to update or take a look at the sources.
BTW, I didn't ask you but, what is the use case you are targeting? Having more than one EID in a MN is not the common use case :) Alberto On Tue, Dec 23, 2014 at 3:14 PM, Alberto Rodriguez-Natal <[email protected] > wrote: > Hi Luca, > > On Mon, Dec 22, 2014 at 3:32 PM, Luca Stornaiuolo < > [email protected]> wrote: > >> Hi Alberto, >> With the last edits the noroot works good. Indeed the problem was the >> json-c only. [image: 😊] I suppose that my problems were caused by the >> DNS. Now browsing is all right. >> > > That's great to hear! Glad to see that you finally made it work :) > >> >> Could you tell me some more about multiple EIDs support? I experienced >> that the same lispd.conf with more than one EID which works in Linux, is >> rejected by Android as "Wrong configuration" --as an >> IllegalArgumentException raised by the LISPmobVPNService's .configure(). >> Why (and where) is there the one EID limit? >> >> One of the things we noticed while doing multi-EID testing is that it is > not well supported on the NAT traversal infrastructure of the beta-network. > Since a MN will be likely behind a NAT, that is a strong drawback. However > that is not an architecture flaw and the infrastructure could be easily > update to support multiple EIDs while doing NAT traversal operation. > > Besides that, you need to be aware that LISPmob-Android-nonroot works > slightly different from LISPmob-Andoid-root (or from the other versions of > LISPmob for the rest of platforms). While the rest of LISPmob flavors > handle system networking stack directly (they create TUN interfaces, modify > routes and rules, etc), the nonroot version leverages on the VPN API > service provided by Google [1], i.e. it has no direct access to the > networking subsystem and relies on the VPN service to receive and forward > the packets. That's the price to pay to have LISPmob without root ;). For > fine-grain control of the networking system (and thus multi-EID support) > you'd probably have to use the root version. > > We have little experience with Android's VPN service and multi-EIDs but if > you are brave enough and nonroot is a must for you, then you can try to > hack something playing with the VPN service API ;) > > Hope this helps, > Alberto > > [1] https://developer.android.com/reference/android/net/VpnService.html > > >> Thanks, >> Luca >> ------------------------------ >> Da: Alberto Rodriguez-Natal <[email protected]> >> Inviato: ‎19/‎12/‎2014 00.42 >> A: Luca Stornaiuolo <[email protected]> >> Cc: LISPmob <[email protected]> >> >> Oggetto: Re: [LISPmob-users] [Contactus-android] [Android] Beta network >> EID >> >> Hi Luca, >> >> On Thu, Dec 18, 2014 at 12:33 PM, Luca Stornaiuolo < >> [email protected]> wrote: >>> >>> Thank you Alberto, >>> >>> >>> I managed to fix that bug too editing the LISPmob_JNI.java adding: >>> >>> static { >>> System.loadLibrary("json-c"); >>> } >>> >>> before the lispd one, and renaming the call in lispd_jni.h as following: >>> >>> JNIEXPORT jintArray JNICALL >>> Java_org_lispmob_noroot_LISPmob_JNI_startLispd >>> (JNIEnv * env, jclass cl, jint vpn_tun_fd, jstring storage_path); >>> >>> or, at least, this way the daemon started... *:-)* >>> >>> May I get the sources of the last version (0.4.2)? >>> >> Sure! We'll upload them ASAP to github. Note that the only difference >> from what is already on github is the fix for the bug you detected, the >> rest remains the same. >> >>> Anyway, even with the apk that you kindly sent me, when I try to reach >>> lispmon.net the browser just freeze *:-( * >>> >> Actually, I believe that what Lori was suggesting was to try to ping some >> of the LISP sites that appear on the map in lispmon.net, not to ping the >> website itself :) >> >>> If it could be of some relevance, looking the log [Android]: >>> Map Notify confirms correct registration of the prefix 153.16.51.48/32 >>> >> >> Great! That means that at least you are correctly registering into the >> MapServer. >> >> So where could be the problem? In router mode? Because right now on >>> Linux (3G<->VirtualRouter<->WiFi<->Ubuntu) it works perfectly (I had >>> troubles some days ago), but only if router mode = on. In router mode = >>> off, I get only this [Linux]: >>> >>> get_rloc_from_balancing_locator_vec: Source and destination RLOCs have >>> different AFI >>> >>> and nothing more *:-(* >>> >> Could you give us a bit more of detail? If you can send us the complete >> level 3 logs (./lispd -d 3), your config (lispd.conf) and some info about >> your system (such what "ip address" and "ip route" commands show) we'll try >> to get into it. >> >>> My project is to extend the LISPmob noroot version in order to enable >>> multiple EIDs on the same interface in a MN scenario. Do you have some >>> hints? >>> >> We have looked into that in the past. I'll get back to you shortly with >> more details. >> >>> Again, many thanks, >>> >> No problem! We're glad to help :) >> >> Best, >> Alberto >> >>> Luca >>> >>> >>> ------------------------------ >>> *Da:* Alberto Rodriguez-Natal <[email protected]> >>> *Inviato:* lunedì 15 dicembre 2014 15:40 >>> *A:* Lori Jakab >>> *Cc:* Luca Stornaiuolo; LISPmob >>> *Oggetto:* Re: [LISPmob-users] [Contactus-android] [Android] Beta >>> network EID >>> >>> Hi Luca, >>> >>> Regarding the Android issue, please see below. >>> >>> On Mon, Dec 15, 2014 at 2:51 PM, Lori Jakab <[email protected]> wrote: >>>> >>>> Hi Luca, >>>> >>>> Adding the lispmob-users mailing list, since I'm not familiar with the >>>> Android build system of LISPmob. Answers to some of the other questions >>>> below. >>>> >>>> On 12/13/2014 05:55 PM, Luca Stornaiuolo wrote: >>>> > Hi Lori, >>>> > in these days I'm testing LISPmob noroot with no luck at all. >>>> > I tried the Play Store one and I tried to build it myself with the >>>> same >>>> > result: crash when I try to start the lispd. >>>> > On Sony Xperia ST27i, Android 4.1.2, I got the following: >>>> > >>>> > java.lang.ExceptionInInitializerError >>>> > >>>> > at org.lispmob.noroot.LISPmobVPNService.run(LISPmobVPNervice.java:123) >>>> > >>>> > at java.lang.Thread.run(Thread.java:856) >>>> > >>>> > Caused by: java.lang.UnsatisfiedLinkError: Cannot load library: >>>> > link_image[1891]: 1416 could not load needed library 'libjson-c.so' >>>> for >>>> > 'liblispd.so' (load_library[1093]: Library 'libjson-c.so' not found) >>>> > >>>> > at java.lang.Runtime.loadLibrary(Runtime.java:370) >>>> > >>>> > at java.lang.System.loadLibrary(System.java: 535) >>>> > >>>> > at org.lispmob.noroot.LISPmob_JNI.<clinit>(LISPmob_JNI.java:12) >>>> > ... 2 more >>>> > >>>> > I'm quite new to Android but I think that the reason may be in >>>> > LISPmob_JNI.java (which shouldn't explicitly load libjson-c? I found >>>> > this >>>> > < >>>> http://stackoverflow.com/questions/21051486/java-lang-unsatisfiedlinkerror-cannot-load-library >>>> >). >>>> > >>>> > >>>> >>> >>> We have encountered this problem before, and fortunately for you it >>> has been already fixed ;). However we are yet to upload the fixed app to >>> Google Play. On the meantime you can use the attached .apk which should >>> work fine. Keep us updated of your progress! >>> >>> Thanks, >>> Alberto >>> >> >
