-
Notifications
You must be signed in to change notification settings - Fork 1k
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
feat(identify): push changes of external addresses #4885
base: master
Are you sure you want to change the base?
Conversation
df1bcd2
to
1ffc4b9
Compare
Interestingly, Kademlia test |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, just two comments!
I'd like to get @mxinden's input on whether this should be the default. It seems reasonable to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me apart from the bit-wise OR and the unexplained test failure.
Thank you for the patch.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thank you!
A historical note, I believe this has not been done in the past due to the following attack: Attacker continuously tells target a new (fake) external address of the target. Target sends N updates each time where N is the number of connected peers. I.e. an amplification attack. That said, this was pre-autonat where we could validate external addresses. With AutoNATv2, and only pushing the update after validation, this should be fine. |
This attack is a problem if we treat an observed address as an external address. We don't do that but users might easily do (take the identify event and call This makes me think that this behaviour should definitely not be the default. Instead, I think we should put a good warning and explanation to this option that educates users about this attack vector. |
Description
Related: #4867.
Notes & open questions
None
Change checklist