Periodic connectivity checks per interface



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

 

 



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