Commit 8f08304b authored by naison's avatar naison Committed by ginuerzh

ignore linux error: File exists while add same route twice

parent a4695ece
package gost package gost
import ( import (
"errors"
"fmt" "fmt"
"net" "net"
"syscall"
"github.com/docker/libcontainer/netlink" "github.com/docker/libcontainer/netlink"
"github.com/go-log/log" "github.com/go-log/log"
...@@ -149,7 +151,7 @@ func addTunRoutes(ifName string, routes ...IPRoute) error { ...@@ -149,7 +151,7 @@ func addTunRoutes(ifName string, routes ...IPRoute) error {
} }
cmd := fmt.Sprintf("ip route add %s dev %s", route.Dest.String(), ifName) cmd := fmt.Sprintf("ip route add %s dev %s", route.Dest.String(), ifName)
log.Logf("[tun] %s", cmd) log.Logf("[tun] %s", cmd)
if err := netlink.AddRoute(route.Dest.String(), "", "", ifName); err != nil { if err := netlink.AddRoute(route.Dest.String(), "", "", ifName); err != nil && !errors.Is(err, syscall.EEXIST) {
return fmt.Errorf("%s: %v", cmd, err) return fmt.Errorf("%s: %v", cmd, err)
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment