mirror of
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake.git
synced 2025-10-13 20:11:19 -04:00
Consider more IPs to be local
This commit is contained in:
parent
2d43dd26b1
commit
8467c01e9e
2 changed files with 7 additions and 1 deletions
|
@ -56,7 +56,11 @@ func IsLocal(ip net.IP) bool {
|
|||
// Local IPv4 addresses are defined in https://tools.ietf.org/html/rfc1918
|
||||
return ip4[0] == 10 ||
|
||||
(ip4[0] == 172 && ip4[1]&0xf0 == 16) ||
|
||||
(ip4[0] == 192 && ip4[1] == 168)
|
||||
(ip4[0] == 192 && ip4[1] == 168) ||
|
||||
// Carrier-Grade NAT as per https://tools.ietf.org/htm/rfc6598
|
||||
(ip4[0] == 100 && ip4[1]&0xc0 == 64) ||
|
||||
// Dynamic Configuration as per https://tools.ietf.org/htm/rfc3927
|
||||
(ip4[0] == 169 && ip4[1] == 254)
|
||||
}
|
||||
// Local IPv6 addresses are defined in https://tools.ietf.org/html/rfc4193
|
||||
return len(ip) == net.IPv6len && ip[0]&0xfe == 0xfc
|
||||
|
|
|
@ -14,6 +14,8 @@ func TestUtil(t *testing.T) {
|
|||
|
||||
offer := offerStart + goodCandidate +
|
||||
"a=candidate:3769337065 1 udp 2122260223 192.168.0.100 56688 typ host generation 0 network-id 1 network-cost 50\r\n" + // IsLocal IPv4
|
||||
"a=candidate:3769337065 1 udp 2122260223 100.127.50.5 56688 typ host generation 0 network-id 1 network-cost 50\r\n" + // IsLocal IPv4
|
||||
"a=candidate:3769337065 1 udp 2122260223 169.254.250.88 56688 typ host generation 0 network-id 1 network-cost 50\r\n" + // IsLocal IPv4
|
||||
"a=candidate:3769337065 1 udp 2122260223 fdf8:f53b:82e4::53 56688 typ host generation 0 network-id 1 network-cost 50\r\n" + // IsLocal IPv6
|
||||
"a=candidate:3769337065 1 udp 2122260223 0.0.0.0 56688 typ host generation 0 network-id 1 network-cost 50\r\n" + // IsUnspecified IPv4
|
||||
"a=candidate:3769337065 1 udp 2122260223 :: 56688 typ host generation 0 network-id 1 network-cost 50\r\n" + // IsUnspecified IPv6
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue