mirror of
https://github.com/gravitl/netmaker.git
synced 2025-09-05 20:54:18 +08:00
fix: update extclient ingress endpoint/port with host changes
This commit is contained in:
parent
8fc489b5a6
commit
91c5fe0cf3
3 changed files with 18 additions and 0 deletions
|
@ -308,6 +308,7 @@ func updateHost(w http.ResponseWriter, r *http.Request) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
logic.LogEvent(&models.Event{
|
logic.LogEvent(&models.Event{
|
||||||
Action: models.Update,
|
Action: models.Update,
|
||||||
Source: models.Subject{
|
Source: models.Subject{
|
||||||
|
|
|
@ -1304,6 +1304,12 @@ func getUserRemoteAccessGwsV1(w http.ResponseWriter, r *http.Request) {
|
||||||
if extClient.DNS == "" {
|
if extClient.DNS == "" {
|
||||||
extClient.DNS = node.IngressDNS
|
extClient.DNS = node.IngressDNS
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extClient.IngressGatewayEndpoint = utils.GetExtClientEndpoint(
|
||||||
|
host.EndpointIP,
|
||||||
|
host.EndpointIPv6,
|
||||||
|
logic.GetPeerListenPort(host),
|
||||||
|
)
|
||||||
extClient.AllowedIPs = logic.GetExtclientAllowedIPs(extClient)
|
extClient.AllowedIPs = logic.GetExtclientAllowedIPs(extClient)
|
||||||
gws = append(gws, models.UserRemoteGws{
|
gws = append(gws, models.UserRemoteGws{
|
||||||
GwID: node.ID.String(),
|
GwID: node.ID.String(),
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
package utils
|
package utils
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"log/slog"
|
"log/slog"
|
||||||
|
"net"
|
||||||
"runtime"
|
"runtime"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
@ -75,3 +77,12 @@ func NoEmptyStringToCsv(strs ...string) string {
|
||||||
}
|
}
|
||||||
return sb.String()
|
return sb.String()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetExtClientEndpoint returns the external client endpoint in the format "host:port" or "[host]:port" for IPv6
|
||||||
|
func GetExtClientEndpoint(hostIpv4Endpoint, hostIpv6Endpoint net.IP, hostListenPort int) string {
|
||||||
|
if hostIpv4Endpoint.To4() == nil {
|
||||||
|
return fmt.Sprintf("[%s]:%d", hostIpv6Endpoint.String(), hostListenPort)
|
||||||
|
} else {
|
||||||
|
return fmt.Sprintf("%s:%d", hostIpv4Endpoint.String(), hostListenPort)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue