From 4faefc7ff884eae65a80e82313fd9f4bb859d6db Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 10 Jul 2014 21:32:44 +0200 Subject: [PATCH] networkd: always prefer dhcp routes over ipv4ll routes --- src/network/networkd-link.c | 8 ++++---- src/network/networkd.h | 3 ++- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index 6257372ff..3e35090d3 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -427,7 +427,7 @@ static int link_set_dhcp_routes(Link *link) { route->in_addr.in = static_routes[i].gw_addr; route->dst_addr.in = static_routes[i].dst_addr; route->dst_prefixlen = static_routes[i].dst_prefixlen; - route->metrics = DHCP_STATIC_ROUTE_METRIC; + route->metrics = DHCP_ROUTE_METRIC; r = route_configure(route, link, &route_handler); if (r < 0) { @@ -491,7 +491,7 @@ static int link_enter_set_routes(Link *link) { route->family = AF_INET; route->scope = RT_SCOPE_LINK; - route->metrics = 99; + route->metrics = IPV4LL_ROUTE_METRIC; r = route_configure(route, link, &route_handler); if (r < 0) { @@ -539,7 +539,7 @@ static int link_enter_set_routes(Link *link) { route_gw->dst_addr.in = gateway; route_gw->dst_prefixlen = 32; route_gw->scope = RT_SCOPE_LINK; - route_gw->metrics = DHCP_STATIC_ROUTE_METRIC; + route_gw->metrics = DHCP_ROUTE_METRIC; r = route_configure(route_gw, link, &route_handler); if (r < 0) { @@ -552,7 +552,7 @@ static int link_enter_set_routes(Link *link) { route->family = AF_INET; route->in_addr.in = gateway; - route->metrics = DHCP_STATIC_ROUTE_METRIC; + route->metrics = DHCP_ROUTE_METRIC; r = route_configure(route, link, &route_handler); if (r < 0) { diff --git a/src/network/networkd.h b/src/network/networkd.h index c39d2213f..9132e7021 100644 --- a/src/network/networkd.h +++ b/src/network/networkd.h @@ -42,7 +42,8 @@ #define CACHE_INFO_INFINITY_LIFE_TIME 0xFFFFFFFFU #define VXLAN_VID_MAX (1u << 24) - 1 -#define DHCP_STATIC_ROUTE_METRIC 1024 +#define DHCP_ROUTE_METRIC 1024 +#define IPV4LL_ROUTE_METRIC 2048 typedef struct NetDev NetDev; typedef struct Network Network; -- 2.30.2