Skip to content

Conversation

@lixmal
Copy link
Collaborator

@lixmal lixmal commented Oct 21, 2025

Describe your changes

  • Clean up reg entries to avoid stale entries when the amount of match domains decreases between config updates
  • Use temporary reg entries so they are cleaned up on crash/reboot automatically

Issue ticket number and link

#3356

Stack

Checklist

  • Is it a bug fix
  • Is a typo/documentation fix
  • Is a feature enhancement
  • It is a refactor
  • Created tests that fail without the change (if possible)

By submitting this pull request, you confirm that you have read and agree to the terms of the Contributor License Agreement.

Documentation

Select exactly one:

  • I added/updated documentation for this change
  • Documentation is not needed for this change (explain why)

Docs PR URL (required if "docs added" is checked)

Paste the PR link from https://github.com/netbirdio/docs here:

https://github.com/netbirdio/docs/pull/__

Copilot AI review requested due to automatic review settings October 21, 2025 11:04
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR addresses a bug in the Windows DNS configuration where stale registry entries were not properly cleaned up when the number of match domains decreased between configuration updates. The fix ensures that old NRPT (Name Resolution Policy Table) entries are removed before applying new DNS configurations.

Key Changes:

  • Registry cleanup now occurs before applying new DNS match policies instead of only when match domains are empty
  • Added comprehensive test coverage to verify cleanup behavior when domain count decreases

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
client/internal/dns/host_windows.go Moved registry cleanup logic to always execute before applying new DNS policies, preventing stale entries
client/internal/dns/host_windows_test.go Added new test to verify NRPT entries are properly cleaned up when match domain count decreases

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@sonarqubecloud
Copy link

@lixmal lixmal merged commit 2fe2af3 into main Oct 21, 2025
38 checks passed
@lixmal lixmal deleted the windows-dns-cleanup branch October 21, 2025 16:14
hurricanehrndz added a commit to hurricanehrndz/netbird that referenced this pull request Oct 24, 2025
* upstream/main: (135 commits)
  [signal] Fix HTTP/WebSocket proxy not using custom certificates (netbirdio#4644)
  [client] Fix active profile name in debug bundle (netbirdio#4689)
  [management] Add peer disapproval reason (netbirdio#4468)
  [misc] Update tag name extraction in install.sh (netbirdio#4677)
  [client] Clean up match domain reg entries between config changes (netbirdio#4676)
  [client] Delete TURNConfig section from script (netbirdio#4639)
  [client] Security upgrade alpine from 3.22.0 to 3.22.2 netbirdio#4618
  [client] Fix status showing P2P without connection (netbirdio#4661)
  [client] Support BROWSER env for login (netbirdio#4654)
  [client] Remove rule squashing (netbirdio#4653)
  Handle the case when the service has already been down and the status recorder is not available (netbirdio#4652)
  [client] Set default wg port for new profiles (netbirdio#4651)
  [client] Add bind activity listener to bypass udp sockets (netbirdio#4646)
  [client] Fix missing flag values in profiles (netbirdio#4650)
  [management] feat: Basic PocketID IDP integration (netbirdio#4529)
  [client] Force TLS1.2 for RDP with Win11/Server2025 for CredSSP compatibility (netbirdio#4617)
  [misc] Add service definition for netbird-signal (netbirdio#4620)
  [management] pass temporary flag to validator (netbirdio#4599)
  [client] Explicitly disable DNSOverTLS for systemd-resolved (netbirdio#4579)
  [management] sync all other peers on peer add/remove (netbirdio#4614)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants