<div dir="ltr">Hi Albert,<div><br></div><div>Thanks again for the help. We are using Android 5.0.2, and when the ./liboor.so command is executed without any errors, nothing is written to the OOR log file. Does the current version of the OOR code work for your rooted Android devices? </div><div><br></div><div>Thanks,</div><div>Kevin</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Mar 29, 2017 at 4:44 AM, Albert López <span dir="ltr"><<a href="mailto:alopez@ac.upc.edu" target="_blank">alopez@ac.upc.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<div class="m_7718028606098474153moz-cite-prefix">[--- Changed maintainers by devel
mailing list ---]<br>
<br>
Hi Kevin,<br>
<br>
OOR in root mode works like the linux version of OOR.<br>
<br>
<ul>
<li>We define the RLOC interfaces in the configuration file</li>
<li>We obtain the IP address and the gateway associated with
the interface (OOR needs to have a gateway defined for each
interface despite they have different metric)</li>
<li>Add two routes to get all the traffic and overpass the
gateways:</li>
<ul>
<li><!-- <a href="http://0.0.0.0/1" target="_blank"> -->0.0.0.0/1<!-- </a> --> dev lispTun0 proto static</li>
<li><!-- <a href="http://128.0.0.0/1" target="_blank"> -->128.0.0.0/1<!-- </a> --> dev lispTun0 proto static</li>
</ul>
<li>Assign EID to the lispTun0 interface</li>
<li>For each RLOC address we create a new routing table with a
higher priority than the main table . We send to this table
all packets with source address the RLOC IP.</li>
<li>We add to the new table the gateway route associated with
the RLOC interface -> Once the packet is encapsulated will
be reach this table and sent through the gateway</li>
<li>Same process for IPv6<br>
</li>
</ul>
Example once OOR is started:<br>
<br>
## ifconfig<br>
eth0 Link encap:Ethernet HWaddr 00:0c:29:c2:84:b0 <br>
inet addr:8.88.81.70 Bcast:84.88.81.79
Mask:255.255.255.240<br>
inet6 addr: fe80::20c:29ff:fec2:84b0/64 Scope:Link<br>
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br>
RX packets:1234255 errors:0 dropped:0 overruns:0 frame:0<br>
TX packets:339517 errors:0 dropped:0 overruns:0
carrier:0<br>
collisions:0 txqueuelen:1000 <br>
RX bytes:174935927 (174.9 MB) TX bytes:65482397 (65.4
MB)<br>
<br>
lispTun0 Link encap:UNSPEC HWaddr
00-00-00-00-00-00-00-00-00-00-<wbr>00-00-00-00-00-00 <br>
inet addr:153.16.30.48 P-t-P:153.16.30.48
Mask:255.255.255.255<br>
UP POINTOPOINT RUNNING MTU:1440 Metric:1<br>
RX packets:0 errors:0 dropped:0 overruns:0 frame:0<br>
TX packets:4 errors:0 dropped:0 overruns:0 carrier:0<br>
collisions:0 txqueuelen:500 <br>
RX bytes:0 (0.0 B) TX bytes:248 (248.0 B)<br>
<br>
lo Link encap:Local Loopback <br>
inet addr:127.0.0.1 Mask:255.0.0.0<br>
inet6 addr: ::1/128 Scope:Host<br>
UP LOOPBACK RUNNING MTU:65536 Metric:1<br>
RX packets:0 errors:0 dropped:0 overruns:0 frame:0<br>
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0<br>
collisions:0 txqueuelen:0 <br>
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)<br>
<br>
# ip route<br>
<!-- <a href="http://0.0.0.0/1" target="_blank"> -->0.0.0.0/1<!-- </a> --> dev lispTun0 proto static <br>
default via 8.88.81.65 dev eth0 metric 10 <br>
<!-- <a href="http://8.88.81.64/28" target="_blank"> -->8.88.81.64/28<!-- </a> --> dev eth0 proto kernel scope link src 8.88.81.70 <br>
<!-- <a href="http://128.0.0.0/1" target="_blank"> -->128.0.0.0/1<!-- </a> --> dev lispTun0 proto static <br>
<br>
# ip rule<br>
0: from all lookup local <br>
2: from 8.88.81.70 lookup 2 <br>
32766: from all lookup main <br>
32767: from all lookup default <br>
<br>
# ip route show table 2<br>
default via 8.88.81.65 dev eth0 proto static metric 100 <br>
<br>
<br>
We obtain the gateway from the main routing table.<br>
<br>
Previous to Android version 6, the routing in Android worked like
in Linux (what I explained before). From Android 6 this has
changed. The gateway of the interfaces is no longer stored in the
main routing table. Instead of this, a new table is created for
each interface and it is in this table where the gateway is
stored. For instance, I show you the information of my phone (OOR
is not running):<br>
<br>
$ ip route<br>
<!-- <a href="http://10.61.76.252/30" target="_blank"> -->10.61.76.252/30<!-- </a> --> dev rmnet_data0 proto kernel scope link src
10.61.76.253<br>
<br>
$ ip rule<br>
0: from all lookup local <br>
10000: from all fwmark 0xc0000/0xd0000 lookup 99 <br>
10500: from all oif dummy0 uidrange 0-0 lookup 1002 <br>
10500: from all oif rmnet_data0 uidrange 0-0 lookup 1012 <br>
13000: from all fwmark 0x10063/0x1ffff lookup 97 <br>
13000: from all fwmark 0x10068/0x1ffff lookup 1012 <br>
14000: from all oif dummy0 lookup 1002 <br>
14000: from all oif rmnet_data0 lookup 1012 <br>
15000: from all fwmark 0x0/0x10000 lookup 99 <br>
16000: from all fwmark 0x0/0x10000 lookup 98 <br>
17000: from all fwmark 0x0/0x10000 lookup 97 <br>
19000: from all fwmark 0x68/0x1ffff lookup 1012 <br>
22000: from all fwmark 0x0/0xffff lookup 1012 <br>
23000: from all fwmark 0x0/0xffff uidrange 0-0 lookup main <br>
32000: from all unreachable<br>
<br>
$ ip route show table 1012<br>
default via 10.61.76.254 dev rmnet_data0 proto static <br>
<br>
<br>
If you check the OOR log file you will see that the system is not
able to find the gateway and as a consequence it can not finish
with the process I explained before.<br>
Here you have two options. Use a device with an Android version
previous to 6 to focus in your case or try to solve this problem.
If you try to solve it, considerer that you not only have to know
the gateway but also detect the change of gateway through netlink.<br>
<br>
Another thing you should know is that the netconf module to
configure OOR while runing is only available in Linux. If you want
to change OOR configuration in Android ( add a new RLOC interface,
change MS, change EID ...), you have to restart OOR.<br>
<br>
If OOR stops without reason, the first thing to check is the log
file to try to find any clue.<br>
<br>
Best regards<br>
<br>
Albert<br>
<br>
<br>
<br>
<br>
El 29/03/17 a les 06:31, Kevin Shen ha escrit:<br>
</div><div><div class="h5">
<blockquote type="cite">
<div dir="ltr">Hi Albert,
<div><br>
</div>
<div>Thanks a lot for the help. We are now trying to get the
rooted version of OOR working on Android, but whenever we tap
the checkbox to run OOR, the service icon quickly appears and
disappears in the status bar. </div>
<div><br>
</div>
<div>We made sure that the NDK generated library liboor.so was
copied over to OOR's app data in the lib/ folder, and that the
command ./liboor.so was executed without any error message
from the shell or exception thrown in the Java code. The
device we are using is properly rooted. However, the
OORService still quits immediately, which could mean
./liboor.so terminates right away.</div>
<div><br>
</div>
<div>Do you maybe have any insight on this issue? If possible,
we would also be willing to Skype at any time to solve this.
We really appreciate all the time you've taken to help us with
OOR. Thanks so much!</div>
<div><br>
</div>
<div>Best Regards,</div>
<div>Kevin</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Mon, Mar 27, 2017 at 4:13 AM, Albert
López <span dir="ltr"><<a href="mailto:alopez@ac.upc.edu" target="_blank">alopez@ac.upc.edu</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<div class="m_7718028606098474153m_-9033851212241776904moz-cite-prefix">Hi
Kevin,<br>
<br>
You should select the interface that has an IP assigned.
In my device the name is rmnet_data0. You can check it
using "ip address" from a terminal (if you have wifi on,
the data interface may not have an IP assigned). If you
still have problems, you can send me the logs file
located in your storage card (oor.log). <br>
<br>
Best regards<br>
<br>
Albert<br>
<br>
El 24/03/17 a les 12:13, Kevin Shen ha escrit:<br>
</div>
<div>
<div class="m_7718028606098474153h5">
<blockquote type="cite">
<div dir="ltr">Hi Albert,
<div><br>
</div>
<div>Thanks so much for the help! We managed to
successfully ping an EID with the wlan0 Wi-Fi
interface, but for some reason the rmnet0 LTE
interface doesn't work. Would you mind taking a
look at the screenshot attached? We are using a
device running Android 6, if that makes a
difference. Thanks in advance - we really
appreciate your time.</div>
<div><br>
</div>
<div>Best Regards,</div>
<div>Kevin</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Thu, Mar 23, 2017 at
5:29 AM, Albert López <span dir="ltr"><<a href="mailto:alopez@ac.upc.edu" target="_blank">alopez@ac.upc.edu</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<div class="m_7718028606098474153m_-9033851212241776904m_105837505510758388moz-cite-prefix">Hi
Kevin,<br>
<br>
<br>
El 23/03/17 a les 02:31, Kevin Shen ha
escrit:<br>
</div>
<span>
<blockquote type="cite">
<div dir="ltr">Hi Albert,
<div><br>
</div>
<div>Thanks a lot for setting it up! </div>
<div><br>
</div>
<div>We've entered the configuration
into the OOR Android app and
successfully registered into the
LISP Site Status page. However, when
we ping active EIDs, we don't get
any response. It works when we use
Wi-Fi/LTE without OOR enabled.
Attached are screenshots of the
configuration. <br>
</div>
</div>
</blockquote>
</span> I think you have selected the wrong
intrefaces in the RLOC interface selection.
You should select something like wlan0,
rmnet0 (the interfaces with an IP selected).
If your RLOCs are behind NAT, you will need
to select NAT Traversal Aware. <span>
<blockquote type="cite">
<div dir="ltr">
<div><br>
</div>
<div><span style="font-size:12.8px">Our
use case is: developing an API
which when triggered with
necessary parameters can
seamlessly transition over
heterogeneous networks using LISP.</span><br>
</div>
<div><br>
</div>
</div>
</blockquote>
</span> I am not an expert in Android but
the last time we tried to select the output
interface we couldn't. By default Android
only have one active interface that you can
not select (if you are connected to wifi I
think you can not choose to use the LTE
interface to send data). May be it is
possible to do it if you have a rooted
device but we didn0t have time to work with
this. On the other hand, we only have
support for root devices for Android
versions previous to 6. Android 6 and above
changed the way to implement the network and
we haven't had time to adapt OOR to it. For
this devices we only support the none root
version of OOR which is based on the VPN API
of Android. As far as I know, with VPN API
you can not select the output interface.<br>
<br>
Best regards<span class="m_7718028606098474153m_-9033851212241776904HOEnZb"><font color="#888888"><br>
<br>
Albert</font></span>
<div>
<div class="m_7718028606098474153m_-9033851212241776904h5"><br>
<blockquote type="cite">
<div dir="ltr">
<div>Any help would be greatly
appreciated. Thanks in advance! </div>
<div><br>
</div>
<div>Best Regards,</div>
<div>Kevin Shen</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Mon, Mar
20, 2017 at 5:21 AM, Albert López
<span dir="ltr"><<a href="mailto:alopez@ac.upc.edu" target="_blank">alopez@ac.upc.edu</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<div class="m_7718028606098474153m_-9033851212241776904m_105837505510758388m_-1200784778883405156moz-cite-prefix">Dear
Kevin,<br>
<br>
Here's your allocation data:<br>
<br>
Device name: columbia-xtr<br>
Region: US-East<br>
Geographic location: New
York - USA<br>
EID-prefix:
<!-- <a href="http://153.16.29.128/28" target="_blank"> -->153.16.29.128/28<!-- </a> -->
(more specifics allowed)<br>
EID loopback: 153.16.29.129<br>
EID-prefix ipv6:
2610:D0:1153::/48 (more
specifics allowed)<br>
EID loopback ipv6:
2610:D0:1153::153:16:29:129<br>
Map Servers: {ARIN}
{cisco-sjc-mr-ms-1
173.36.254.164,
eqx-ash-mr-ms
206.223.132.89}<br>
Map Server password:
wju6C2ZjV3<br>
Map Resolvers: {ARIN}
{cisco-sjc-mr-ms-1
173.36.254.164,
eqx-ash-mr-ms
206.223.132.89}<br>
PETR: 69.31.31.98<br>
Contact: Kevin Shen <a class="m_7718028606098474153m_-9033851212241776904m_105837505510758388m_-1200784778883405156moz-txt-link-rfc2396E" href="mailto:ks3206@columbia.edu" target="_blank"><ks3206@columbia.edu></a><br>
Expiration date: 30/06/2017<br>
<br>
Please take a look at the
`oor/oor.conf.example` file
in the source distribution
to see how to build a
configuration from the above
data. You can check if you
correctly registered your
site into the mapping system
on the LISP Site Status page
here: <a class="m_7718028606098474153m_-9033851212241776904m_105837505510758388m_-1200784778883405156moz-txt-link-freetext" href="http://www.lisp4.net/lisp-site/" target="_blank">http://www.lisp4.net/lisp-site<wbr>/</a>
After one day it will
probably show up on the
LISPmon website as well: <a class="m_7718028606098474153m_-9033851212241776904m_105837505510758388m_-1200784778883405156moz-txt-link-freetext" href="http://lispmon.net" target="_blank">http://lispmon.net</a><br>
<br>
You can slice up your
prefixes into more specifics
and distribute them between
more than one device if that
becomes necessary, just make
sure they don’t overlap.<br>
<br>
If you have any issues or
questions, please post to
the users mailing list for
support, or join
#openoverlayrouter on
Freenode for more
interactive help. <a class="m_7718028606098474153m_-9033851212241776904m_105837505510758388m_-1200784778883405156moz-txt-link-freetext" href="http://webchat.freenode.net/?randomnick=1channels=#openoverlayrouter&prompt=1" target="_blank">http://webchat.freenode.net/?r<wbr>andomnick=1channels=#openoverl<wbr>ayrouter&prompt=1</a><br>
<br>
The assigned EIDs will
expire the 30 of June of
2017. You can request to
renew them by mail.<br>
<br>
Best regards,<br>
<br>
Albert <br>
<br>
<br>
PS: Notice that OOR for
Android is limited to one
active interface. The other
ones are in backup mode<br>
<br>
<br>
<br>
<br>
El 20/03/17 a les 00:40,
Kevin Shen ha escrit:<br>
</div>
<blockquote type="cite">
<div>
<div class="m_7718028606098474153m_-9033851212241776904m_105837505510758388h5">
<div dir="ltr">Dear
OpenOverlayRouter
Team,
<div><br>
</div>
<div>My name is Kevin
Shen, and I am a
student at Columbia
University
conducting research
with Prof. Henning
Schulzrinne. My team
and I are interested
in the beta network
because we are
working on seamless
transitioning
between
heterogeneous
networks. Here is
the information
requested:</div>
<div><br>
</div>
<div>Full name: Kevin
Shen</div>
<div>Geographical
location: New York,
NY</div>
<div>Flavor of OOR:
Android</div>
<div>Make/model:
SM-G935U (Samsung
Galaxy S7 Edge)</div>
<div>Use cases:
Mobility</div>
<div>How we learned
about OOR: Research
paper on multihoming
protocols<br clear="all">
<div><br>
</div>
<div>Please let me
know if you need
anything else.
Thanks so much!</div>
<div><br>
</div>
Best Regards,<br>
<div class="m_7718028606098474153m_-9033851212241776904m_105837505510758388m_-1200784778883405156gmail_signature" data-smartmail="gmail_signature">
<div dir="ltr">Kevin
Shen
<div>Columbia
University |
Class of 2018</div>
<div>B.S.
Candidate in
Computer
Science</div>
</div>
</div>
</div>
</div>
<br>
<fieldset class="m_7718028606098474153m_-9033851212241776904m_105837505510758388m_-1200784778883405156mimeAttachmentHeader"></fieldset>
<br>
</div>
</div>
<pre>______________________________<wbr>_________________
Maintainers mailing list
<a class="m_7718028606098474153m_-9033851212241776904m_105837505510758388m_-1200784778883405156moz-txt-link-abbreviated" href="mailto:Maintainers@mail.openoverlayrouter.org" target="_blank">Maintainers@mail.openoverlayro<wbr>uter.org</a>
<a class="m_7718028606098474153m_-9033851212241776904m_105837505510758388m_-1200784778883405156moz-txt-link-freetext" href="http://mail.openoverlayrouter.org/cgi-bin/mailman/listinfo/maintainers" target="_blank">http://mail.openoverlayrouter.<wbr>org/cgi-bin/mailman/listinfo/m<wbr>aintainers</a>
</pre>
</blockquote>
</div>
</blockquote></div>
<div>
</div>--
<div class="m_7718028606098474153m_-9033851212241776904m_105837505510758388gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Kevin Shen <div>Columbia University | Class of 2018</div><div>B.S. Candidate in Computer Science</div></div></div>
</div>
</blockquote>
<p>
</p></div></div><pre class="m_7718028606098474153m_-9033851212241776904m_105837505510758388moz-signature" cols="72">-</pre></div></blockquote></div>
<div>
</div>--
<div class="m_7718028606098474153m_-9033851212241776904gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Kevin Shen <div>Columbia University | Class of 2018</div><div>B.S. Candidate in Computer Science</div></div></div>
</div>
</blockquote>
<p>
</p></div></div></div></blockquote></div>
<div>
</div>--
<div class="m_7718028606098474153gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Kevin Shen <div>Columbia University | Class of 2018</div><div>B.S. Candidate in Computer Science</div></div></div>
</div>
</blockquote>
</div></div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Kevin Shen <div>Columbia University | Class of 2018</div><div>B.S. Candidate in Computer Science</div></div></div>
</div>