From a0558cef64f553b35f761fae6971b81fb4952768 Mon Sep 17 00:00:00 2001 From: Yoshiyuki Mineo Date: Tue, 30 Apr 2024 15:06:58 +0900 Subject: [PATCH] Link local (#53) * Allow IPv4 Link Local addresses (#50) * Allow IPv4 Link Local addresses Allow the use of link local addresses * Update sonyflake.go * Update sonyflake.go * Update a comment --------- Co-authored-by: Flavio Crisciani --- sonyflake.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sonyflake.go b/sonyflake.go index 548b243..2db3325 100644 --- a/sonyflake.go +++ b/sonyflake.go @@ -178,8 +178,9 @@ func privateIPv4(interfaceAddrs types.InterfaceAddrs) (net.IP, error) { } func isPrivateIPv4(ip net.IP) bool { + // Allow private IP addresses (RFC1918) and link-local addresses (RFC3927) return ip != nil && - (ip[0] == 10 || ip[0] == 172 && (ip[1] >= 16 && ip[1] < 32) || ip[0] == 192 && ip[1] == 168) + (ip[0] == 10 || ip[0] == 172 && (ip[1] >= 16 && ip[1] < 32) || ip[0] == 192 && ip[1] == 168 || ip[0] == 169 && ip[1] == 254) } func lower16BitPrivateIP(interfaceAddrs types.InterfaceAddrs) (uint16, error) {