[hipl-users] Re: IPv6 address in LOCATOR parameter and mobility

  • From: Miika Komu <miika.komu@xxxxxxx>
  • To: hipl-users@xxxxxxxxxxxxx
  • Date: Fri, 26 Jun 2009 14:03:23 +0300

Leo Martinez wrote:

Hi Leo,

sorry for long response time, I've got a long queue of tasks...

Hello everyone,

I've being doing some tests of mobility and the UPDATE messages on HIPL and I have a question regarding the format and of the address field in the LOCATOR parameter, since it does not represent the addresses available on the interfaces of the initiators and responders involved in my tests (I'm using wireshark and the patch procedure provided by samu in the source code to view the traces).

Are you using the latest version of the wireshark patches? See my previous email.

Also, I've noticed that the nodes involved simply won't send the UPDATE messages for ECHO_REQUEST and ECHO_RESPONSE to the corresponding IPv6 global addresses used during the BE and the conntest tests (chapter 10 of the manual), the UPDATE messages are sent to the IPv4 addresses of the nodes.

    * Is this behaviour (sending UPDATE messages for ECHO_REQUEST and
      ECHO_RESPONSE by the IPv4 addresses ONLY) normal in the hipl
      implementation?

No.

    * Does the address given by the locator (hipcong locator get) is
      always an IPv4 address?

No.

    * Chapter 12 (Testing Handover) of the manual suggests to /"Make
      sure to add the route for the new address as soon as the new
      address is added. If the route is missing, the update packets
      might not get sent at all. The daemon waits for a couple of
      seconds if a transmit of an update fails for restransmitting it."/
      How can this be achieved?

If you add an IPv4 address, the kernel doesn't necessarily any route for it. You can add the route with "ip route" or "route" commands.

After the UPDATE messages are exchanged, I check the SAs (hipconf get ha all) and noticed the IP addresses changed from the original global IPv6 to the IPv4 addresses of the nodes and after that, no more messages reach the conntest-server.

I tried the following:

hipconf add map HIT 3ffe::1
ping6 HIT
ip addr del 3ffe::2/64 dev wlan0 # delete local ipv6 address
ip addr add 3ffe::3/64 dev wlan0

This didn't involve any IPv4 addressing for mobility, albeit I noticed another bug which I plan to fix.

I'd appreciate your comments based on your experiences guys in order to understand the locator parameter, why there is no exchange of data between nodes when the locator parameter is on (hipconf locator on) and why I can't seem to achieve mobility.

Turn locator off to avoid introducing IPv4 addresses for HIP if you want to just to play with IPv6. The locator parameter is an unstable feature and it is therefore disabled by default.

Btw, Baris is improving the mobility code. I'll merge new features from his branch to the main stream as they get more mature. I assume that this will occur in August.

- I'm using kernel 2.6.28-11-generic
- the hipd_config file has only the following options uncommented:

    * hit-to-ip off
    * nsupdate off
    * opendht off
    * heartbeat 0
    * locator on
    * nat none
    * debug all

- The are the iptables configured in the node:
iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination HIPFW-INPUT all -- 0.0.0.0/0 <http://0.0.0.0/0> 0.0.0.0/0 <http://0.0.0.0/0> Chain FORWARD (policy ACCEPT) target prot opt source destination HIPFW-FORWARD all -- 0.0.0.0/0 <http://0.0.0.0/0> 0.0.0.0/0 <http://0.0.0.0/0> Chain OUTPUT (policy ACCEPT) target prot opt source destination HIPFW-OUTPUT all -- 0.0.0.0/0 <http://0.0.0.0/0> 0.0.0.0/0 <http://0.0.0.0/0> Chain HIPFW-FORWARD (1 references) target prot opt source destination Chain HIPFW-INPUT (1 references) target prot opt source destination Chain HIPFW-OUTPUT (1 references) target prot opt source destination QUEUE all -- 0.0.0.0/0 <http://0.0.0.0/0> 1.0.0.0/8 <http://1.0.0.0/8>
- And the ip6tables configured are:

Chain INPUT (policy ACCEPT)
target prot opt source destination HIPFW-INPUT all ::/0 ::/0 Chain FORWARD (policy ACCEPT) target prot opt source destination HIPFW-FORWARD all ::/0 ::/0 Chain OUTPUT (policy ACCEPT) target prot opt source destination HIPFW-OUTPUT all ::/0 ::/0 Chain HIPFW-FORWARD (1 references) target prot opt source destination Chain HIPFW-INPUT (1 references) target prot opt source destination QUEUE all ::/0 2001:10::/28 Chain HIPFW-OUTPUT (1 references) target prot opt source destination - Meanwhile, the only processes I have runing for hip are (ps aux | grep hip) nobody 5955 0.0 0.0 13776 1560 pts/1 S+ 16:55 0:00 hipfw -klpAF
nobody   11656  0.0  0.0  14668  2560 pts/2    S+   17:45   0:00 hipd -k

- No dns proxies are active (ps aux | grep dns)
root     14204  0.0  0.0   3336   804 pts/5    S+   18:08   0:00 grep dns



Other related posts: