Table of Contents

Filtering

The filters a VpnHood client or server applies to its flows: pipes of IP and domain filters, and an IP mapper. Lists of IP ranges and domains can live in SQLite, and a domain is matched by the server name in each TLS connection.

When to use it

  • You split the tunnel: some traffic goes through the VPN, and the rest goes straight out.
  • A server blocks or allows destinations.

Which package to take

  • Core.Filtering.Abstractions: the filter pipes, with in-memory implementations.
  • Core.Filtering.Sqlite: IP range and domain lists in SQLite, for split country, split IP and split domain.
  • Core.Filtering.DomainFiltering: domains, by the SNI of each TLS connection.

Its packages

Package What it does
VpnHood.Core.Filtering.Abstractions The filters a VpnHood client or server applies to its flows: pipes of IP and domain filters and an IP mapper, with in-memory implementations. Overview · API
VpnHood.Core.Filtering.DomainFiltering Domain filtering at the packet level, by the server name in each TLS connection's SNI. Overview · API
VpnHood.Core.Filtering.Sqlite SQLite-backed IP range and domain filters (split-country, split-ip, split-domain) for VpnHood. Guide · API