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

Deploy Zebra nodes on fixed IP addresses #2380

Closed
4 tasks
teor2345 opened this issue Jun 23, 2021 · 2 comments
Closed
4 tasks

Deploy Zebra nodes on fixed IP addresses #2380

teor2345 opened this issue Jun 23, 2021 · 2 comments
Labels
A-infrastructure Area: Infrastructure changes C-enhancement Category: This is an improvement

Comments

@teor2345
Copy link
Contributor

teor2345 commented Jun 23, 2021

Motivation

To test Zebra on testnet and mainnet, we should deploy Zebra nodes on fixed IP addresses.

This tests that Zebra is a full participant in the Zcash network.

API Reference

https://cloud.google.com/sdk/gcloud/reference/compute/instance-templates/create-with-container
https://cloud.google.com/sdk/gcloud/reference/compute/instance-groups/managed/create

listen_addr: SocketAddr

The address on which this node should listen for connections.

Can be address:port or just address. If there is no configured port, Zebra will use the default port for the configured network. address can be an IP address or a DNS name. DNS names are only resolved once, when Zebra starts up.

If a specific listener address is configured, Zebra will advertise it to other nodes. But by default, Zebra uses an unspecified address (“0.0.0.0” or “[::]”), which is not advertised to other nodes.

Zebra does not currently support:

However, other Zebra instances compensate for unspecified or incorrect listener addresses by adding the external IP addresses of peers to their address books.

https://doc.zebra.zfnd.org/zebra_network/struct.Config.html#structfield.listen_addr

Solution

  • Configure all deployed Zebra nodes with the Google Cloud external IP address
  • Allow inbound connections to ports 8233 and 18233
  • Deploy a mainnet and testnet Zebra node on fixed IP addresses, every time a release is tagged (using an action)

Optional:

  • Deploy a mainnet and testnet Zebra node on fixed IP addresses, every time the main branch is updated

Alternatives

Individual developers run their own nodes, but that's not as reliable as auto-deployment.

If the IP address changes frequently, nodes don't get included in DNS seeders.

@teor2345 teor2345 added A-infrastructure Area: Infrastructure changes C-enhancement Category: This is an improvement S-needs-triage Status: A bug report needs triage P-Medium labels Jun 23, 2021
@teor2345 teor2345 modified the milestone: 2021 Sprint 15 Jun 23, 2021
@teor2345 teor2345 added P-Low and removed P-Medium labels Jun 28, 2021
@mpguerra mpguerra removed the S-needs-triage Status: A bug report needs triage label Jun 28, 2021
@dconnolly
Copy link
Contributor

dconnolly commented Jan 12, 2022

Not strictly needed for release candidate, but we should discuss if we need to solve this before recommending it to users. // @mpguerra @ftm1000 @gustavovalverde

@teor2345
Copy link
Contributor Author

We opened this because we thought it might be causing the DNS seeder issues, but that doesn't seem likely right now.

@teor2345 teor2345 closed this as not planned Won't fix, can't repro, duplicate, stale May 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-infrastructure Area: Infrastructure changes C-enhancement Category: This is an improvement
Projects
None yet
Development

No branches or pull requests

3 participants