Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(minipipeline): change DNSDiff algorithm #1407

Merged
merged 1 commit into from
Nov 30, 2023
Merged

fix(minipipeline): change DNSDiff algorithm #1407

merged 1 commit into from
Nov 30, 2023

Conversation

bassosimone
Copy link
Contributor

We were running the algorithm on single IP addresses resolved by the probe against the set resolved by the control.

This is incorrect, because we should compare to the whole set resolved by the probe. This fact is relevant because v0.4 says there's consistency if a single IP address or ASN resolved by the probe intersects with the corresponding control set.

Conversely, our comparison required that each IP address resolved by the probe belonged to the control set of addresses or ASNs.

This diff solves the problem.

While there, remove DNSPossiblyInvalidAddrs. I have determined we need to run DNSDiff independently of bogons checks.

Incidentally, the new DNSDiff code I am adding is straight from Web Connectivity v0.4, so we should be good.

Part of ooni/probe#2634

We were running the algorithm on single IP addresses resolved by
the probe against the set resolved by the control.

This is incorrect, because we should compare to the whole set
resolved by the probe. This fact is relevant because v0.4 says
there's consistency if a single IP address or ASN resolved by
the probe intersects with the corresponding control set.

Conversely, our comparison required that each IP address resolved
by the probe belonged to the control set of addresses or ASNs.

This diff solves the problem.

While there, remove DNSPossiblyInvalidAddrs. I have determined
we need to run DNSDiff independently of bogons checks.

Incidentally, the new DNSDiff code I am adding is straight
from Web Connectivity v0.4, so we should be good.

Part of ooni/probe#2634
@bassosimone bassosimone requested a review from hellais as a code owner November 30, 2023 00:52
@bassosimone bassosimone merged commit 00a37ce into master Nov 30, 2023
8 of 10 checks passed
@bassosimone bassosimone deleted the modify branch November 30, 2023 01:05
Murphy-OrangeMud pushed a commit to Murphy-OrangeMud/probe-cli that referenced this pull request Feb 13, 2024
We were running the algorithm on single IP addresses resolved by the
probe against the set resolved by the control.

This is incorrect, because we should compare to the whole set resolved
by the probe. This fact is relevant because v0.4 says there's
consistency if a single IP address or ASN resolved by the probe
intersects with the corresponding control set.

Conversely, our comparison required that each IP address resolved by the
probe belonged to the control set of addresses or ASNs.

This diff solves the problem.

While there, remove DNSPossiblyInvalidAddrs. I have determined we need
to run DNSDiff independently of bogons checks.

Incidentally, the new DNSDiff code I am adding is straight from Web
Connectivity v0.4, so we should be good.

Part of ooni/probe#2634
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.

1 participant