-
Notifications
You must be signed in to change notification settings - Fork 138
Added new NAT options #179
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
Merged
Merged
Changes from all commits
Commits
Show all changes
8 commits
Select commit
Hold shift + click to select a range
54aed8f
WIP
MadelineAu f7bc163
WIP
MadelineAu 32be3db
WIP
MadelineAu 9abb48f
WIP
MadelineAu ba7a6bc
Added nat methods
MadelineAu 0d6184d
updated CI and customised checks (#165)
NicolasMassart 03981c1
Rework
MadelineAu e8ac5b4
Merge branch 'master' into moreNat
MadelineMurray File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,64 @@ | ||
| description: Configuring NAT with Hyperledger Besu | ||
| <!--- END of page meta data --> | ||
|
|
||
| # Configuring NAT | ||
|
|
||
| Use the [`--nat-method`](../../Reference/CLI/CLI-Syntax.md#nat-method) option to specify the | ||
| NAT method. Options are: `UPNP`, `MANUAL`, `DOCKER`, `AUTO`, and `NONE`. | ||
|
|
||
| The [enode](../../Concepts/Node-Keys.md#enode-url) advertised to other nodes during discovery is the | ||
| external IP address and port. The [`admin_nodeInfo`](../../Reference/API-Methods.md#admin_nodeinfo) | ||
| JSON-RPC API method returns the external address and port for the `enode` and `listenAddr` properties. | ||
|
|
||
| While Hyperledger Besu is running, the following are not supported: | ||
|
|
||
| * IP address changes | ||
| * Changing NAT methods. To change the NAT method, restart the node with the [`--nat-method`](../../Reference/CLI/CLI-Syntax.md#nat-method) | ||
| option set. | ||
|
|
||
| ## UPnP | ||
|
|
||
| Specify `UPNP` to quickly allow inbound peer connections without manual router configuration. Use UPnP | ||
| in home or small office environments where a wireless router or modem provides NAT isolation. | ||
|
|
||
| UPnP automatically detects if a node is running in a UPnP environment and provides port forwarding. | ||
| UPnP might introduce delays during node startup, especially on networks where no UPnP gateway device can be found. | ||
|
|
||
| !!! tip | ||
| UPnP support is often disabled by default in networking firmware. If disabled by default, you must | ||
| explicitly enable UPnP support. | ||
|
|
||
| ## Manual | ||
|
|
||
| Specify `MANUAL` to explicitly configure the external IP address and ports to advertise. | ||
|
|
||
| When `MANUAL` is specified: | ||
|
|
||
| * [`--p2p-host`](../../Reference/CLI/CLI-Syntax.md#p2p-host) and [`--p2p-port`](../../Reference/CLI/CLI-Syntax.md#p2p-port) | ||
| define the advertised host and port for the P2P service. | ||
| * [`--rpc-http-host`](../../Reference/CLI/CLI-Syntax.md#rpc-http-host) and [`rpc-http-port`](../../Reference/CLI/CLI-Syntax.md#rpc-http-port) | ||
| define the advertised host and port for the JSON-RPC service. | ||
|
|
||
| ## Docker | ||
|
|
||
| Specify `DOCKER` to explicitly specify Hyperledger Besu is running inside a Docker container. | ||
| When `DOCKER` is specified, the host IP address is advertised not the container IP address. | ||
|
|
||
| The host IP is the advertised host specified in the [`docker run` command](https://docs.docker.com/engine/reference/commandline/run/#add-entries-to-container-hosts-file---add-host). | ||
| If not specified in the `docker run` command, the advertised host defaults to [`--p2p-host`](../../Reference/CLI/CLI-Syntax.md#p2p-host) | ||
| and [`--p2p-port`](../../Reference/CLI/CLI-Syntax.md#p2p-port). | ||
|
|
||
| ## Auto | ||
|
|
||
| `AUTO` is the default NAT method. `AUTO` detects if Besu is running inside Docker container. If | ||
| inside a Docker container, acts as if [`DOCKER`](#docker) is specified. Otherwise, acts as if | ||
| [`NONE`](#none) is specified. | ||
|
|
||
| ## None | ||
|
|
||
| Specify `NONE` to explicitly specify Besu does not use NAT. If the NAT method is `NONE` and [`--p2p-host`](../../Reference/CLI/CLI-Syntax.md#p2p-host), | ||
| [`--p2p-port`](../../Reference/CLI/CLI-Syntax.md#p2p-port), [`--rpc-http-host`](../../Reference/CLI/CLI-Syntax.md#rpc-http-host), | ||
| and [`rpc-http-port`](../../Reference/CLI/CLI-Syntax.md#rpc-http-port) are specified, they are | ||
| ignored in the advertised addresses and the default values are advertised. | ||
|
|
||
|
|
||
This file was deleted.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
"... external IP address ..."?
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.
The enode is more than the IP address so leaving as is