I don’t understand well everything you suggest me to do but I managed to narrow slightly the problem with dhcpcd...
I customized dhcpcd-eth0.info without alternating LEASEDFROM, LEASETIME, RENEWALTIME and REBINDTIME settings:
# cat /etc/dhcpc/dhcpcd-eth0.info
Code:
IPADDR='192.168.1.6'
NETMASK='255.255.255.0'
NETWORK='192.168.0.0'
BROADCAST='192.168.1.255'
LEASEDFROM='0'
LEASETIME='20'
RENEWALTIME='10'
REBINDTIME='17'
INTERFACE='eth0'
CLASSID='dhcpcd 3.2.3'
CLIENTID='ff:65:74:68:30:00:01:00:01:12:38:df:95:ba:be:de:ad:ab:ed'
DHCPCHADDR='ba:be:de:ad:ab:ed'
If I run such script:
Code:
IPADDR="192.168.1.6"
BROADCAST="192.168.1.255"
NETMASK="255.255.255.0"
/sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}
I can set up local network configuration (IP 192.168.1.6):
# ifconfig
Code:
eth0 Link encap:Ethernet HWaddr ba:be:de:ad:ab:ed
inet addr:192.168.1.6 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: deaf::abbe:bade:dead:bead/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B) TX bytes:468 (468.0 B)
Memory:ee000000-ee020000
I can also use such script to set down the network and then to set it up:
Code:
/sbin/ifconfig eth0 down
IPADDR="192.168.1.6"
BROADCAST="192.168.1.255"
NETMASK="255.255.255.0"
/sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}
Network configuration persists the same:
# ifconfig
Code:
eth0 Link encap:Ethernet HWaddr ba:be:de:ad:ab:ed
inet addr:192.168.1.6 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: deaf::abbe:bade:dead:bead/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B) TX bytes:936 (936.0 B)
Memory:ee000000-ee020000
And nothing wrong happens in the system:
Code:
Sep 9 00:14:32 home6 kernel: ADDRCONF(NETDEV_UP): eth0: link is not ready
Sep 9 00:14:33 home6 kernel: e1000e: eth0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: None
Sep 9 00:14:33 home6 kernel: 0000:02:00.0: eth0: 10/100 speed: disabling TSO
Sep 9 00:14:33 home6 kernel: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Sep 9 00:14:55 home6 acpid: client connected from 3646[0:100]
Sep 9 00:14:55 home6 acpid: 1 client rule loaded
But if I repeat setting down and setting up the network using the last script after a few attempts dhcpcd starts to work:
Code:
Sep 9 00:15:57 home6 kernel: ADDRCONF(NETDEV_UP): eth0: link is not ready
Sep 9 00:15:59 home6 dhcpcd[5109]: eth0: exiting
Sep 9 00:15:59 home6 kernel: e1000e: eth0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: None
Sep 9 00:15:59 home6 kernel: 0000:02:00.0: eth0: 10/100 speed: disabling TSO
Sep 9 00:15:59 home6 kernel: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Sep 9 00:15:59 home6 kernel: ADDRCONF(NETDEV_UP): eth0: link is not ready
Sep 9 00:16:00 home6 kernel: e1000e: eth0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: None
Sep 9 00:16:00 home6 kernel: 0000:02:00.0: eth0: 10/100 speed: disabling TSO
Sep 9 00:16:00 home6 kernel: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Sep 9 00:16:05 home6 dhcpcd[5123]: wlan0: exiting
Sep 9 00:16:05 home6 kernel: iwl3945 0000:03:00.0: PCI INT A disabled
Sep 9 00:16:05 home6 kernel: iwl3945 0000:03:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
Sep 9 00:16:05 home6 kernel: Registered led device: iwl-phy0:radio
Sep 9 00:16:05 home6 kernel: Registered led device: iwl-phy0:assoc
Sep 9 00:16:05 home6 kernel: Registered led device: iwl-phy0:RX
Sep 9 00:16:05 home6 kernel: Registered led device: iwl-phy0:TX
Sep 9 00:16:05 home6 kernel: ADDRCONF(NETDEV_UP): wlan0: link is not ready
Sep 9 00:16:05 home6 dhcpcd[5139]: eth0: exiting
Sep 9 00:16:05 home6 kernel: ADDRCONF(NETDEV_UP): eth0: link is not ready
Sep 9 00:16:05 home6 dhcpcd[5143]: eth0: dhcpcd 3.2.3 starting
Sep 9 00:16:05 home6 dhcpcd[5143]: eth0: hardware address = ba:be:de:ad:ab:ed
Sep 9 00:16:05 home6 dhcpcd[5143]: eth0: DUID = 00:01:00:01:12:39:3a:62:ba:be:de:ad:ab:ed
Sep 9 00:16:05 home6 dhcpcd[5143]: eth0: broadcasting for a lease
Sep 9 00:16:08 home6 kernel: e1000e: eth0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: None
Sep 9 00:16:08 home6 kernel: 0000:02:00.0: eth0: 10/100 speed: disabling TSO
Sep 9 00:16:08 home6 kernel: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Sep 9 00:16:25 home6 dhcpcd[5143]: eth0: trying to use old lease in `/etc/dhcpc/dhcpcd-eth0.info'
Sep 9 00:16:25 home6 dhcpcd[5143]: eth0: probing for an IPV4LL address
Sep 9 00:16:26 home6 dhcpcd[5143]: eth0: adding IP address 169.254.56.94/16
Sep 9 00:16:26 home6 dhcpcd[5143]: eth0: exiting
Sep 9 00:16:34 home6 acpid: client connected from 3646[0:100]
Sep 9 00:16:34 home6 acpid: 1 client rule loaded
And tcpdump registers some requests on port 68:
# tcpdump -i eth0 -n port 67 and port 68
Code:
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
00:16:08.720897 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from ba:be:de:ad:ab:ed, length 300
00:16:11.724901 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from ba:be:de:ad:ab:ed, length 300
00:16:14.728900 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from ba:be:de:ad:ab:ed, length 300
00:16:17.732896 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from ba:be:de:ad:ab:ed, length 300
00:16:20.736902 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from ba:be:de:ad:ab:ed, length 300
00:16:23.740901 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from ba:be:de:ad:ab:ed, length 300
00:16:36.816898 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from ba:be:de:ad:ab:ed, length 300
00:16:39.820903 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from ba:be:de:ad:ab:ed, length 300
In result dhcpcd changes the network configuration:
# ifconfig
Code:
eth0 Link encap:Ethernet HWaddr ba:be:de:ad:ab:ed
inet addr:169.254.56.94 Bcast:169.254.255.255 Mask:255.255.0.0
inet6 addr: deaf::abbe:bade:dead:bead/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:152 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B) TX bytes:23272 (22.7 KiB)
Memory:ee000000-ee020000
As well as my manually modified info file:
# cat /etc/dhcpc/dhcpcd-eth0.info
Code:
IPADDR='169.254.56.94'
NETMASK='255.255.0.0'
NETWORK='169.254.0.0'
BROADCAST='169.254.255.255'
LEASEDFROM='0'
LEASETIME='20'
RENEWALTIME='10'
REBINDTIME='17'
INTERFACE='eth0'
CLASSID='dhcpcd 3.2.3'
CLIENTID='ff:65:74:68:30:00:01:00:01:12:39:3a:62:ba:be:de:ad:ab:ed'
DHCPCHADDR='ba:be:de:ad:ab:ed'
***
I stated that sometimes it’s enough to set down and up the network for two or three times to activate dhcpcd and sometimes it’s necessary to perform these operations for a dozen times. Some network related actions speed up dhcpcd activation. For example if I start and stop PPPOE it’s enough to set down and up the local network for one to three times to activate dhcpcd.
I didn’t try to alternate LEASEDFROM, LEASETIME, RENEWALTIME and REBINDTIME settings because I think that increasing those timers doesn’t remove the problem but reschedules it in the time.
Now I know that I can’t set down and up the local network because these operations affect dhcpcd activity.
I simply don’t understand why dhcpcd starts to work on my machine. I investigated the files from /etc/ directory but I found nothing relevant.
Anyway thank you for your assistance.