Hi all, I have a question regarding the connectivity check feature of NetworkManager. I'm running NM version 1.8.0 in an embedded device and my understanding is that the daemon will make *periodic* connectivity checks per interface with an interval
that you can specify in the config file. So I added to the config file: [connectivity] uri=http://network-test.debian.org/nm interval=10 I run NM with debug information and what I got is: For wireless interface: <info> [1496147977.2182] device (wlan0): Activation: successful, device activated. <debug> [1496147977.2183] device[0xdc0508] (wlan0): set metered value 4 <debug> [1496147977.2221] connectivity: (wlan0) sending request to 'http://network-test.debian.org/nm' <debug> [1496147977.2223] device[0xdc0508] (wlan0): remove_pending_action (0): 'queued-state-change-activated' <debug> [1496147979.5197] device[0xdc0508] (wlan0): queued IP6 config change <debug> [1496147979.5223] device[0xdc0508] (wlan0): linklocal6: waiting for link-local addresses successful, continue with method auto <debug> [1496147981.0709] connectivity: (wlan0) status header found, check successful <debug> [1496147981.0712] device[0xdc0508] (wlan0): state changed from UNKNOWN to FULL <debug> [1496147981.0749] device[0xdc0508] (wlan0): queued IP4 config change and then for ethernet: <info> [1496147986.2113] device (eth0): Activation: successful, device activated. <debug> [1496147986.2114] device[0xdaa4a0] (eth0): set metered value 4 <debug> [1496147986.2194] connectivity: (eth0) sending request to 'http://network-test.debian.org/nm' <debug> [1496147986.2196] device[0xdaa4a0] (eth0): remove_pending_action (1): 'queued-state-change-activated' <debug> [1496147987.2571] device[0xdaa4a0] (eth0): queued IP6 config change <debug> [1496147987.2600] device[0xdaa4a0] (eth0): linklocal6: waiting for link-local addresses successful, continue with method auto <debug> [1496147987.2614] device[0xdaa4a0] (eth0): queued IP6 config change <debug> [1496147987.6083] connectivity: (eth0) status header found, check successful <debug> [1496147987.6086] device[0xdaa4a0] (eth0): state changed from UNKNOWN to FULL <debug> [1496147987.6101] device[0xdaa4a0] (eth0): queued IP4 config change The devices are up: # nmcli dev DEVICE TYPE STATE CONNECTION
eth0 ethernet connected eth0 wlan0 wifi connected wlan0 And I have a proper routing table: # route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.11.101 0.0.0.0 UG 100 0 0 eth0 0.0.0.0 192.168.11.101 0.0.0.0 UG 600 0 0 wlan0 192.168.0.0 0.0.0.0 255.255.0.0 U 0 0 0 wlan0 192.168.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 192.168.0.0 0.0.0.0 255.255.0.0 U 100 0 0 eth0 192.168.0.0 0.0.0.0 255.255.0.0 U 600 0 0 wlan0 But this only happens when NM is launched and detects the interfaces. After that, there are no more connectivity checks, even though I have an interval configured in the config file. What I expected is that if for some reason the ethernet
interface has connection problems to reach the configured URI then NM would change the metric so the packages go through wireless. But as it's not doing any more connectivity checks this is not happening. Did I misunderstand the feature? Shouldn't NM do periodic connectivity checks even when everything seems to be working fine? Thanks in advance. -- Javier Viguera Software Engineer |