This commit is contained in:
qaq
2025-06-17 12:17:33 +08:00
parent 4a6b2c8e0f
commit 9fa968d07c
648 changed files with 64968 additions and 1621 deletions
+32
View File
@@ -0,0 +1,32 @@
package router
import (
"fmt"
"net"
"github.com/go-gost/core/router"
"github.com/vishvananda/netlink"
)
func (p *localRouter) setSysRoutes(routes ...*router.Route) error {
for _, route := range routes {
if route.Net == nil {
continue
}
gw := net.ParseIP(route.Gateway)
if gw == nil {
continue
}
p.options.logger.Debugf("ip route replace %s via %s", route.Net, route.Gateway)
r := netlink.Route{
Dst: route.Net,
Gw: gw,
}
if err := netlink.RouteReplace(&r); err != nil {
return fmt.Errorf("set route %v %v: %v", r.Dst, r.Gw, err)
}
}
return nil
}