Skip to content

Instantly share code, notes, and snippets.

@kylelemons
Created September 6, 2017 20:30
Show Gist options
  • Save kylelemons/53690e0f756a8b97dbde97b603984073 to your computer and use it in GitHub Desktop.
Save kylelemons/53690e0f756a8b97dbde97b603984073 to your computer and use it in GitHub Desktop.
VpnService.Builder code for excluding local ranges
// IPv4
//
// Excluded ranges:
// 10.0.0.0/8
// 172.16.0.0/12
// 192.168.0.0/16
// 100.64.0.0/10
// 224.0.0.0/4
// 240.0.0.0/4
builder.addRoute("0.0.0.0", 5)
builder.addRoute("8.0.0.0", 7)
builder.addRoute("11.0.0.0", 8)
builder.addRoute("12.0.0.0", 6)
builder.addRoute("16.0.0.0", 4)
builder.addRoute("32.0.0.0", 3)
builder.addRoute("64.0.0.0", 3)
builder.addRoute("96.0.0.0", 6)
builder.addRoute("100.0.0.0", 10)
builder.addRoute("100.128.0.0", 9)
builder.addRoute("101.0.0.0", 8)
builder.addRoute("102.0.0.0", 7)
builder.addRoute("104.0.0.0", 5)
builder.addRoute("112.0.0.0", 4)
builder.addRoute("128.0.0.0", 3)
builder.addRoute("160.0.0.0", 5)
builder.addRoute("168.0.0.0", 6)
builder.addRoute("172.0.0.0", 12)
builder.addRoute("172.32.0.0", 11)
builder.addRoute("172.64.0.0", 10)
builder.addRoute("172.128.0.0", 9)
builder.addRoute("173.0.0.0", 8)
builder.addRoute("174.0.0.0", 7)
builder.addRoute("176.0.0.0", 4)
builder.addRoute("192.0.0.0", 9)
builder.addRoute("192.128.0.0", 11)
builder.addRoute("192.160.0.0", 13)
builder.addRoute("192.169.0.0", 16)
builder.addRoute("192.170.0.0", 15)
builder.addRoute("192.172.0.0", 14)
builder.addRoute("192.176.0.0", 12)
builder.addRoute("192.192.0.0", 10)
builder.addRoute("193.0.0.0", 8)
builder.addRoute("194.0.0.0", 7)
builder.addRoute("196.0.0.0", 6)
builder.addRoute("200.0.0.0", 5)
builder.addRoute("208.0.0.0", 4)
// IPv6
//
// Excluded ranges:
// fc00::/7
// fe80::/10
// ff00::/8
builder.addRoute("::", 1)
builder.addRoute("8000::", 2)
builder.addRoute("c000::", 3)
builder.addRoute("e000::", 4)
builder.addRoute("f000::", 5)
builder.addRoute("f800::", 6)
builder.addRoute("fe00::", 9)
builder.addRoute("fec0::", 10)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment