Применение initcwn/initrwnd к маршрутам от DHCP

Применение initcwn/initrwnd к маршрутам от DHCP

Я использую Amazon Linux 2023 (который основан на Fedora и использует systemd-networkd для DHCP).

ip route showпоказывает маршруты какdefault via 10.0.0.1 dev enX0 proto dhcp src 10.0.0.211 metric 1024

Я хотел бы применить "initcwnd 50 initrwnd 50" к этому маршруту. Я могу сделать это через ip route change. Это работает до тех пор, пока не истечет срок моей аренды. Когда DHCP обновляет его, у меня появляется второй (дублирующий) маршрут по умолчанию.

Я могу создать файл conf /etc/systemd/network/с таким содержимым:

[Match]
Name=enX0

[Network]
DHCP=yes

[Route]
Gateway=10.0.0.1
InitialCongestionWindow=50
InitialAdvertisedReceiveWindow=50
Metric=100

, но это все равно приводит к дублированию маршрутов или заставляет меня жестко кодировать те вещи, которые должны настраиваться динамически с помощью DHCP.

Я хотел бы, чтобы моя система получала маршруты и конфигурацию от DHCP, как это происходит сегодня, но чтобы мои значения initcwn/ initrwnd применялись всегда. Возможно ли это?

решение1

Да, вы можете запустить скрипт после обновления DHCP, сначала создайте каталог скрипта сетевого диспетчера.

sudo mkdir -p /etc/systemd/network

затем мы создадим скрипт для изменения маршрута после обновления DHCP, создайте этот файл

sudo nano /etc/systemd/network/10-custom-route-settings.network

затем добавьте это внутрь

[Match]
Name=enX0

[Network]
DHCP=yes

[DHCP]
RouteMetric=100

[Route]
Gateway=_dhcp4_gateway
Destination=default
InitialCongestionWindow=50
InitialAdvertisedReceiveWindow=50

сохранить и закрыть, затем наконец можно перезапуститьsystemd-networkd

sudo systemctl restart systemd-networkd

Связанный контент