На Linux-машине у меня есть следующие настройки IP:
ruckus$ ifconfig -a
br0       Link encap:Ethernet  HWaddr F0:3E:90:07:8E:E0
      inet addr:172.18.140.3  Bcast:172.18.140.255  Mask:255.255.255.0
      inet6 addr: fe80::169:254:17:11/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:5719 errors:0 dropped:0 overruns:0 frame:0
      TX packets:5175 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:1277606 (1.2 MiB)  TX bytes:619615 (605.0 KiB)
br0:169   Link encap:Ethernet  HWaddr F0:3E:90:07:8E:E0 
      inet addr:169.254.17.11  Bcast:169.254.17.255  Mask:255.255.255.0
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
И таблица маршрутизации:
ruckus$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use 
Iface
0.0.0.0         172.18.140.254  0.0.0.0         UG    0      0        0 br0
169.254.17.0    0.0.0.0         255.255.255.0   U     0      0        0 br0
А потом я удаляю свой IP на интерфейсе br0
ruckus$ ifconfig br0 0.0.0.0
ruckus$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use 
Iface
0.0.0.0         172.18.140.254  0.0.0.0         UG    0      0        0 br0
169.254.17.0    0.0.0.0         255.255.255.0   U     0      0        0 br0
Как видите, элемент маршрутизации по умолчанию все еще существует. Я думаю, что ядро должно удалить элементы маршрутизации по умолчанию, когда IP на интерфейсе удаляется. Я думаю, что наиболее вероятная причина в том, что я применяю "политику маршрутизации" на машине с Linux. На интерфейсе br0:169 все еще есть IP-адрес, поэтому ядро не удаляет элемент маршрутизации по умолчанию на br0?
Это правда и если да, то почему?
