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

any limit to join a new node or how to build a private nodes group? #2933

Open
aohan237 opened this issue Nov 15, 2024 · 6 comments
Open

any limit to join a new node or how to build a private nodes group? #2933

aohan237 opened this issue Nov 15, 2024 · 6 comments

Comments

@aohan237
Copy link

i'm new , read all the docs,but no information about this.

it seems that any node will automatic join, but how you decide which node should join or how can you limit the node to join

such as add an group key , or something like this

or say, every one we who use iroh to setup a node can see each other?

thanks in advance

@matheus23
Copy link
Contributor

matheus23 commented Nov 15, 2024

If you're talking about iroh-net: To be able to connect to another node, you need to know that node's NodeId. This is a 32-byte, unguessable ed25519 public key.

If you're talking about iroh-docs: To join a document, you need to know the document's identifier, which, you guessed it, is a 32-byte, unguessable ed25519 public key :)
In the document case, nodes tell each other about other nodes they know that are also interested in the same document using iroh-gossip.

@aohan237
Copy link
Author

i learn and test with iroh cli.

maybe the iroh-net : it seems that there is something mechnism about auto discovery with relay server. so the relay server will tell the node which nodeid it should connect? but how the relay decide wich nodeid needs sent to my local node? i mean all the node which use the same relay server, can be seen by the relay server?

about the iroh-docs, the doc from website writes clearly

@aohan237
Copy link
Author

aohan237 commented Nov 15, 2024

or say , if i setup two local nodes, you setup a remote node, how does these nodes connect eachother?

if we use the same relay server, why my local nodes can not see your remote node ,or we can see each other? if we all use iroh cli to build node

@matheus23
Copy link
Contributor

When you generate a "ticket" to share access to a document, then that ticket contains a NodeId to contact for joining the document. You can try pasting a ticket to https://ticket.iroh.computer/ to see what's inside.

There is almost no "ambient discovery" in iroh. With that I mean just learning about other nodes without asking for them specifically. Only when you enable local-swarm-discovery (which is enabled by default in the CLI), and then only in your local network.

To contact a remote node, you need to know its NodeId. Otherwise you won't be able to know or contact another node.

@aohan237
Copy link
Author

aohan237 commented Nov 16, 2024

When you generate a "ticket" to share access to a document, then that ticket contains a NodeId to contact for joining the document. You can try pasting a ticket to https://ticket.iroh.computer/ to see what's inside.

There is almost no "ambient discovery" in iroh. With that I mean just learning about other nodes without asking for them specifically. Only when you enable local-swarm-discovery (which is enabled by default in the CLI), and then only in your local network.

To contact a remote node, you need to know its NodeId. Otherwise you won't be able to know or contact another node.

Thanks, that is very clear

This explanation should be added to the docs

@aohan237
Copy link
Author

And how about the author

Say I want develop an app for user to sync doc on different devices,user can move devices smoothly

How can I make this user or author sync through different devices?

Do I have to export an author then store it somewhere,and make a login for user ,then import the author? To make it right for the user?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

No branches or pull requests

2 participants