0.9.7.997 and DUID



Forget my other message because I want to start fresh.

I enable DEBUG logging which gets me more correct info as to what is going on. The following are the relevant log message:
--------------------------------------------------------------------
Feb 12 11:37:08 hawk NetworkManager[5693]: <info> Activation (p5p1) Stage 3 of 5 (IP Configure Start) starting DHCPv6 as requested by IPv6 router...
-------------
Feb 12 11:37:08 hawk NetworkManager[5693]: <debug> [1360687028.778061] [nm-dhcp-dhclient.c:644] get_duid(): Looking for DHCPv6 DUID in '/var/lib/NetworkManager/dhclient6-14635fbe-a487-435e-bfba-9edace13e382-p5p1.lease'.
-----------------------------------
Feb 12 11:37:08 hawk NetworkManager[5693]: <debug> [1360687028.778138] [nm-dhcp-dhclient.c:658] get_duid(): Looking for default DHCPv6 DUID in '/etc/dhclient6.leases'.
--------------------------------------
Feb 12 11:37:08 hawk NetworkManager[5693]: <debug> [1360687028.778355] [nm-dhcp-client.c:442] nm_dhcp_client_start_ip6(): (p5p1): DHCPv6 DUID is '00:03:00:01:00:21:91:19:94:f3'
------------------------------
Feb 12 11:37:08 hawk NetworkManager[5693]: <info> Activation (p5p1) Beginning DHCPv6 transaction (timeout in 45 seconds) Feb 12 11:37:08 hawk NetworkManager[5693]: <debug> [1360687028.980172] [nm-dhcp-dhclient.c:545] dhclient_start(): running: /sbin/dhclient -d -6 -N -sf /usr/libexec/nm-dhcp-client.action -pf /var/run/dhclient6-p5p1.pid -lf /var/lib/NetworkManager/dhclient6-14635fbe-a487-435e-bfba-9edace13e382-p5p1.lease -cf /var/lib/NetworkManager/dhclient6-p5p1.conf p5p1
-----------------------------------------------------------------------------------------------------------------
Here is my analysis as to what is happening:

1. in nm-dhcp-client.c nm_dhcp_client_start_ip6() calls get_duid() in nm-dhcp-dhclient.c

2. get_duid() tries /var/lib/NetworkManager/dhclient6-14635fbe-a487-435e-bfba-9edace13e382-p5p1.lease but that file does not exist (apparently this is not an error since there is no log message.

3. The get_duid() tries /etc/dhclient6.leases

4. There is obvious success because back in nm_dhcp_client_start_ip6() a log message is issued with the default-duid from /etc/dhclient6.leases

Now the problems as I see them:

1. in get_duid() in nm-dhcp-dhclient.c needs to check if the specific lease file exists. If it does not AND if it was able to get a default-duid from on the the def_leasefiles, then it should write that default-duid to the specific lease file. This is the only place where the needed information to make the decision exists.

Ok, this should take care of the first part of the problem.

2. in nm-dhcp-client.c nm_dhcp_client_start_ip6() does not test the result of the call to get_duid() in nm-dhcp-dhclient.c. It could be that no default-duid was found. In this case, the get_duid() in nm-dhcp-client.c should be called to generate a duid-UUID.

Comments?

Gene


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]