Skip to content

Commit dabea2d

Browse files
author
袁又袁
authored
fix vpc-peer dualstack bug (#3204)
Signed-off-by: lynn901 <yuanliu_yewu@cmss.chinamobile.com>
1 parent 0eb4f79 commit dabea2d

File tree

1 file changed

+14
-12
lines changed

1 file changed

+14
-12
lines changed

pkg/ovs/ovn-nbctl-legacy.go

+14-12
Original file line numberDiff line numberDiff line change
@@ -876,27 +876,29 @@ func (c LegacyClient) CreatePeerRouterPort(localRouter, remoteRouter, localRoute
876876
ipStr := strings.Split(localRouterPortIP, ",")
877877
if len(ipStr) == 2 {
878878
klog.Infof("add vpc lrp %s", localRouterPort)
879-
_, err = c.ovnNbCommand(MayExist, "lrp-add", localRouter, localRouterPort, util.GenerateMac(), ipStr[0], ipStr[1], "--",
880-
"set", "logical_router_port", localRouterPort, fmt.Sprintf("peer=%s", remoteRouterPort))
879+
_, err = c.ovnNbCommand(MayExist, "lrp-add", localRouter, localRouterPort, util.GenerateMac(), ipStr[0], ipStr[1],
880+
fmt.Sprintf("peer=%s", remoteRouterPort))
881881
} else {
882882
klog.Infof("add vpc lrp %s", localRouterPort)
883-
_, err = c.ovnNbCommand(MayExist, "lrp-add", localRouter, localRouterPort, util.GenerateMac(), ipStr[0], "--",
884-
"set", "logical_router_port", localRouterPort, fmt.Sprintf("peer=%s", remoteRouterPort))
883+
_, err = c.ovnNbCommand(MayExist, "lrp-add", localRouter, localRouterPort, util.GenerateMac(), ipStr[0],
884+
fmt.Sprintf("peer=%s", remoteRouterPort))
885885
}
886886
if err != nil {
887887
klog.Errorf("failed to create router port %s: %v", localRouterPort, err)
888888
return err
889889
}
890-
}
891-
892-
klog.Infof("set lrp %s, networks %s", localRouterPort, localRouterPortIP)
893-
_, err = c.ovnNbCommand("set", "logical_router_port", localRouterPort,
894-
fmt.Sprintf("networks=\"%s\"", strings.ReplaceAll(localRouterPortIP, ",", " ")))
890+
} else {
891+
klog.Infof("set lrp %s, networks %s", localRouterPort, localRouterPortIP)
892+
networks := strings.ReplaceAll(strings.Join(strings.Split(localRouterPortIP, ","), " "), ":", "\\:")
893+
_, err = c.ovnNbCommand("set", "logical_router_port", localRouterPort,
894+
fmt.Sprintf("networks=%s", networks))
895895

896-
if err != nil {
897-
klog.Errorf("failed to set router port %s: %v", localRouterPort, err)
898-
return err
896+
if err != nil {
897+
klog.Errorf("failed to set router port %s: %v", localRouterPort, err)
898+
return err
899+
}
899900
}
901+
900902
return nil
901903
}
902904

0 commit comments

Comments
 (0)