mirror of
https://github.com/openwrt/openwrt.git
synced 2026-10-13 13:18:09 +04:00
wireguard: add metric to routes
maintainer: Felix Fietkau <nbd@nbd.name> The metric field is not used when wireGuard routes are created. See: https://github.com/openwrt/openwrt/issues/23199 This patch is aimed at adding the metric field in the config to the created routes for WireGuard if the metric field is not empty and not 0 Compile tested: X86, Openwrt-main Run tested: X86 Please have a look and consider implementing Signed-off-by: Erik Conijn <egc112@msn.com> Link: https://github.com/openwrt/openwrt/pull/23280 Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
1 parent
85767ac8fe
commit
67ee9cf19d
1 file changed
+4
@@ -111,6 +111,8 @@ function proto_setup(proto) {
|
||||
if (config.fwmark)
|
||||
wg_config += sprintf('FwMark=%s\n', config.fwmark);
|
||||
|
||||
let metric = int(config.metric);
|
||||
|
||||
let ipv4_routes = [];
|
||||
let ipv6_routes = [];
|
||||
|
||||
@@ -136,6 +138,8 @@ function proto_setup(proto) {
|
||||
for (let allowed_ip in allowed_list) {
|
||||
let addr_info = parse_address(allowed_ip);
|
||||
let route = { target: addr_info.address, netmask: '' + addr_info.mask };
|
||||
if (metric)
|
||||
route.metric = metric;
|
||||
if (addr_info.family == 6)
|
||||
push(ipv6_routes, route);
|
||||
else
|
||||
|
||||
Reference in new issue
Block a user