I think that the solution I have proposed will work for IPv4 but not for
IPv6. Anyway If you could tell us if it works for IPv4 it will be great.
Thanks
Albert
On 03/25/2014 12:20 PM, Albert López wrote:
Hi Martin,
Could you try to replace IFA_ADDRESS by IFA_LOCAL in the file
lispd_iface_mgmt.c (I think that is just two lines) ? We couldn't
test it but according to netlink documentation it should work. Let us
know the result in order to add the fix to github.
Regards
Albert
On 03/24/2014 07:07 PM, Martin Grabner wrote:
Hello,
It seems to work with ny quick and dirty fix by adding this code to
"is_link_local_address" to lisps_lib.c
inet_pton(AF_INET,"10.64.64.64",&(ipv4_network));
inet_pton(AF_INET,"255.255.255.255",&(mask));
if ((addr.address.ip.s_addr & mask) == ipv4_network){
is_link_local = TRUE;
}
Maybe you can option in config file to ignore RFC1918 IPs?
Regards
Martin
*Gesendet:* Donnerstag, 20. März 2014 um 14:54 Uhr
*Von:* "Albert López" <[email protected]>
*An:* "Martin Grabner" <[email protected]>, [email protected]
*Betreff:* Re: [LISPmob-users] LISPmob and 3G stick reconnect issue
Hi Martin,
We have never found this problem. We will try to reproduce it and fix
it. Thanks for your fed back.
Regards
Albert L.
On 03/19/2014 10:17 PM, Martin Grabner wrote:
Hi,
I’ve a problem with LISPmob on OpenWRT, that occurs when the 3G
Stick is reconnecting. After reconnect LISPmob uses 10.64.64.64
(actually the default Gateway of this connection) as new RLOC and
also pushes that information to the Map Servers of the beta
network. I used the default web interface of OpenWRT 12.09 to
configuring the 3G connection. A restart of LISPmob is the only
way to fix it. Here are some informations and a log snippet:
ifconfig (before reconnect):
3g-drei Link encap:Point-to-Point Protocol
inet addr:178.113.1.33 P-t-P:10.64.64.64
Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
ifconfig (after reconnect):
3g-drei Link encap:Point-to-Point Protocol
inet addr:178.113.103.101 P-t-P:10.64.64.64
Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
route:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.64.64.64 0.0.0.0 UG 10 0
0 3g-drei
10.64.64.64 * 255.255.255.255 UH 0 0
0 3g-drei
snippet from Debug-2 log after forcing reconnect via OpenWRT web
interface:
DEBUG-2: =>process_netlink_msg: Received link message
DEBUG-2: process_nl_new_link: The new index of the interface
3g-drei is: 72. Updating tables
DEBUG: del_rule: Removed rule in ip rule table for source routing
of src prefix: 178.113.1.33/32
DEBUG: add_rule: Added rule in ip rule table for source routing
of src prefix: 178.113.1.33/32
DEBUG-2: open_device_binded_raw_socket: open socket 6 in
interface 3g-drei with afi: 2
WARNING: bind_socket_src_address: Cannot assign requested address
DEBUG: process_nl_new_link: Interface 3g-drei changes its status
to DOWN
DEBUG-2: process_link_status_change: The detected change of
status doesn't affect
DEBUG-2: =>process_netlink_msg: Received link message
DEBUG: process_nl_new_link: Interface 3g-drei changes its status
to DOWN
DEBUG-2: process_link_status_change: The detected change of
status doesn't affect
DEBUG-2: Finish pocessing netlink message
DEBUG-2: =>process_netlink_msg: Received new address message
DEBUG: del_rule: Removed rule in ip rule table for source routing
of src prefix: 178.113.1.33/32
DEBUG: add_rule: Added rule in ip rule table for source routing
of src prefix: 178.113.103.101/32 <— The real new IP/RLOC
DEBUG: precess_address_change: New address detected for interface
3g-drei -> 178.113.103.101 <— The real new IP/RLOC
DEBUG-2: =>process_netlink_msg: Received new route message
DEBUG-2: =>process_netlink_msg: Received del address message <— Why?
DEBUG-2: deleted address: 178.113.103.101 <— The real new IP/RLOC
DEBUG-2: =>process_netlink_msg: Received new address message
DEBUG: del_rule: Removed rule in ip rule table for source routing
of src prefix: 178.113.103.101/32
DEBUG: add_rule: Added rule in ip rule table for source routing
of src prefix: 10.64.64.64/32 <— Problem
WARNING: bind_socket_src_address: Cannot assign requested address
DEBUG: precess_address_change: New address detected for interface
3g-drei -> 10.64.64.64 <— Problem
DEBUG-2: =>process_netlink_msg: Received new route message
DEBUG-2: =>process_netlink_msg: Received link message
DEBUG: process_nl_new_link: Interface 3g-drei changes its status
to UP
DEBUG-2: Default control interface down. Recalculate new control
interface
DEBUG-2: Default IPv4 control iface 3g-drei: 10.64.64.64 <— Problem
What can I do that LISPmob doesn’t use the wrong IP as RLOC?
Regards
Martin