diff --git a/cmd/headscale/cli/nodes.go b/cmd/headscale/cli/nodes.go index aafd9b9..9159b32 100644 --- a/cmd/headscale/cli/nodes.go +++ b/cmd/headscale/cli/nodes.go @@ -13,6 +13,7 @@ import ( "github.com/pterm/pterm" "github.com/spf13/cobra" "google.golang.org/grpc/status" + "inet.af/netaddr" "tailscale.com/types/key" ) @@ -452,6 +453,17 @@ func nodesToPtables( // Shared into this namespace namespace = pterm.LightYellow(machine.Namespace.Name) } + + var IpV4Address string + var IpV6Address string + for _, addr := range machine.IpAddresses { + if netaddr.MustParseIP(addr).Is4() { + IpV4Address = addr + } else { + IpV6Address = addr + } + } + tableData = append( tableData, []string{ @@ -459,7 +471,7 @@ func nodesToPtables( machine.Name, nodeKey.ShortString(), namespace, - strings.Join(machine.IpAddresses, ", "), + strings.Join([]string{IpV4Address, IpV6Address}, ", "), strconv.FormatBool(ephemeral), lastSeenTime, online,