LINUX.ORG.RU
решено ФорумAdmin

Как управлять метрикой сетевых интерфейсов?

 , ,


0

2

У меня метрика всяких wifi и тунелей меньше чем обычной проводной сети.

У провода 1024, оно через networkd.
У wifi 600, оно через nm.
У тунелей 256.

Как мне сделать наоборот для ipv4 и ipv6?


Метрика «сетевого подключения» задаётся в его настройках. В systemd-networkd это настройки в /etc/systemd/network/xxx.network (man systemd.network):

  • RouteMetric в секции [Address] (задаёт метрику directly connected маршрута)
  • Metric в секции [Route] (задаёт метрику статического маршрута)
  • RouteMetric в секции [DHCPv4] (задаёт метрику дефолтного маршрута, полученного по DHCPv4)
  • RouteMetric в секции [DHCPPrefixDelegation] (задаёт метрику маршрута к делегированной продсети, т.е. в локалку)
  • RouteMetric в секции [IPv6AcceptRA] (задаёт метрику маршрутов, полученных в router advertisements)
  • RouteMetric в секции [IPv6Prefix] (задаёт метрику directly connected маршрута для IPv6)

В NetworkManager это настройки профиля подключения nmcli c show xxx (man nm-settings):

  • ipv4.route-metric (задаёт метрику для IPv4 маршрутов, добавляемых при подъёме подключения)
  • ipv6.route-metric (задаёт метрику для IPv6 маршрутов, добавляемых при подъёме подключения)

Если туннели поднимаются с помощью systemd-networkd или NetworkManager, то у них настройки те же. Если туннели поднимаешь чем-то другим (ручной openvpn, wireguard, etc.), то там разножопица. Но зачем поднимать туннели вручную, если NetworkManager умеет поднимать туннели?

iliyap ★★★★★
()

$ ifmetric
Usage: ifmetric <iface> [metric]

ifmetric is a tool for setting the metrics of all IPv4 routes
attached to a given network interface at once.

<iface> The interface
<metric> The new metric (default: 0)

$ equery b `which ifmetric`
* Searching for /usr/sbin/ifmetric ...
net-analyzer/ifmetric-0.3-r4 (/usr/sbin/ifmetric)

Sylvia ★★★★★
()