public InterceptingDnsServer([NotNull] IPAddress endDnsIP, [NotNull] IPAddress serverIP, [NotNull, ItemNotNull] IReadOnlyList <Regex> redirectPatterns, [CanBeNull] PortForwardingManager manager) { _endDnsIP = endDnsIP; _serverIP = serverIP; _redirectPatterns = redirectPatterns; _state = DnsServerState.Stopped; _portForwardingManager = manager; }
private static void StartDns([NotNull] IPAddress localIP, [NotNull] IReadOnlyList <Regex> patterns) { if (_interceptingDnsServer != null) { return; } var remoteDns = IPAddress.Parse("8.8.8.8"); _forwardingManager = new PortForwardingManager(); _interceptingDnsServer = new InterceptingDnsServer(localIP, remoteDns, patterns, _forwardingManager); _interceptingDnsServer.Start(); }