Skip to content

Commit b36ac18

Browse files
committed
Fix auto-route IPv6 on darwin
1 parent 46adeb9 commit b36ac18

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

tun_rules.go

+15-9
Original file line numberDiff line numberDiff line change
@@ -111,14 +111,14 @@ func (o *Options) BuildAutoRouteRanges(underNetworkExtension bool) ([]netip.Pref
111111
inet4Ranges = o.Inet4RouteAddress
112112
} else if autoRouteUseSubRanges && !underNetworkExtension {
113113
inet4Ranges = []netip.Prefix{
114-
netip.PrefixFrom(netip.AddrFrom4([4]byte{1, 0, 0, 0}), 8),
115-
netip.PrefixFrom(netip.AddrFrom4([4]byte{2, 0, 0, 0}), 7),
116-
netip.PrefixFrom(netip.AddrFrom4([4]byte{4, 0, 0, 0}), 6),
117-
netip.PrefixFrom(netip.AddrFrom4([4]byte{8, 0, 0, 0}), 5),
118-
netip.PrefixFrom(netip.AddrFrom4([4]byte{16, 0, 0, 0}), 4),
119-
netip.PrefixFrom(netip.AddrFrom4([4]byte{32, 0, 0, 0}), 3),
120-
netip.PrefixFrom(netip.AddrFrom4([4]byte{64, 0, 0, 0}), 2),
121-
netip.PrefixFrom(netip.AddrFrom4([4]byte{128, 0, 0, 0}), 1),
114+
netip.PrefixFrom(netip.AddrFrom4([4]byte{0: 1}), 8),
115+
netip.PrefixFrom(netip.AddrFrom4([4]byte{0: 2}), 7),
116+
netip.PrefixFrom(netip.AddrFrom4([4]byte{0: 4}), 6),
117+
netip.PrefixFrom(netip.AddrFrom4([4]byte{0: 8}), 5),
118+
netip.PrefixFrom(netip.AddrFrom4([4]byte{0: 16}), 4),
119+
netip.PrefixFrom(netip.AddrFrom4([4]byte{0: 32}), 3),
120+
netip.PrefixFrom(netip.AddrFrom4([4]byte{0: 64}), 2),
121+
netip.PrefixFrom(netip.AddrFrom4([4]byte{0: 128}), 1),
122122
}
123123
} else {
124124
inet4Ranges = []netip.Prefix{netip.PrefixFrom(netip.IPv4Unspecified(), 0)}
@@ -146,7 +146,13 @@ func (o *Options) BuildAutoRouteRanges(underNetworkExtension bool) ([]netip.Pref
146146
inet6Ranges = o.Inet6RouteAddress
147147
} else if autoRouteUseSubRanges && !underNetworkExtension {
148148
inet6Ranges = []netip.Prefix{
149-
netip.PrefixFrom(netip.IPv6Unspecified(), 1),
149+
netip.PrefixFrom(netip.AddrFrom16([16]byte{0: 1}), 8),
150+
netip.PrefixFrom(netip.AddrFrom16([16]byte{0: 2}), 7),
151+
netip.PrefixFrom(netip.AddrFrom16([16]byte{0: 4}), 6),
152+
netip.PrefixFrom(netip.AddrFrom16([16]byte{0: 8}), 5),
153+
netip.PrefixFrom(netip.AddrFrom16([16]byte{0: 16}), 4),
154+
netip.PrefixFrom(netip.AddrFrom16([16]byte{0: 32}), 3),
155+
netip.PrefixFrom(netip.AddrFrom16([16]byte{0: 64}), 2),
150156
netip.PrefixFrom(netip.AddrFrom16([16]byte{0: 128}), 1),
151157
}
152158
} else {

0 commit comments

Comments
 (0)