summaryrefslogtreecommitdiff
path: root/src/network
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2014-07-10 21:32:44 +0200
committerLennart Poettering <lennart@poettering.net>2014-07-10 21:32:44 +0200
commit4faefc7ff884eae65a80e82313fd9f4bb859d6db (patch)
tree9ea001d5bbb7e2447d6dd78b5e9cc03c2503ec9c /src/network
parent496a5a69707653b231fbb350c0d8d837762248bb (diff)
networkd: always prefer dhcp routes over ipv4ll routes
Diffstat (limited to 'src/network')
-rw-r--r--src/network/networkd-link.c8
-rw-r--r--src/network/networkd.h3
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;