Corda: Enable communication between Corda nodes via the internet - corda

We are using Corda open source and would like to set up the communication between two nodes via the internet.
We have tried a public p2pAddress in node.conf with port 80 which did not work. Similarly, using another p2pPort like 10002 is also not working.
Here is an extract of our node.conf template:
detectPublicIp=false
devMode=true
messagingServerAddress="0.0.0.0:10002"
messagingServerExternal=false
myLegalName="${MY_LEGAL_NAME}"
p2pAddress="corda.mylegalname.company.com:10002"
Does anyone know how to solve this issue? The main question is: How can two nodes communicate in the Corda Network via public host names?
Thank you.
Alex

Are the two nodes registered to a Corda network? Nodes need to fetch the addresses of the other nodes from the Network Map first, otherwise they are not able to find them.

Related

OpenStack connect two subnets from different projects

in my OpenStack setup I have one tenant with different projects and I'm trying to figure out what would be the best approach to make communication between the
subnets 10.200.0.0/24 <-> 10.202.1.0/24 of two projects
possible (see picture below).
Would that be by creating a shared network and connect GW01 and GW02 to it with static routes?
or is there a thing such as "shared router"?
I am a bit lost in the endless possibilities of OpenStack and would appreciate any help/hints.
I would not dare to claim that I have the 'best' approach for you. I can tell what my initial idea would be.
You can share networkB with ProjectA using the instructions here: https://docs.openstack.org/neutron/latest/admin/config-rbac.html. Now if you create a router in ProjectA, you can add interfaces for it in the subnets in networkA as well ass the subnets in networkB. Because the router knows both networks, you don't need to add static routes to route between them.
This is correct solution:
Create a port on shared network
Attached the port by openstack CLI to each tenant ( project ) router

Private node cannot join cluster

I've been trying to create a EKS cluster in terraform, the scripts below works fine if I create my worker nodes in hte public subnet. However if i try to put them in the private subnet, it fails for unable to join cluster.
I think it's something to do with the gateway, but I've tried a lot of things now and i just can't to see what the issue is, would someone be able to help me please.
https://gitlab.com/roboops/case_study/-/tree/master/terraform
As per EKS documentation you would need outbound access for internet for worker nodes.
Check the notes section here https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html

How to setup multinode corda network in lab

I followed the documentation from docs.corda.net to setup 3 node dev corda network on a single machine.
My goal is to setup multinode production level corda network that involves multiple physical machines. Can someone please help me how can I achieve this?
I want to learn about the corda network capabilities, its different configuration modes etc etc.
I've already setup 3 node dev corda network on a single machine
There are two approaches with which you can achieve the above
Using the network bootstrapper , refer : https://docs.corda.net/network-bootstrapper.html
Using the Network Map Service
For a production level it is preferable to use the network map service as you can manage the nodes dynamically. This is not possible with the networkbootstrapper as the nodes informations are shared within the nodes during the boostrapping which cannot be changed
For NetworkMap Service you can refer Cordite NetwokMapService.

Can I use two controllers in two different machine

In my scenario, Transaction is between two nodes in two different Machines. Currently am using a controller in Machine A which acts as a notary as well. Can i use two controllers one in each machine?
As discussed here: Corda Controller Node, Corda has no concept of a "controller" node.
Up until Corda 2, each network had a single network map node, no matter how many machines were involved. Each node's configuration file would point to this network map node, using its IP address and port number.
In Corda 3, the network map node was replaced with a server distributing network map files. Details about how to deploy a network across machines in Corda 3 can be found here: https://docs.corda.net/tutorial-cordapp.html#running-nodes-across-machines.
yes, you can setup your case. NotaryChangeFlow (initiating), which should be used to change a state’s notary.

What is the meaning of "IN THE SAME NETWORK" in Elasticsearch clustering?

I'm setting up an Elasticsearch cluster using VMs in AWS.
I know that each node automatically tries to join an existing cluster which have the same cluster name in the same network.
However, I could not understand what the "same network" is.
Trying to understand about the same network, I found the concept of multicast and unicast.
It seems to be the same concept between "same network" and "in the multicast group".
If so, how can I figured out what ip addresses are in the multicast group? and how can I add or remove some IP addresses in the multicast group?
I'm not so familiar with the concepts of network.
What I really want to know is that how can I figured out whether my
nodes are in the same network or not? and how can I configure that.
Thanks in advance.
I am not a networking guy, but I believe they mean as long as they can see each other on a private network. Each node in a cluster wants to communicate internally with the other nodes on port 9300 by default.
So if you have one node on 10.20.10.5 (as an example) and one on 10.20.10.6, they should be able to "see" each other.
Also you can explicitly set the nodes in the cluster in the config file for Elastic.
For example in my elasticsearch.yml, I have something like this under the ### DISCOVERY ### section:
discovery.zen.ping.unicast.hosts: ["elastic-p1.domain.net:9300", "elastic-p2.domain.net:9300"]

Resources