
Я использую 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