Add DNS support (#516)

* Rename whitelist to allowlist.

Signed-off-by: Byron Gravenorst <byron.gravenorst@consensys.net>

* Additional updates.

Signed-off-by: Byron Gravenorst <byron.gravenorst@consensys.net>

* Whitelist renaming.

Signed-off-by: Byron Gravenorst <byron.gravenorst@consensys.net>

* Address reviewer feedback.

Signed-off-by: Byron Gravenorst <byron.gravenorst@consensys.net>

* Fix typos.

Signed-off-by: Byron Gravenorst <byron.gravenorst@consensys.net>

* Add DNS command line options.

Signed-off-by: Byron Gravenorst <byron.gravenorst@consensys.net>

* Add DNS support.

Signed-off-by: Byron Gravenorst <byron.gravenorst@consensys.net>

* Address reviewer feedback.

Signed-off-by: Byron Gravenorst <byron.gravenorst@consensys.net>

* Address reviewer feedback.

Signed-off-by: Byron Gravenorst <byron.gravenorst@consensys.net>

* Fix markdown issue.

Signed-off-by: Byron Gravenorst <byron.gravenorst@consensys.net>
pull/519/head
bgravenorst 4 years ago committed by GitHub
parent b1f5ea167e
commit f38eee539f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 8
      docs/Concepts/Node-Keys.md
  2. 8
      docs/HowTo/Limit-Access/Local-Permissioning.md
  3. 72
      docs/Reference/CLI/CLI-Syntax.md

@ -42,6 +42,14 @@ You can export the node address, either to standard output or to a specified fil
The enode URL identifies a node. For example, the `--bootnodes` option and the
`perm_addNodesToAllowlist` method specify nodes by enode URL.
!!! tip
If deploying Besu using Kubernetes in private permissioned networks, use the
[`--Xdns-enabled`](../Reference/CLI/CLI-Syntax.md#xdns-enabled) and
[`--Xdns-update-enabled`](../Reference/CLI/CLI-Syntax.md#xdns-update-enabled) options to use
domain names instead of IP addresses. This ensures that Besu can connect to a container even if
the IP address changes after being restarted.
The enode URL format is `enode://<id>@<host:port>` where:
* `<id>` is the node public key, excluding the initial 0x.

@ -6,6 +6,14 @@ description: Hyperledger Besu local permissioning
Local permissioning supports node and account allowlisting.
!!! tip
If deploying Besu using Kubernetes in private permissioned networks, use the
[`--Xdns-enabled`](../../Reference/CLI/CLI-Syntax.md#xdns-enabled) and
[`--Xdns-update-enabled`](../../Reference/CLI/CLI-Syntax.md#xdns-update-enabled) options to use
domain names instead of IP addresses. This ensures that Besu can connect to a container even if
the IP address changes after being restarted.
## Node allowlisting
You can allow access to specified nodes in the

@ -3029,6 +3029,78 @@ The price bump percentage to replace an existing transaction. The default is 10.
The maximum period, in hours, to hold pending transactions in the transaction pool. The default is
13.
### Xdns-enabled
=== "Syntax"
```bash
--Xdns-enabled=[<true|false>]
```
=== "Command Line"
```bash
--Xdns-enabled=true
```
=== "Environment Variable"
```bash
BESU_XDNS_ENABLED=true
```
=== "Configuration File"
```bash
Xdns-enabled=true
```
Enables DNS support. The default is `false`.
!!! important
Use domain names in private networks only because public networks require using IP addresses.
This is an early access feature. Some functionality may be updated before the feature is fully
released.
Use DNS with a trusted DNS provider in private networks because of limitations where IP addresses
can change. For example, when using Kubernetes pods.
### Xdns-update-enabled
=== "Syntax"
```bash
--Xdns-update-enabled=[<true|false>]
```
=== "Command Line"
```bash
--Xdns-update-enabled=true
```
=== "Environment Variable"
```bash
BESU_XDNS_UPDATE_ENABLED=true
```
=== "Configuration File"
```bash
Xdns-update-enabled=true
```
Allow Besu to continuously query the DNS to ensure updates to IP addresses are automatically
detected. The default is `false`.
[`Xdns-enabled`](#Xdns-enabled) must be set to `true`.
!!! important
This is an early access feature. Some functionality may be updated before the feature is fully released.
### version
=== "Syntax"

Loading…
Cancel
Save