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

Add function to toggle on/off IP Validation in Enhanced Permissioing NodeManager #1678

Open
john-sobrepena-partior opened this issue Sep 22, 2023 · 1 comment

Comments

@john-sobrepena-partior
Copy link

Rationale

Use case
We are running a 1st Quorum node in kubernetes pod with Enhanced Permissioning v2 enabled. A 2nd quorum node is hosted in another kubernetes cluster / namespace also running Enhanced Permissioning v2. The 1st and 2nd quorum node's enodeIds, ports and IP addresses were added to the list of nodes that are allowed to connect. The geth API quorumPermission_addNode() was used.

However, the 1st and 2nd node are not able to connect to each other because, for example - the incoming connection from 2nd node's IP has changed. Based on discussion with our infra team, and due to securities in place, the IP address of incoming connection may change or re-written before the connection request finally reach the pod where the other Quorum node is running. Due to this, the connectionAllowed() of v2/contract/NodeManager.sol rejects the connection.

Implementation

Do you have ideas regarding the implementation of this feature? Yes
Are you willing to implement this feature? Yes

Proposed Solution / Changes
I am proposing in this change to introduce a setIpValidation() function in NodeManager.sol to toggle IP validation on or off. This is enabled by default. The property can only be set before network boot status is finalized.

@john-sobrepena-partior
Copy link
Author

Hi @antonydenyer , I have raised a pull request (#1677) for the implementation of the above request. For review and feedback. Let me know if you require more information, I am more than happy to provide them. Thank you in advance.

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

No branches or pull requests

1 participant