-
-
Notifications
You must be signed in to change notification settings - Fork 538
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
External NAT IP mapping support #487
Conversation
667f9d8
to
4204878
Compare
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 @tkunicki for the contribution. I left some notes.
I will ping you on slack regarding tests and the Stun comments.
The Release checks failed because of updated go.sum file. This usually means that go.mod was updated and your local go.sum wasn't pushed |
4204878
to
8bf604c
Compare
…after STUN option removed
0eafff6
to
eed95df
Compare
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 @tkunicki for this contribution. @braginini I will be adding unit tests here before release
* External NAT IP mapping support * Ignore blacklisted interfaces, even if in user specified in mapping
Support external IP mappings for host interface IPs
The external IP must not be behind a CGNAT and port-forwarding for incoming UDP packets from
WgPort
on from the external IP toWgPort
on the host interface IP must be present. This can take form of:Configuration
A special value of
stun
will use the STUN server's XORMappedAddress to set the External IP value; this is for installations behind dynamic DHCP assuming the above restrictions are met.A single mapping will take the form of
external[/internal]
external
(required):stun
to use STUN to determine the external IP addressinternal
(optional)external
, the STUN request will be generated by a connection originating from the specified host interface IPExamples: