From: Lennart Poettering Date: Thu, 10 Jul 2014 19:32:44 +0000 (+0200) Subject: networkd: always prefer dhcp routes over ipv4ll routes X-Git-Tag: v216~677 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=4faefc7ff884eae65a80e82313fd9f4bb859d6db networkd: always prefer dhcp routes over ipv4ll routes --- 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;