|
|
@@ -137,7 +137,8 @@ func TestTranslateNode(t *testing.T) {
|
|
|
forceInternalIPAnnotationKey: "-10.1.0.2/24",
|
|
|
},
|
|
|
out: &mesh.Node{
|
|
|
- InternalIP: &net.IPNet{IP: net.ParseIP("10.1.0.1"), Mask: net.CIDRMask(24, 32)},
|
|
|
+ InternalIP: &net.IPNet{IP: net.ParseIP("10.1.0.1"), Mask: net.CIDRMask(24, 32)},
|
|
|
+ NoInternalIP: false,
|
|
|
},
|
|
|
},
|
|
|
{
|
|
|
@@ -147,7 +148,8 @@ func TestTranslateNode(t *testing.T) {
|
|
|
forceInternalIPAnnotationKey: "10.1.0.2/24",
|
|
|
},
|
|
|
out: &mesh.Node{
|
|
|
- InternalIP: &net.IPNet{IP: net.ParseIP("10.1.0.2"), Mask: net.CIDRMask(24, 32)},
|
|
|
+ InternalIP: &net.IPNet{IP: net.ParseIP("10.1.0.2"), Mask: net.CIDRMask(24, 32)},
|
|
|
+ NoInternalIP: false,
|
|
|
},
|
|
|
},
|
|
|
{
|
|
|
@@ -176,6 +178,7 @@ func TestTranslateNode(t *testing.T) {
|
|
|
},
|
|
|
out: &mesh.Node{
|
|
|
Endpoint: &wireguard.Endpoint{DNSOrIP: wireguard.DNSOrIP{IP: net.ParseIP("10.0.0.2")}, Port: 51821},
|
|
|
+ NoInternalIP: false,
|
|
|
InternalIP: &net.IPNet{IP: net.ParseIP("10.1.0.2"), Mask: net.CIDRMask(32, 32)},
|
|
|
Key: []byte("foo"),
|
|
|
LastSeen: 1000000000,
|
|
|
@@ -214,6 +217,35 @@ func TestTranslateNode(t *testing.T) {
|
|
|
},
|
|
|
subnet: "10.2.1.0/24",
|
|
|
},
|
|
|
+ {
|
|
|
+ name: "Force no internal IP",
|
|
|
+ annotations: map[string]string{
|
|
|
+ endpointAnnotationKey: "10.0.0.1:51820",
|
|
|
+ internalIPAnnotationKey: "10.1.0.1/32",
|
|
|
+ forceInternalIPAnnotationKey: "",
|
|
|
+ keyAnnotationKey: "foo",
|
|
|
+ lastSeenAnnotationKey: "1000000000",
|
|
|
+ locationAnnotationKey: "b",
|
|
|
+ persistentKeepaliveKey: "25",
|
|
|
+ wireGuardIPAnnotationKey: "10.4.0.1/16",
|
|
|
+ },
|
|
|
+ labels: map[string]string{
|
|
|
+ RegionLabelKey: "a",
|
|
|
+ },
|
|
|
+ out: &mesh.Node{
|
|
|
+ Endpoint: &wireguard.Endpoint{DNSOrIP: wireguard.DNSOrIP{IP: net.ParseIP("10.0.0.1")}, Port: 51820},
|
|
|
+ NoInternalIP: true,
|
|
|
+ InternalIP: nil,
|
|
|
+ Key: []byte("foo"),
|
|
|
+ LastSeen: 1000000000,
|
|
|
+ Leader: false,
|
|
|
+ Location: "b",
|
|
|
+ PersistentKeepalive: 25,
|
|
|
+ Subnet: &net.IPNet{IP: net.ParseIP("10.2.1.0"), Mask: net.CIDRMask(24, 32)},
|
|
|
+ WireGuardIP: &net.IPNet{IP: net.ParseIP("10.4.0.1"), Mask: net.CIDRMask(16, 32)},
|
|
|
+ },
|
|
|
+ subnet: "10.2.1.0/24",
|
|
|
+ },
|
|
|
} {
|
|
|
n := &v1.Node{}
|
|
|
n.ObjectMeta.Annotations = tc.annotations
|