In order to preserve SSH sessions when moving from wired to wireless, I
have the same IP address set on both interfaces. (I don't believe this
affects this bug; however, I thought I'd mention it.) However, my
wireless access can be significantly less reliable than my wired access,
so I want to prefer wired when possible.
For the default IPv4 route (0.0.0.0/0), this works out fine, as the
metric for eth0 is lower than for wlan0. However, for the local
network, network-manager sets the same metric for eth0 and wlan0, which
results in traffic going over wlan0. This causes notable dropouts when
the wireless reconnects, which it does very frequently.
From my home machine, although the behavior is identical with the sid
version on my work machine:
vauxhall ok % route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.16.0.1 0.0.0.0 UG 100 0 0 eth0
0.0.0.0 172.16.0.1 0.0.0.0 UG 600 0 0 wlan0
172.16.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
172.16.0.0 0.0.0.0 255.255.0.0 U 0 0 0 wlan0
172.16.0.0 0.0.0.0 255.255.0.0 U 100 0 0 eth0
In the sid version, I don't see the second eth0 entry for 172.16.0.0,
only the two identical ones with metric 0.
I expect that eth0 should have a lower metric than wlan0, as
network-manager's (correct) presumption is that wired is better than
wireless.