diff --git a/documentation/docs/pages/operators/archive/_meta.json b/documentation/docs/pages/operators/archive/_meta.json index 831a538d7e..e7ee9ba104 100644 --- a/documentation/docs/pages/operators/archive/_meta.json +++ b/documentation/docs/pages/operators/archive/_meta.json @@ -1,5 +1,4 @@ { "archive": "Why Archive?", - "nodes": "Mixnet Nodes Setup", "faq": "FAQ" } diff --git a/documentation/docs/pages/operators/archive/archive.md b/documentation/docs/pages/operators/archive/archive.mdx similarity index 100% rename from documentation/docs/pages/operators/archive/archive.md rename to documentation/docs/pages/operators/archive/archive.mdx diff --git a/documentation/docs/pages/operators/archive/faq/mixnodes-faq.md b/documentation/docs/pages/operators/archive/faq/mixnodes-faq.md deleted file mode 100644 index b893ae5d8a..0000000000 --- a/documentation/docs/pages/operators/archive/faq/mixnodes-faq.md +++ /dev/null @@ -1,97 +0,0 @@ -# Frequently Asked Questions - -```admonish warning -**This is an archived page for backwards compatibility. The content of this page is not updated since April 19th 2024. Eventually this page will be terminated!** -``` - -## Nym Mixnet - -To see different stats about Nym Mixnet live, we recommend you to visit [status.notrustverify.ch](https://status.notrustverify.ch/d/CW3L7dVVk/nym-mixnet?orgId=1) built by [No Trust Verify](https://notrustverify.ch/) crew, one of the squads within Nym core community. - - - - -### Is there an explorer for Nym Mixnet? - -Yes, there are several places, some are built by Nym core community: - -* [Nym Explorer](https://explorer.nymtech.net/) -* [Guru Explorer](https://mixnet.explorers.guru/) -* [ExploreNYM](https://explorenym.net/) - -### What determines the rewards when running a Mix Node? - -The stake required for a Mix Node to achieve maximum rewards is called Mix Node saturation point. This is calculated from the staking supply (all circulating supply + part of unlocked tokens). The target level of staking is to have 40% of the staking supply locked in Mix Nodes. - -The node stake saturation point, which we denote by Nsat, is given by the stake supply, target level of staking divided between the rewarded nodes. - -This design ensures the nodes aim to have a same size of stake (reputation) which can be done by delegation staking, as well as it secures a whale prevention and decentralization of staking, as any higher level of delegated $NYM than Nsat per node results in worsening reward ratio. On the contrary, the more Mix Nodes are active, the lower is Nsat. The equilibrium is reached when the staked tokens are delegated equally across the active Mix nodes and that's our basis for this incentive system. - - - - -The rewarded nodes are the nodes which will receive some rewards by the end of the given epoch. These can be separated further separated into: - -1. Active: Top *N* nodes of the rewarded set (currently all of them but this can change), these are nodes which are used by the clients and mix packets. - -2. Standby: Bottom *N* nodes of the rewarded set, they don't mix data from the clients but are used for testing. Their reward is smaller. - -For more detailed calculation, read our blog post [Nym Token Economics update](https://blog.nymtech.net/nym-token-economics-update-fedff0ed5267). More info on staking can be found [here](https://blog.nymtech.net/staking-in-nym-introducing-mainnet-mixmining-f9bb1cbc7c36). And [here](https://blog.nymtech.net/want-to-stake-in-nym-here-is-how-to-choose-a-mix-node-to-delegate-nym-to-c3b862add165) is more info on how to choose a Mix Node for delegation. And finally an [update](https://blog.nymtech.net/quarterly-token-economic-parameter-update-b2862948710f) on token economics from July 2023. - - - -*More graphs and stats at [stats.notrustverify.ch](https://status.notrustverify.ch/d/CW3L7dVVk/nym-mixnet?orgId=1&from=1703074861988&to=1705666862004).* - -### Which VPS providers would you recommend? - -Consider in which jurisdiction you reside and where do you want to run a Mix Node. Do you want to pay by crypto or not and what are the other important particularities for your case? We always recommend operators to try to choose smaller and decentralised VPS providers over the most known ones controlling a majority of the internet. We receive some good feedback on these: Linode, Ghandi, Flokinet and Exoscale. Do your own research and share with the community. - -### Why is a mix node setup on a self-hosted machine so tricky? - -We don't recommend this setup because it's really difficult to get a static IP and route IPv6 traffic. - -### What's the Sphinx packet size? - -The sizes are shown in the configs [here](https://github.com/nymtech/nym/blob/1ba6444e722e7757f1175a296bed6e31e25b8db8/common/nymsphinx/params/src/packet_sizes.rs#L12) (default is the one clients use, the others are for research purposes, not to be used in production as this would fragment the anonymity set). More info can be found [here](https://github.com/nymtech/nym/blob/4844ac953a12b29fa27688609ec193f1d560c996/common/nymsphinx/anonymous-replies/src/reply_surb.rs#L80). - -### Why a Mix Node and a Gateway cannot be bonded with the same wallet? - -Because of the way the smart contract works we keep it one-node one-address at the moment. - -### Which nodes are the most needed to be setup to strengthen Nym infrastructure and which ones bring rewards? - -Ath this point the most crutial component needed are [Exit Gateways](../../legal/exit-gateway.md). - -### Are Mix Nodes whitelisted? - -Nope, anyone can run a Mix Node. Purely reliant on the node's reputation (self stake + delegations) & routing score. - -## Validators and tokens - -### What's the difference between NYM and uNYM? - -1 NYM = 1 000 000 uNYM - - - -### Why some Nyx blockchain operations take one hour and others are instant? - -This is based on the definition in [Nym's CosmWasm](https://github.com/nymtech/nym/tree/develop/common/cosmwasm-smart-contracts) smart contracts code. - -Whatever is defined as [a pending epoch event](https://github.com/nymtech/nym/blob/b07627d57e075b6de35b4b1a84927578c3172811/common/cosmwasm-smart-contracts/mixnet-contract/src/pending_events.rs#L35-L103) will get resolved at the end of the current epoch. - -And whatever is defined as [a pending interval event](https://github.com/nymtech/nym/blob/b07627d57e075b6de35b4b1a84927578c3172811/common/cosmwasm-smart-contracts/mixnet-contract/src/pending_events.rs#L145-L172) will get resolved at the end of the current interval. - -### Can I run a validator? - -We are currently working towards building up a closed set of reputable validators. You can ask us for coins to get in, but please don't be offended if we say no - validators are part of our system's core security and we are starting out with people we already know or who have a solid reputation. - -### Why is validator set entry whitelisted? - -We understand that the early days of the Nyx blockchain will face possible vulnerabilities in terms of size - easy to disrupt or halt the chain if a malicious party entered with a large portion of stake. Besides that, there are some legal issues we need to address before we can distribute the validator set in a fully permissions fashion. - -### Why does Nym do airdrops? - -It is part of ensuring decentralisation - we need to avoid a handful of people having too much control over the token and market. Of course ideally people will stake the tokens and contribute to the project at this stage. We run surveys to better understand what people are doing with their tokens and what usability issues there are for staking. Any feedback is appreciated as it helps us improve all aspects of using the token and participating in the ecosystem. diff --git a/documentation/docs/pages/operators/archive/faq/smoosh-faq.md b/documentation/docs/pages/operators/archive/faq/smoosh-faq.mdx similarity index 91% rename from documentation/docs/pages/operators/archive/faq/smoosh-faq.md rename to documentation/docs/pages/operators/archive/faq/smoosh-faq.mdx index 05c1967d68..c7d5c843bb 100644 --- a/documentation/docs/pages/operators/archive/faq/smoosh-faq.md +++ b/documentation/docs/pages/operators/archive/faq/smoosh-faq.mdx @@ -1,13 +1,14 @@ +import { Callout } from 'nextra/components'; + # Project Smoosh - FAQ -```admonish warning -**This is an archived page for backwards compatibility. We have switched to [`nym-node` binary](../../nodes/nym-node.md), please [migrate](../../nodes/setup.md#migrate) your nodes. The content of this page is not updated since April 26th 2024. Eventually this page will be terminated!** -``` + +**This is an archived page for backwards compatibility. We have switched to [`nym-node` binary](../../nodes/nym-node.mdx), please [migrate](../../nodes/nym-node/setup.mdx#migrate) your nodes. The content of this page is not updated since April 26th 2024. Eventually this page will be terminated!** + > We aim on purpose to make minimal changes to reward scheme and software. We're just 'smooshing' together stuff we already debugged and know works. > -- Harry Halpin, Nym CEO -
This page refer to the changes which are planned to take place over Q3 and Q4 2023. As this is a transition period in the beginning (Q3 2023) the [Mix Nodes FAQ page](mixnodes-faq.md) holds more answers to the current setup as project Smoosh refers to the eventual setup. As project Smoosh gets progressively implemented the answers on this page will become to be more relevant to the current state and eventually this FAQ page will be merged with the still relevant parts of the main Mix Nodes FAQ page. @@ -55,17 +56,17 @@ Follow the dynamic progress of exit policy implementation on Gateways below: | **2.** The exit policy is part of the Gateway setup by default. To disable this exit policy, operators must use `--disable-exit-policy` flag. | ✅ done | | **3.** The exit policy is the only option. The `allowed.list` is completely removed. | ✅ done | -Keep in mind the table above only relates to changes happening on Gateways. For the Project Smoosh progress refer to the [table above](./smoosh-faq.md#what-are-the-changes). Whether Exit Gateway functionality will be optional or mandatory part of every active Nym Node depends on the chosen [design](./smoosh-faq.md#what-does-it-mean-for-nym-nodes-operators). +Keep in mind the table above only relates to changes happening on Gateways. For the Project Smoosh progress refer to the [table above](#what-are-the-changes). Whether Exit Gateway functionality will be optional or mandatory part of every active Nym Node depends on the chosen [design](./smoosh-faq.md#what-does-it-mean-for-nym-nodes-operators). ### Can I run a Mix Node only? -It depends which [design](./smoosh-faq.md#what-does-it-mean-for-nym-nodes-operators) will ultimately be used. In case of the first - yes. In case of the second option, all the nodes will be setup with Exit Gateway functionality turned on. +It depends which [design](#what-does-it-mean-for-nym-nodes-operators) will ultimately be used. In case of the first - yes. In case of the second option, all the nodes will be setup with Exit Gateway functionality turned on. ## Token Economics & Rewards -```admonish info + For any specifics on Nym token economics and Nym Mixnet reward system, please read the [Nym token economics paper](https://nymtech.net/nym-cryptoecon-paper.pdf). -``` + ### What are the incentives for the node operator? @@ -77,7 +78,7 @@ The token economics will stay the same as they are, same goes for the reward alg ### How are the rewards distributed? -This depends on [design](./smoosh-faq.md#what-does-it-mean-for-nym-nodes-operators) chosen. In case of \#1, it will look like this: +This depends on [design](#what-does-it-mean-for-nym-nodes-operators) chosen. In case of \#1, it will look like this: As each operator can choose what roles their nodes provide, the nodes which work as open Gateways will have higher rewards because they are the most important to keep up and stable. Besides that the operators of Gateways may be exposed to more complication and possible legal risks. @@ -105,4 +106,4 @@ From an operator standpoint, it shall just be a standard Nym upgrade, a new opti So far the general line is that running a Gateway is not illegal (unless you are in Iran, China, and a few other places) and due to encryption/mixing less risky than running a normal VPN node. For Mix Nodes, it's very safe as they have "no idea" what packets they are mixing. -There are several legal questions and analysis to be made for different jurisdictions. To be able to share resources and findings between the operators themselves we created a [Community Legal Forum](../../legal/exit-gateway.md). +There are several legal questions and analysis to be made for different jurisdictions. To be able to share resources and findings between the operators themselves we created a [Community Legal Forum](../../community-counsel/exit-gateway.mdx). diff --git a/documentation/docs/pages/operators/archive/nodes/gateway-setup.md b/documentation/docs/pages/operators/archive/nodes/gateway-setup.md deleted file mode 100644 index 06b87fca1c..0000000000 --- a/documentation/docs/pages/operators/archive/nodes/gateway-setup.md +++ /dev/null @@ -1,222 +0,0 @@ -# Gateways - -```admonish warning -**This is an archived page for backwards compatibility for existing node operators. To start a new node or migrate, follow the [`nym-node` guides](../../nodes/nym-node.md).** The content of this page is not updated since April 19th 2024. Eventually this page will be terminated! -``` - -> The Nym gateway was built in the [building nym](../../binaries/building-nym.md) section. If you haven't yet built Nym and want to run the code, go there first. - - -```admonish info -As a result of [Project Smoosh](../faq/smoosh-faq.md), the current version of `nym-gateway` binary also contains `nym-network-requester` functionality which can be enabled [by the operator](./gateway-setup.md#initialising-gateway-with-network-requester). This combination is a basis of ***Nym Exit Gateway*** node - an essential piece in our new setup. Please read more in our [Project Smoosh FAQ](../faq/smoosh-faq.md) and [Exit Gateway](../../legal/exit-gateway.md) pages. We recommend operators begin to shift their setups to this new combined node, instead of operating two separate binaries. -``` - -> Any syntax in `<>` brackets is a user's unique variable. Exchange with a corresponding name without the `<>` brackets. - -## Current version - -The last version before migration to [`nym-node`](../../nodes/nym-node.md) was `1.1.33`. - -## Preliminary steps - -Make sure you do the preparation listed in the [preliminary steps page](initial-steps.md) before setting up your Gateway. - - -## Gateway setup -Now that you have built the codebase, set up your wallet, and have a VPS with the `nym-gateway` binary, you can set up your gateway with the instructions below. - -To begin, move to `/target/release` directory from which you run the node commands: - -``` -cd target/release -``` - -### Viewing command help -You can check that your binaries are properly compiled with: - -``` -./nym-gateway --help -``` - -You can also check the various arguments required for individual commands with: - -``` -./nym-gateway --help -``` -> Adding `--no-banner` startup flag will prevent Nym banner being printed even if run in tty environment. - -## Initialising your Gateway - -As Nym developers build towards [Exit Gateway](../../legal/exit-gateway.md) functionality, operators can now run their `nym-gateway` binary with inbuilt Network Requester and include the our new [exit policy](https://nymtech.net/.wellknown/network-requester/exit-policy.txt). Considering the plan to [*smoosh*](../faq/smoosh-faq.md) all the nodes into one binary and have wide opened Exit Gateways, we recommend this setup, instead of operating two separate binaries. - -```admonish warning -Before you start an Exit Gateway, read our [Operators Legal Forum](../../legal/exit-gateway.md) page and [*Project Smoosh FAQ*](../faq/smoosh-faq.md). -``` - -```admonish info -There has been an ongoing development with dynamic upgrades. Follow the status of the Project Smoosh [changes](../faq/smoosh-faq.md#what-are-the-changes) and the progression state of exit policy [implementation](../faq/smoosh-faq.html#how-will-the-exit-policy-be-implemented) to be up to date with the current design. -``` - -**Note:** Due to the development towards Exit Gateway functionality the `--host` flag has been replaced with `--listening-address`, this is the IP address which is used for receiving sphinx packets and listening to client data. Another flag `--public-ips` is required; it’s a comma separated list of IP’s that are announced to the `nym-api`, it is usually the address which is used for bonding. - -### Initialising Exit Gateway - -An operator can initialise the Exit Gateway functionality by adding Network Requester with the new exit policy option: - -``` -./nym-gateway init --id --listening-address 0.0.0.0 --public-ips "$(curl -4 https://ifconfig.me)" --with-network-requester --with-exit-policy true -``` - - -You can see that the printed information besides *identity* and *sphinx keys* also includes a long string called *address*. This is the address to be provided to your local [socks5 client](https://nymtech.net/docs/clients/socks5-client.html) as a `--provider` if you wish to connect to your own Exit Gateway. - -Additionally - -#### Add Network Requester to an existing Gateway - -If you already [upgraded](../../nodes/manual-upgrade.md) your Gateway to the [latest version](./gateway-setup.md#current-version) and initialised without a Network Requester, you can easily change its functionality to Exit Gateway with a command `setup-network-requester`. - -See the options: - -``` -./nym-gateway setup-network-requester --help -``` - - -To setup Exit Gateway functionality with our new [exit policy](https://nymtech.net/.wellknown/network-requester/exit-policy.txt) add a flag `--with-exit-policy true`. - -``` -./nym-gateway setup-network-requester --enabled true --with-exit-policy true --id -``` - -Say we have a Gateway with `` as `new-gateway`, originally initialised and ran without the Exit Gateway functionality. To change the setup, run: - - -``` -./nym-gateway setup-network-requester --enabled true --with-exit-policy true --id new-gateway -``` - - -In case there are any unexpected problems, you can also change it manually by editing the Gateway config file stored in `/home/user/.nym/gateways//config/config.toml` where the line under `[network_requester]` needs to be edited from `false` to `true`. - -``` -[network_requester] -# Specifies whether Network Requester service is enabled in this process. -enabled = true -``` - -Save, exit and restart your Gateway. Now you are an operator of post-smooshed Exit Gateway. - -#### Enable Nym exit policy to an existing Gateway with Network Requester functionality - -In case you already added Network Requester functionality to your Gateway as described above but haven't enabled the [exit policy](https://nymtech.net/.wellknown/network-requester/exit-policy.txt) there is an easy tweak to do so and turn your node into [Nym Exit Gateway](../faq/smoosh-faq.md#what-are-the-changes). - -Open the config file stored at `.nym/gateways//config/network_requester_config.toml` and set: -```sh -use_deprecated_allow_list = false -``` -Save, exit and restart your Gateway. Now you are an operator of post-smooshed Exit gateway. - -```admonish info -All information about Network Requester part of your Exit Gateway is in `/home/user/.nym/gateways//config/network_requester_config.toml`. -``` - -For now you can run Gateway without Network Requester or with and without the new exit policy. This will soon change as we inform in our [Project Smoosh FAQ](../faq/smoosh-faq.html#how-will-the-exit-policy-be-implemented). - -To read more about the configuration like whitelisted outbound requesters in `allowed.list` and other useful information, see the page [*Network Requester whitelist*](network-requester-setup.md#using-your-network-requester). - - -#### Initialising Gateway without Network Requester - -In case you don't want to run your Gateway with the Exit Gateway functionality, you still can run a simple Gateway. - -To check available configuration options use: - -``` - ./nym-gateway init --help -``` - -The following command returns a Gateway on your current IP with the `` of `simple-gateway`: - -``` -./nym-gateway init --id simple-gateway --listening-address 0.0.0.0 --public-ips "$(curl -4 https://ifconfig.me)" -``` - -The `$(curl -4 https://ifconfig.me)` command above returns your IP automatically using an external service. Alternatively, you can enter your IP manually if you wish. If you do this, remember to enter your IP **without** any port information. - -## Running your Gateway - -The `run` command starts the Gateway: - -``` -./nym-gateway run --id -``` - - -## Bonding your Gateway - -```admonish info -Before you bond your Gateway, please make sure the [firewall configuration](../../nodes/maintenance.md#configure-your-firewall) is setup so your Gateway can be reached from the outside. You can also setup WSS and automate your Gateway to simplify the operation overhead. We highly recommend to run any of these steps before bonding to prevent disruption of your Gateway's routing score later on. -``` - -### Via the Desktop wallet (recommended) - -You can bond your Gateway via the Desktop wallet. **Make sure your Gateway is running first**, then follow the steps below: - -1. Open your wallet, and head to the `Bonding` page, then select the node type `Gateway` and input your node details. Press `Next`. - -2. Enter the `Amount`, `Operating cost` and press `Next`. - -3. You will be asked to run a the `sign` command with your `gateway` - copy and paste the long signature `` and paste it as a value of `--contract-msg` in the following command: - -``` -./nym-gateway sign --id --contract-msg -``` - -It will look something like this (as `` we used `supergateway`): - -~~~admonish example collapsible=true title="Console output" -``` -./nym-gateway sign --id supergateway --contract-msg 2Mf8xYytgEeyJke9LA7TjhHoGQWNBEfgHZtTyy2krFJfGHSiqy7FLgTnauSkQepCZTqKN5Yfi34JQCuog9k6FGA2EjsdpNGAWHZiuUGDipyJ6UksNKRxnFKhYW7ri4MRduyZwbR98y5fQMLAwHne1Tjm9cXYCn8McfigNt77WAYwBk5bRRKmC34BJMmWcAxphcLES2v9RdSR68tkHSpy2C8STfdmAQs3tZg8bJS5Qa8pQdqx14TnfQAPLk3QYCynfUJvgcQTrg29aqCasceGRpKdQ3Tbn81MLXAGAs7JLBbiMEAhCezAr2kEN8kET1q54zXtKz6znTPgeTZoSbP8rzf4k2JKHZYWrHYF9JriXepuZTnyxAKAxvGFPBk8Z6KAQi33NRQkwd7MPyttatHna6kG9x7knffV6ebGzgRBf7NV27LurH8x4L1uUXwm1v1UYCA1WSBQ9Pp2JW69k5v5v7G9gBy8RUcZnMbeL26Qqb8WkuGcmuHhaFfoqSfV7PRHPpPT4M8uRqUyR4bjUtSJJM1yh6QSeZk9BEazzoJqPeYeGoiFDZ3LMj2jesbJweQR4caaYuRczK92UGSSqu9zBKmE45a - - - _ __ _ _ _ __ ___ - | '_ \| | | | '_ \ _ \ - | | | | |_| | | | | | | - |_| |_|\__, |_| |_| |_| - |___/ - - (nym-gateway - version v1.1.) - - ->>> attempting to sign 2Mf8xYytgEeyJke9LA7TjhHoGQWNBEfgHZtTyy2krFJfGHSiqy7FLgTnauSkQepCZTqKN5Yfi34JQCuog9k6FGA2EjsdpNGAWHZiuUGDipyJ6UksNKRxnFKhYW7ri4MRduyZwbR98y5fQMLAwHne1Tjm9cXYCn8McfigNt77WAYwBk5bRRKmC34BJMmWcAxphcLES2v9RdSR68tkHSpy2C8STfdmAQs3tZg8bJS5Qa8pQdqx14TnfQAPLk3QYCynfUJvgcQTrg29aqCasceGRpKdQ3Tbn81MLXAGAs7JLBbiMEAhCezAr2kEN8kET1q54zXtKz6znTPgeTZoSbP8rzf4k2JKHZYWrHYF9JriXepuZTnyxAKAxvGFPBk8Z6KAQi33NRQkwd7MPyttatHna6kG9x7knffV6ebGzgRBf7NV27LurH8x4L1uUXwm1v1UYCA1WSBQ9Pp2JW69k5v5v7G9gBy8RUcZnMbeL26Qqb8WkuGcmuHhaFfoqSfV7PRHPpPT4M8uRqUyR4bjUtSJJM1yh6QSeZk9BEazzoJqPeYeGoiFDZ3LMj2jesbJweQR4caaYuRczK92UGSSqu9zBKmE45a ->>> decoding the message... ->>> message to sign: {"nonce":0,"algorithm":"ed25519","message_type":"gateway-bonding","content":{"sender":"n1ewmme88q22l8syvgshqma02jv0vqrug9zq9dy8","proxy":null,"funds":[{"denom":"unym","amount":"100000000"}],"data":{"gateway":{"host":"62.240.134.189","mix_port":1789,"clients_port":9000,"location":"62.240.134.189","sphinx_key":"FKbuN7mPdoCG9jA3CkAfXxC5X4rHhqeMVtmfRtJ3cFZd","identity_key":"3RoAhR8gEdfBETMjm2vbMFzKddxXDdE9ygBAnJHWqSzD","version":"1.1.13"}}}} ->>> The base58-encoded signature is: -2SPDjLjX4b6XEtkgG7yD8Znsb1xycL1edFvRK4JcVnPsM9k6HXEUUeVS6rswRiYxoj1bMgiRKyPDwiksiuyxu8Xi -``` -~~~ - -* Copy the resulting signature: - -```sh -# >>> The base58-encoded signature is: -2SPDjLjX4b6XEtkgG7yD8Znsb1xycL1edFvRK4JcVnPsM9k6HXEUUeVS6rswRiYxoj1bMgiRKyPDwiksiuyxu8Xi -``` - -* And paste it into the wallet nodal, press `Next` and confirm the transaction. - -![Paste Signature](../../images/wallet-screenshots/wallet-gateway-sign.png) -*This image is just an example, copy-paste your own base58-encoded signature.* - -* Your Gateway is now bonded. - -> You are asked to `sign` a transaction on bonding so that the Mixnet smart contract is able to map your Nym address to your node. This allows us to create a nonce for each account and defend against replay attacks. - -### Via the CLI (power users) - -If you want to bond your Gateway via the CLI, then check out the [relevant section in the Nym CLI](https://nymtech.net/docs/tools/nym-cli.html#bond-a-mix-node) docs. - -## Maintenance - -For Gateway upgrade, firewall setup, port configuration, API endpoints, VPS suggestions, automation, WSS setup and more, see the [maintenance page](../../nodes/maintenance.md) diff --git a/documentation/docs/pages/operators/archive/nodes/initial-steps.md b/documentation/docs/pages/operators/archive/nodes/initial-steps.md deleted file mode 100644 index 88cf7c7512..0000000000 --- a/documentation/docs/pages/operators/archive/nodes/initial-steps.md +++ /dev/null @@ -1,45 +0,0 @@ -# Preliminary Steps - -```admonish warning -**This is an archived page for backwards compatibility. The content of this page is not updated since April 19th 2024. Eventually this page will be terminated!** -``` - -> The Nym `mixnode`, `gateway` and `network-requester` binaries were built in the [building nym](../../binaries/building-nym.md) section. If you haven't yet built Nym and want to run the code, go there first. - -There are a couple of steps that need completing before starting to set up your mix node, gateway or a network requester: - -- preparing your [desktop wallet](https://nymtech.net/docs/wallet/desktop-wallet.html) or [CLI wallet](https://nymtech.net/docs/wallet/cli-wallet.html). -- requisitioning a VPS (Virtual Private Server) - -### Wallet preparation -#### Mainnet -Before you initialise and run your mix node, head to our [website](https://nymtech.net/download/) and download the Nym wallet for your operating system. If pre-compiled binaries for your operating system aren't available, you can build the wallet yourself with instructions [here](https://nymtech.net/docs/wallet/desktop-wallet.html). - -If you don't already have one, please create a Nym address using the wallet, and fund it with tokens. The minimum amount required to bond a mix node is 100 `NYM`, but make sure you have a bit more to account for gas costs. - -`NYM` can be purchased via Bity from the wallet itself with BTC or fiat, and is currently present on several [exchanges](https://www.coingecko.com/en/coins/nym#markets). - -> Remember that you can **only** use Cosmos `NYM` tokens to bond your mix node. You **cannot** use ERC20 representations of `NYM` to run a node. - - -#### Sandbox testnet -Make sure to download a wallet and create an account as outlined above. Then head to our [token faucet](https://faucet.nymtech.net/) and get some tokens to use to bond it. - -### VPS Hardware Specs -You will need to rent a VPS to run your node on. One key reason for this is that your node **must be able to send TCP data using both IPv4 and IPv6** (as other nodes you talk to may use either protocol). - -For the moment, we haven't put a great amount of effort into optimizing concurrency to increase throughput, so don't bother provisioning a beastly server with multiple cores. This will change when we get a chance to start doing performance optimizations in a more serious way. Sphinx packet decryption is CPU-bound, so once we optimize, more fast cores will be better. - -For now, see the below rough specs: - -- Processors: 2 cores are fine. Get the fastest CPUs you can afford. - -#### For mix node - -- RAM: Memory requirements are very low - typically a mix node may use only a few hundred MB of RAM. -- Disks: The mixnodes require no disk space beyond a few bytes for the configuration files. - -#### For Gateway - -- RAM: Memory requirements depend on the amount of users your Gateway will be serving at any one time. If you're just going to be using it yourself, then minimal RAM is fine. **If you're running your Gateway as part of a Service Grant, get something with at least 4GB RAM.** -- Disks: much like the amount of RAM your Gateway could use, the amount of disk space required will vary with the amount of users your Gateway is serving. **If you're running your Gateway as part of a Service Grant, get something with at least 40GB storage.** diff --git a/documentation/docs/pages/operators/archive/nodes/mix-node-setup.md b/documentation/docs/pages/operators/archive/nodes/mix-node-setup.md deleted file mode 100644 index ab21518d86..0000000000 --- a/documentation/docs/pages/operators/archive/nodes/mix-node-setup.md +++ /dev/null @@ -1,243 +0,0 @@ -# Mix Nodes - -```admonish warning -**This is an archived page for backwards compatibility for existing node operators. To start a new node or migrate, follow the [`nym-node` guides](../../nodes/nym-node.md).** The content of this page is not updated since April 19th 2024. Eventually this page will be terminated! -``` - -> The Nym Mix Node binary was built in the [building nym](../../binaries/building-nym.md) section. If you haven't yet built Nym and want to run the code, go there first. - -> Any syntax in `<>` brackets is a user's unique variable. Exchange with a corresponding name without the `<>` brackets. - -## Current version - -The last version before migration to [`nym-node`](../../nodes/nym-node.md) was `1.1.35`. - -The `nym-mix node` binary is currently one point version ahead of the rest of the platform binaries due to a patch applied between releases. - -## Preliminary steps - -Make sure you do the preparation listed in the [preliminary steps page](initial-steps.md) before setting up your Mix Node. - -## Mix node setup - -Now that you have built the [codebase](../../binaries/building-nym.md), set up your [wallet](https://nymtech.net/docs/wallet/desktop-wallet.html), and have a VPS with the `nym-mix node` binary, you can set up your Mix Node with the instructions below. - -To begin, move to `/target/release` directory from which you run the node commands: - -``` -cd target/release -``` - -### Viewing command help - -You can check that your binaries are properly compiled with: - -``` -./nym-mixnode --help -``` - -Which should return a list of all available commands. - -You can also check the various arguments required for individual commands with: - -``` -./nym-mixnode --help -``` - -> Adding `--no-banner` startup flag will prevent Nym banner being printed even if run in tty environment. - -### Initialising your Mix Node - -To check available configuration options for initializing your node use: - -``` -./nym-mixnode init --help -``` - -Initialise your Mix Node with the following command, replacing the value of `--id` with the moniker you wish to give your Mix Node. Your `--host` must be publicly routable on the internet in order to mix packets, and can be either an Ipv4 or IPv6 address. The `$(curl -4 https://ifconfig.me)` command returns your IP automatically using an external service. If you enter your IP address manually, enter it **without** any port information. - -``` -./nym-mixnode init --id --host $(curl -4 https://ifconfig.me) -``` - -> The `init` command will refuse to destroy existing Mix Node keys. - -During the `init` process you will have the option to change the `http_api`, `verloc` and `mixnode` ports from their default settings. If you wish to change these in the future you can edit their values in the `config.toml` file created by the initialization process, which is located at `~/.nym/mixnodes//`. - -## Node Description (optional) - -In order to easily identify your node via human-readable information later on, you can `describe` your Mix Node with the following command: - -``` -./nym-mixnode describe --id -``` -Node description is a short text that describes your node. It is displayed in the `./nym-mixnode list` command and in the `./nym-mixnode node-details --id ` command. It also shows up in the node explorer to let people know what your node is about and link to your website. - -You can set your node description, by creating a file called `description.toml` and put it in the same directory as your `config.toml` file (`~/.nym/mixnodes//config/description.toml`). The file should look like this example: - -```toml -name = "Winston Smith" -description = "I am the Sphinx" -link = "https://nymtech.net" -location = "Giza, Egypt" -``` - -> Remember to restart your `nym-mixnode` process in order for the new description to be propagated. - -## Running your Mix Node - -Run your Mix Node with: - -``` -./nym-mixnode run --id -``` - -Have a look at the saved configuration files in `$HOME/.nym/mixnodes/` to see more configuration options. - -## Bonding your Mix Node - -```admonish caution -From `v1.1.3`, if you unbond your Mix Node that means you are leaving the mixnet and you will lose all your delegations (permanently). You can join again with the same identity key, however, you will start with **no delegations**. -``` - -To initialise, run and bond your Mix Node are the minimum steps to do in order for your Mix Node to work. However we recommend to do a few more steps before bonding. These steps will make it easier for you as a node operator on a long run as well as for others to possibly delegate Nym tokens to your Mix Node. These steps are: - -- [Describe your Mix Node](./mix-node-setup.md#node-description-optional) -- [Configure your firewall](../../nodes/maintenance.md#configure-your-firewall) -- [Automate your Mix Node](../../nodes/maintenance.md#vps-setup-and-automation) -- Set the [ulimit](../../nodes/maintenance.md#set-the-ulimit-via-systemd-service-file), in case you haven't automated with [systemd](../../nodes/maintenance.md#set-the-ulimit-on-non-systemd-based-distributions) - -### Bond via the Desktop wallet (recommended) - -You can bond your Mix Node via the Desktop wallet. - -* Open your wallet, and head to the `Bond` page, then select the node type `Mixnode` and input your node details. Press `Next`. - -* Enter the `Amount`, `Operating cost` and `Profit margin` and press `Next`. - -* You will be asked to run a the `sign` command with your `mixnode` - copy and paste the long signature as the value of `--contract-msg` and run it. - -``` -./nym-mixnode sign --id --contract-msg -``` - -* Copy the resulting signature: - -```sh -# >>> The base58-encoded signature is: -2bbDJSmSo9r9qdamTNygY297nQTVRyQaxXURuomVcRd7EvG9oEC8uW8fvZZYnDeeC9iWyG9mAbX2K8rWEAxZBro1 -``` - -* And paste it into the wallet nodal, press `Next` and confirm the transaction. - -![Paste Signature](../../images/wallet-screenshots/wallet-sign.png) -*This image is just an example, copy-paste your own base58-encoded signature* - -* Your node will now be bonded and ready to mix at the beginning of the next epoch (at most 1 hour). - -> You are asked to `sign` a transaction on bonding so that the Mixnet smart contract is able to map your nym address to your node. This allows us to create a nonce for each account and defend against replay attacks. - -If everything worked, you'll see your node running on the either the [Sandbox testnet network explorer](https://sandbox-explorer.nymtech.net) or the [mainnet network explorer](https://explorer.nymtech.net), depending on which network you're running. - -Note that your node's public identity key is displayed during startup, you can use it to identify your node in the list. - -### Bond via the CLI (power users) -If you want to bond your Mix Node via the CLI, then check out the [relevant section in the Nym CLI](https://nymtech.net/docs/tools/nym-cli.html#bond-a-mix-node) docs. - - -## Node Families - -Node family involves setting up a group of Mix Nodes that work together to provide greater privacy and security for network communications. This is achieved by having the nodes in the family share information and routes, creating a decentralized network that makes it difficult for third parties to monitor or track communication traffic. - -### Create a Node Family - -To create a Node family, you will need to install and configure multiple Mix Nodes, and then use the CLI to link them together into a family. Once your Node family is up and running, you can use it to route your network traffic through a series of nodes, obscuring the original source and destination of the communication. - -You can use either `nym-cli` which can be downloaded from the [release page](https://github.com/nymtech/nym/releases) or compiling `nyxd`. - - -Change directory by `cd ///` and run the following on the family head to obtain the signature for the member: - -``` -./nym-mixnode sign --id --text -``` - -Using `nym-cli`: - -> `--mnemonic` is the mnemonic of the member wanting to be the head of family. - -``` -/nym-cli cosmwasm execute '{"create_family": {"signature": "","family_head": "","owner_signature":"","label": ""}}' --mnemonic -``` - -Using `nyxd`: - -> `--from` is mnemonic of the member wanting to join the family. - -``` -./nyxd tx wasm execute ${MIXNET-CONTRACT} '{"join_family": {"signature": "","family_head": ""}}' --node ${VALIDATOR-ENDPOINT} --from mix1 --chain-id nyx --gas-prices 0.025unym --gas auto --gas-adjustment 1.3 -y -b block -``` - -To get the node owner signature, use: - -`./nym-mixnode node-details --id ` - -### Joining a Node Family - -Change directory by `cd ///` and run the following on the family head to obtain the signature for the member: - -``` -./nym-mixnode sign --id --text -``` - -Using `nym-cli`: - -``` -./nym-cli cosmwasm execute '{"join_family": {"signature": "","family_head": "","owner_signautre": "", "label":""}}' --mnemonic -``` - -Using `nyxd`: - -``` -./nyxd tx wasm execute ${MIXNET-CONTRACT} '{"join_family": {"signature": "","family_head": ""}}' --node ${VALIDATOR-ENDPOINT} --from mix1 --chain-id nyx --gas-prices 0.025unym --gas auto --gas-adjustment 1.3 -y -b block -``` - - -To get the node owner signature, use: - -`./nym-mixnode node-details --id ` - - -### Leaving a family -If wanting to leave, run the same initial command as above, followed by: - -Using `nym-cli`: - -``` -./nym-cli cosmwasm execute '{"leave_family": {"signature": "","family_head": "","owner_signautre": ""}}' --mnemonic -``` - -Using `nyxd`: - -``` -./nyxd tx wasm execute ${MIXNET-CONTRACT} '{"join_family": {"signature": "","family_head": ""}}' --node ${VALIDATOR-ENDPOINT} --from mix1 --chain-id nyx --gas-prices 0.025unym --gas auto --gas-adjustment 1.3 -y -b block -``` - -## Checking that your node is mixing correctly -### Network explorers -Once you've started your Mix Node and it connects to the validator, your node will automatically show up in the 'Mix Nodes' section of either the Nym Network Explorers: - -- [Mainnet](https://explorer.nymtech.net/overview) -- [Sandbox testnet](https://sandbox-explorer.nymtech.net/) - -Enter your **identity key** to find your node. There are numerous statistics about your node on that page that are useful for checking your up-time history, packets mixed, and any delegations your node may have. - -There are also 2 community explorers which have been created by [Nodes Guru](https://nodes.guru): - -- [Mainnet](https://mixnet.explorers.guru/) -- [Sandbox testnet](https://sandbox.mixnet.explorers.guru/) - -## Maintenance - -For Mix Node upgrade, firewall setup, port configuration, API endpoints, VPS suggestions, automation and more, see the [maintenance page](../../nodes/maintenance.md) - diff --git a/documentation/docs/pages/operators/archive/nodes/network-requester-setup.md b/documentation/docs/pages/operators/archive/nodes/network-requester-setup.md deleted file mode 100644 index 66e830f41a..0000000000 --- a/documentation/docs/pages/operators/archive/nodes/network-requester-setup.md +++ /dev/null @@ -1,205 +0,0 @@ -# Network Requester - -```admonish warning -**This is an archived page for backwards compatibility for existing node operators. To start a new node or migrate, follow the [`nym-node` guides](../../nodes/nym-node.md).** The content of this page is not updated since April 19th 2024. Eventually this page will be terminated! -``` - -> Nym Network Requester was built in the [building nym](../../binaries/building-nym.md) section. If you haven't yet built Nym and want to run the code, go there first. - -> Any syntax in `<>` brackets is a user's unique variable. Exchange with a corresponding name without the `<>` brackets. - -## Current version - -The last version before migration to [`nym-node`](../../nodes/nym-node.md) was `1.1.33`. - -## Preliminary steps - -Make sure you do the preparation listed in the [preliminary steps page](initial-steps.md) before setting up your Network Requester. - -## Network Requester Whitelist - -If you have access to a server, you can run the Network Requester, which allows Nym users to send outbound requests from their local machine through the Mixnet to a server, which then makes the request on their behalf, shielding them (and their metadata) from clearnet, untrusted and unknown infrastructure, such as email or message client servers. - -By default the Network Requester is **not** an open proxy (although it can be used as one). It uses a file called `allowed.list` (located in `~/.nym/service-providers/network-requester//`) as a whitelist for outbound requests. - -**Note:** If you run Network Requester as a part of the Exit Gateway (suggested setup) the `allowed.list` will be stored in `~/.nym/gateways//data/network-requester-data/allowed.list`. - -Any request to a URL which is not on this list will be blocked. - -On startup, if this file is not present, the requester will grab the default whitelist from [Nym's default list](https://nymtech.net/.wellknown/network-requester/standard-allowed-list.txt) automatically. - -This default whitelist is useful for knowing that the majority of Network Requesters are able to support certain apps 'out of the box'. - -**Operators of a Network Requester are of course free to edit this file and add the URLs of services they wish to support to it!** You can find instructions below on adding your own URLs or IPs to this list. - -The domains and IPs on the default whitelist can be broken down by application as follows: - -``` -# Keybase -keybaseapi.com -s3.amazonaws.com -amazonaws.com -twitter.com -keybase.io -gist.githubusercontent.com - -# Used to for uptime healthcheck (see the section on testing your requester below for more) -nymtech.net - -# Blockstream Green Bitcoin Wallet -blockstream.info -blockstream.com -greenaddress.it - -# Electrum Bitcoin Wallet -electrum.org - -# Helios Ethereum Client -alchemy.com -lightclientdata.org -p2pify.com - -# Telegram - these IPs have been copied from https://core.telegram.org/resources/cidr.txt as Telegram does -# not seem to route by domain as the other apps on this list do -91.108.56.0/22 -91.108.4.0/22 -91.108.8.0/22 -91.108.16.0/22 -91.108.12.0/22 -149.154.160.0/20 -91.105.192.0/23 -91.108.20.0/22 -185.76.151.0/24 -2001:b28:f23d::/48 -2001:b28:f23f::/48 -2001:67c:4e8::/48 -2001:b28:f23c::/48 -2a0a:f280::/32 - -# nym matrix server -nymtech.chat - -# generic matrix server backends -vector.im -matrix.org - -# monero desktop - mainnet -212.83.175.67 -212.83.172.165 -176.9.0.187 -88.198.163.90 -95.217.25.101 -136.244.105.131 -104.238.221.81 -66.85.74.134 -88.99.173.38 -51.79.173.165 - -# monero desktop - stagenet -162.210.173.150 -176.9.0.187 -88.99.173.38 -51.79.173.165 - -# alephium -alephium.org - -``` - -## Network Requester Directory - -You can find a list of Network Requesters running the default whitelist in the [explorer](https://explorer.nymtech.net/network-components/service-providers). This list comprises of the NRs running as infrastructure for NymConnect. - -> We are currently working on a smart-contract based solution more in line with how Mix Nodes and Gateways announce themselves to the network. - -## Viewing command help - -```admonish info -If you run your Network Requester as a part of your Exit Gateway according to the suggested setup, please skip this part of the page and read about [Exit Gateway setup](./gateway-setup.md#initialising-gateway-with-network-requester) instead. -``` - -To begin, move to `/target/release` directory from which you run the node commands: - -``` -cd target/release -``` - -The `./nym-network-requester --help ` command can be used to show a list of available parameters. - -You can check the required parameters for available commands by running: - -``` -./nym-network-requester --help -``` - -> Adding `--no-banner` startup flag will prevent Nym banner being printed even if run in tty environment. - -## Initializing and running your Network Requester - -The Network Requester needs to be initialized before it can be run. This is required for the embedded nym-client to connect successfully to the Mixnet. We want to specify an `` using the `--id` command and give it a value of your choice. The following command will achieve that: - -``` - ./nym-network-requester init --id -``` - -Now that we have initialized our network-requester, we can start it with the following command: - -``` - ./nym-network-requester run --id -``` - -## Using your Network Requester - -The next thing to do is use your requester, share its address with friends (or whoever you want to help privacy-enhance their app traffic). Is this safe to do? If it was an open proxy, this would be unsafe, because any Nym user could make network requests to any system on the internet. - -To make things a bit less stressful for administrators, the Network Requester drops all incoming requests by default. In order for it to make requests, you need to add specific domains to the `allowed.list` file at `$HOME/.nym/service-providers/network-requester/allowed.list` or if Network Requester is ran as a part of [Exit Gateway](./gateway-setup.md#initialising-gateway-with-network-requester), the `allowed.list` will be stored in `~/.nym/gateways//data/network-requester-data/allowed.list` - -### Global vs local allow lists -Your Network Requester will check for a domain against 2 lists before allowing traffic through for a particular domain or IP. - -* The first list is the default list on the [nymtech.net server](https://nymtech.net/.wellknown/network-requester/standard-allowed-list.txt). Your Requester will not check against this list every time, but instead will keep a record of accepted domains in memory. - -* The second is the local `allowed.list` file. - -### Supporting custom domains with your Network Requester -It is easy to add new domains and services to your Network Requester - simply find out which endpoints (both URLs and raw IP addresses are supported) you need to whitelist, and then add these endpoints to your `allowed.list`. - -> In order to keep things more organised, you can now use comments in the `allow.list` like the example at the top of this page. - -How to go about this? Have a look in your `nym-network-requester` config directory: - -``` -# nym-network-requester binary -ls -lt $HOME/.nym/service-providers/network-requester/*/data | grep "list" - -# nym-gateway binary -ls -lt $HOME/.nym/gateways/*/data/network-requester-data | grep "list" - -# returns: allowed.list unknown.list -``` - -We already know that `allowed.list` is what lets requests go through. All unknown requests are logged to `unknown.list`. If you want to try using a new client type, just start the new application, point it at your local [socks client](https://nymtech.net/docs/clients/socks5-client.html) (configured to use your remote `nym-network-requester`), and keep copying URLs from `unknown.list` into `allowed.list` (it may take multiple tries until you get all of them, depending on the complexity of the application). Make sure to delete the copied ones in `unknown.list` and restart your Exit Gateway or standalone Network Requester. - -> If you are adding custom domains, please note that whilst they may appear in the logs of your network-requester as something like `api-0.core.keybaseapi.com:443`, you **only need** to include the main domain name, in this instance `keybaseapi.com` - -### Running an open proxy -If you *really* want to run an open proxy, perhaps for testing purposes for your own use or among a small group of trusted friends, it is possible to do so. You can disable Network checks by passing the flag `--open-proxy` flag when you run it. If you run in this configuration, you do so at your own risk. - -## Testing your Network Requester -1. Make sure `nymtech.net` is in your `allowed.list` (remember to restart your Network Requester). - -2. Ensure that your `nym-network-requester` is initialized and running. - -3. In another terminal window, run the following: - -``` -curl -x socks5h://localhost:1080 https://nymtech.net/.wellknown/connect/healthcheck.json -``` - -This command should return the following: - -``` -{ "status": "ok" } -``` - - diff --git a/documentation/docs/pages/operators/archive/nodes/setup-guides.md b/documentation/docs/pages/operators/archive/nodes/setup-guides.md deleted file mode 100644 index 957c94ab51..0000000000 --- a/documentation/docs/pages/operators/archive/nodes/setup-guides.md +++ /dev/null @@ -1,15 +0,0 @@ -# Node Setup Guides - -```admonish warning -**This is an archived page for backwards compatibility. The content of this page is not updated since April 19th 2024. Eventually this page will be terminated!** -``` - -To setup any type of Nym's node, start with building [Nym's platform](../../binaries/building-nym.md) on the machine (VPS) where you want to run the node. Nodes will need to be bond to Nym's wallet, setup one [here](https://nymtech.net/docs/wallet/desktop-wallet.html). - -This section contains setup guides for the following node types: -* [Mix Node](mix-node-setup.md) -* [Gateway](gateway-setup.md) -* [Network Requester](network-requester-setup.md) -* [Validator](../../nodes/validator-setup.md) - - diff --git a/documentation/docs/pages/operators/binaries/building-nym.mdx b/documentation/docs/pages/operators/binaries/building-nym.mdx index 89ea708137..e0bdd89d00 100644 --- a/documentation/docs/pages/operators/binaries/building-nym.mdx +++ b/documentation/docs/pages/operators/binaries/building-nym.mdx @@ -43,7 +43,7 @@ If you really don't want to use the shell script installer, the [Rust installati ## Download and Build Nym Binaries - + You cannot build from GitHub's .zip or .tar.gz archive files on the releases page - the Nym build scripts automatically include the current git commit hash in the built binary during compilation, so the build will fail if you use the archive code (which isn't a Git repository). Check the code out from github using `git clone` instead. diff --git a/documentation/docs/pages/operators/community-counsel.mdx b/documentation/docs/pages/operators/community-counsel.mdx index 63c76568ff..c79555493c 100644 --- a/documentation/docs/pages/operators/community-counsel.mdx +++ b/documentation/docs/pages/operators/community-counsel.mdx @@ -6,7 +6,7 @@ import { MyTab } from 'components/generic-tabs.tsx'; # Community Counsel - + **The entire content of this section is under [Creative Commons Attribution 4.0 International Public License](https://creativecommons.org/licenses/by/4.0/).** diff --git a/documentation/docs/pages/operators/community-counsel/exit-gateway.mdx b/documentation/docs/pages/operators/community-counsel/exit-gateway.mdx index 2dd67037d0..7c484ab96d 100644 --- a/documentation/docs/pages/operators/community-counsel/exit-gateway.mdx +++ b/documentation/docs/pages/operators/community-counsel/exit-gateway.mdx @@ -12,7 +12,7 @@ This page is a part of Nym Community Counsel (before Legal Forum) and its conten This document presents an initiative to further support Nym’s mission of allowing privacy for everyone everywhere. This would be achieved with the support of Nym node operators operating Gateways and opening these to any online service. Such setup needs a **clear policy**, one which will remain the **same for all operators** running Nym nodes. [**Nym exit policy**](https://nymtech.net/.wellknown/network-requester/exit-policy.txt) is a combination of safeguards like (nowadays deprecated) `Tor Null deny list` and `Tor reduced policy` together with changes decided by Nym operators community through the governance (like in this [vote](https://forum.nymtech.net/t/poll-a-new-nym-exit-policy-for-exit-gateways-and-the-nym-mixnet-is-inbound/464)). This policy aims to find a healthy compromise between protecting the operators and NymVPN users against attacks while allowing for as wide experience when accessing the internet through Nym Network. - + The following part is for informational purposes only. Nym core team cannot provide comprehensive legal advice across all jurisdictions. Knowledge and experience with the legalities are being built up with the help of our counsel and with you, the community of Nym node operators. We encourage Nym node operators to join the [Node Operator](https://matrix.to/#/#operators:nymtech.chat) and [Operators Legal Forum](https://matrix.to/#/!YfoUFsJjsXbWmijbPG:nymtech.chat?via=nymtech.chat&via=matrix.org) channels on Element to share best practices and experiences. diff --git a/documentation/docs/pages/operators/community-counsel/isp-list.mdx b/documentation/docs/pages/operators/community-counsel/isp-list.mdx index 2702e88de1..f78f47c0e8 100644 --- a/documentation/docs/pages/operators/community-counsel/isp-list.mdx +++ b/documentation/docs/pages/operators/community-counsel/isp-list.mdx @@ -12,7 +12,7 @@ If you came across any legal findings, please share them in our [list of jurisdi While we trust that Nym node operators are honest, we would like to ask everyone to do your own research. - + To edit or add information to the ISP list, make changes to the csv file located [here](https://github.com/nymtech/nym/blob/develop/documentation/docs/data/csv/isp-sheet.csv) and submit your edits as a pull request according to [this guide](add-content.mdx). diff --git a/documentation/docs/pages/operators/community-counsel/jurisdictions.mdx b/documentation/docs/pages/operators/community-counsel/jurisdictions.mdx index 392019fd0e..91ce5773c4 100644 --- a/documentation/docs/pages/operators/community-counsel/jurisdictions.mdx +++ b/documentation/docs/pages/operators/community-counsel/jurisdictions.mdx @@ -2,7 +2,7 @@ import { Callout } from 'nextra/components'; # Exit Gateway - Jurisdictions - + The following part is for informational purposes only. Nym core team cannot provide comprehensive legal advice across all jurisdictions. Knowledge and experience with the legalities are being built up with the help of our counsel and with you, the community of Nym node operators. We encourage Nym node operators to join the [Node Operator](https://matrix.to/#/#operators:nymtech.chat) and [Operators Legal Forum](https://matrix.to/#/!YfoUFsJjsXbWmijbPG:nymtech.chat?via=nymtech.chat&via=matrix.org) channels on Element to share best practices and experiences. diff --git a/documentation/docs/pages/operators/community-counsel/jurisdictions/swiss.mdx b/documentation/docs/pages/operators/community-counsel/jurisdictions/swiss.mdx index 715bfc6cfd..de0ff3a363 100644 --- a/documentation/docs/pages/operators/community-counsel/jurisdictions/swiss.mdx +++ b/documentation/docs/pages/operators/community-counsel/jurisdictions/swiss.mdx @@ -2,7 +2,7 @@ import { Callout } from 'nextra/components'; # Legal environment: Switzerland - + The following part is for informational purposes only. Nym core team cannot provide comprehensive legal advice across all jurisdictions. Knowledge and experience with the legalities are being built up with the help of our counsel and with you, the community of Nym node operators. We encourage Nym node operators to join the [Node Operator](https://matrix.to/#/#operators:nymtech.chat) and [Operators Legal Forum](https://matrix.to/#/!YfoUFsJjsXbWmijbPG:nymtech.chat?via=nymtech.chat&via=matrix.org) channels on Element to share best practices and experiences. diff --git a/documentation/docs/pages/operators/community-counsel/jurisdictions/united-states.mdx b/documentation/docs/pages/operators/community-counsel/jurisdictions/united-states.mdx index e68621b922..23582652c3 100644 --- a/documentation/docs/pages/operators/community-counsel/jurisdictions/united-states.mdx +++ b/documentation/docs/pages/operators/community-counsel/jurisdictions/united-states.mdx @@ -2,7 +2,7 @@ import { Callout } from 'nextra/components'; # Legal environment: United States - + The following part is for informational purposes only. Nym core team cannot provide comprehensive legal advice across all jurisdictions. Knowledge and experience with the legalities are being built up with the help of our counsel and with you, the community of Nym node operators. We encourage Nym node operators to join the [Node Operator](https://matrix.to/#/#operators:nymtech.chat) and [Operators Legal Forum](https://matrix.to/#/!YfoUFsJjsXbWmijbPG:nymtech.chat?via=nymtech.chat&via=matrix.org) channels on Element to share best practices and experiences. diff --git a/documentation/docs/pages/operators/community-counsel/landing-pages.mdx b/documentation/docs/pages/operators/community-counsel/landing-pages.mdx index 2f40808365..9a1311a6ae 100644 --- a/documentation/docs/pages/operators/community-counsel/landing-pages.mdx +++ b/documentation/docs/pages/operators/community-counsel/landing-pages.mdx @@ -2,7 +2,7 @@ import { Callout } from 'nextra/components'; # Landing Pages - + The entire content of this page is under [Creative Commons Attribution 4.0 International Public License](https://creativecommons.org/licenses/by/4.0/). diff --git a/documentation/docs/pages/operators/faq/nym-nodes-faq.mdx b/documentation/docs/pages/operators/faq/nym-nodes-faq.mdx index 7bcadc1386..2b70ba427b 100644 --- a/documentation/docs/pages/operators/faq/nym-nodes-faq.mdx +++ b/documentation/docs/pages/operators/faq/nym-nodes-faq.mdx @@ -15,6 +15,6 @@ This design ensures the nodes aim to have a same size of stake (reputation) whic > ACTIVE_SET_PROBABILITY = NODE_PERFORMANCE ^ 20 * STAKE_SATURATION - + We are working on a new tokenomics and reward pages. Coming out soon. diff --git a/documentation/docs/pages/operators/nodes/maintenance.mdx b/documentation/docs/pages/operators/nodes/maintenance.mdx index d87cb9f0ff..0cc2b99a5c 100644 --- a/documentation/docs/pages/operators/nodes/maintenance.mdx +++ b/documentation/docs/pages/operators/nodes/maintenance.mdx @@ -107,7 +107,7 @@ Anything can happen to the server on which your node is running. To back up your Assuming that everyone access their wallets from local machine and does *not* store their seeds on VPS, point 2. should be a given. To backup your `nym-node` keys and configuration in the easiest way possible, copy the entire config directory `.nym` from your VPS to your local desktop, using a special copy command `scp`: - + Never store your mnemonic seed anywhere online nor do *not* share it with anyone! @@ -242,7 +242,7 @@ cp -r ~/.nym/nym-nodes/ ~/.nym/nym-nodes/default-nym-node/ # check occurences of the grep -ir "" ~/.nym/nym-nodes/default-nym-node/* ``` - + If your node `` was too generic (like 'gateway' etc) and it occurs elsewhere than just a custom value, **do not use `sed` command but rewrite the values manually using a text editor!** diff --git a/documentation/docs/pages/operators/nodes/maintenance/manual-upgrade.mdx b/documentation/docs/pages/operators/nodes/maintenance/manual-upgrade.mdx index 2cd78db33a..9139ebc7e9 100644 --- a/documentation/docs/pages/operators/nodes/maintenance/manual-upgrade.mdx +++ b/documentation/docs/pages/operators/nodes/maintenance/manual-upgrade.mdx @@ -81,7 +81,7 @@ Wait for the upgrade height to be reached and the chain to halt awaiting upgrade You can also use something like [Cosmovisor](https://github.com/cosmos/cosmos-sdk/tree/main/tools/cosmovisor) - grab the relevant information from the current upgrade proposal [here](https://nym.explorers.guru/proposal/9). - + Cosmovisor will swap the `nyxd` binary, but you'll need to already have the `libwasmvm.x86_64.so` in place. diff --git a/documentation/docs/pages/operators/nodes/maintenance/nymvisor-upgrade.mdx b/documentation/docs/pages/operators/nodes/maintenance/nymvisor-upgrade.mdx index f915829621..33bac5ffca 100644 --- a/documentation/docs/pages/operators/nodes/maintenance/nymvisor-upgrade.mdx +++ b/documentation/docs/pages/operators/nodes/maintenance/nymvisor-upgrade.mdx @@ -24,7 +24,7 @@ You can use Nymvisor to automate the upgrades of the following binaries: * `nym-client` * `nym-socks5-client` - + Nymvisor is an early and experimental software. Users should use it at their own risk. @@ -298,7 +298,7 @@ This section outlines what happens under the hood with the following commands: - Saves the Nymvisor instance's config file to `$NYMVISOR_CONFIG_PATH` and creates the full directory structure for the file - Outputs (to `stdout`) the full configuration used - + `nymvisor init` is specifically for initializing Nymvisor, and should **not** be confused with a daemon's `init` command - such as `nym-socks5-client init` (e.g. `nymvisor run init`). diff --git a/documentation/docs/pages/operators/nodes/maintenance/nymvisor-upgrade/nymvisor-configuration.mdx b/documentation/docs/pages/operators/nodes/maintenance/nymvisor-upgrade/nymvisor-configuration.mdx index 1a46be3811..20b000959a 100644 --- a/documentation/docs/pages/operators/nodes/maintenance/nymvisor-upgrade/nymvisor-configuration.mdx +++ b/documentation/docs/pages/operators/nodes/maintenance/nymvisor-upgrade/nymvisor-configuration.mdx @@ -12,7 +12,7 @@ import { Steps } from 'nextra/components'; This section contains guide how to setup `systemd` automation for Nymvisor. If you are looking for other chapters, visit these pages: [VPS setup](../preliminrary-steps/vps-setup.mdx), advanced terminal tools like [tmux and nohup setup](../nym-node/configuration.mdx#vps-setup-and-automation), [`nym-node` automation](../nym-node/configuration.mdx#systemd) or [`validator` automation](../validator-setup/nyx-configuration#automation). - + Since you're planning to run your node via a Nymvisor instance, as well as creating a Nymvisor `.service` file, you will also want to **stop any previous node automation process you already have running**. diff --git a/documentation/docs/pages/operators/nodes/nym-node/bak-setup.mdx b/documentation/docs/pages/operators/nodes/nym-node/bak-setup.mdx index a795d53f81..14d1fe609d 100644 --- a/documentation/docs/pages/operators/nodes/nym-node/bak-setup.mdx +++ b/documentation/docs/pages/operators/nodes/nym-node/bak-setup.mdx @@ -13,7 +13,7 @@ import Mixnode from './snippets/mixnode-run-tab-snippet.mdx'; import { VarInfo } from '../../../../components/variable-info.tsx'; - + You can always use `--help` flag to see the commands or arguments associated with a given command. diff --git a/documentation/docs/pages/operators/nodes/nym-node/bonding.mdx b/documentation/docs/pages/operators/nodes/nym-node/bonding.mdx index 007b6597fa..ce039b1375 100644 --- a/documentation/docs/pages/operators/nodes/nym-node/bonding.mdx +++ b/documentation/docs/pages/operators/nodes/nym-node/bonding.mdx @@ -5,7 +5,7 @@ import { Steps } from 'nextra/components' # Bonding Nym Node - + To you unbond your Nym Node means you are leaving Nym network and you will lose all your delegations (permanently). You can join again with the same identity key, however, you will start with **no delegations**. @@ -21,7 +21,7 @@ You are asked to `sign` a transaction and bond your node to Nyx blockchain so th 4. [Setup & Run](setup.mdx) the node 5. [Configure your node](configuration.mdx) - + Do not bond your node to the API if the previous steps weren't finished. Bad connectivity, closed ports, or other poor setup will result in your node getting blacklisted. @@ -63,7 +63,7 @@ echo "$(curl -4 https://ifconfig.me)" - Enter the `Amount`, `Operating cost` and `Profit margin` and press `Next` - + If you are part of [Nym Delegation Program](https://delegations.explorenym.net) or Service Grants Program, make sure your values are within the [rules](https://forum.nymtech.net/t/nym-delegations-program-update/466) of the programs. Operators setting up larger OP or PM than defined in the rules will be excluded from the program without prior warning! diff --git a/documentation/docs/pages/operators/nodes/nym-node/configuration.mdx b/documentation/docs/pages/operators/nodes/nym-node/configuration.mdx index 4c7b1c194f..a6ed80e60d 100644 --- a/documentation/docs/pages/operators/nodes/nym-node/configuration.mdx +++ b/documentation/docs/pages/operators/nodes/nym-node/configuration.mdx @@ -132,7 +132,7 @@ RestartSec=30 WantedBy=multi-user.target ``` - + [Accepting T&Cs](setup.md#terms--conditions) is done via a flag `--accept-operator-terms-and-conditions` added explicitly to `nym-node run` command every time. If you use systemd automation, add the flag to your service file's `ExecStart` line. @@ -183,7 +183,7 @@ systemctl status nym-node.service - You can also do `service stop` or `service restart`. - + Anytime you make any changes to your `systemd` script after you've enabled it, you will need to run: ```sh systemctl daemon-reload @@ -213,7 +213,7 @@ However, most of the time the packets sent through the Mixnet are IPv4 based. Th If you preparing to run a `nym-node` with all modes enabled in the future, this setup is required. - + For everyone participating in Delegation Program or Service Grant program, this setup is a requirement! @@ -240,7 +240,7 @@ curl -6 https://ipv6.icanhazip.com telnet -6 ipv6.telnetmyip.com ``` - + Make sure to keep your IPv4 address enabled while setting up IPv6, as the majority of routing goes through that one! @@ -272,7 +272,7 @@ chmod +x network_tunnel_manager.sh && \ - **If you setting up a new node and not upgrading an existing one, keep it running and [bond](bonding.mdx) your node now**. Then come back here and follow the rest of the configuration. - + **Run the following steps as root or with `sudo` prefix!** diff --git a/documentation/docs/pages/operators/nodes/nym-node/configuration/proxy-configuration.mdx b/documentation/docs/pages/operators/nodes/nym-node/configuration/proxy-configuration.mdx index 7dfb6c099b..39b87be37f 100644 --- a/documentation/docs/pages/operators/nodes/nym-node/configuration/proxy-configuration.mdx +++ b/documentation/docs/pages/operators/nodes/nym-node/configuration/proxy-configuration.mdx @@ -9,14 +9,14 @@ This section will guide you in setting up a reverse proxy for serving `nym-node` In later sections, you will be setting up secure websocket (wss) to add additional security and encrypt connections coming to your node. Follow [this guide](#web-secure-socket-setup) for installation. - + Since SSL certificates can only be issued for a domain name and not an IP address, it is essential for you to register a new domain name and configure a domain record pointing to your node's IP address - + The commands in this setup need to be run with root permission. Either add a prefix `sudo` or execute them from a root shell. @@ -373,7 +373,7 @@ server { - Note: This guide assumes that the HTTP port used by you is `8080` (recommended default) . Adjust the configuration accordingly if you have defined a custom port for your `nym-node` HTTP connections -###### 3. Activate and test Nginx configuration +###### 3. Activate and test Nginx configuration - Create a symlink to `/etc/nginx/sites-enabled`: @@ -453,7 +453,7 @@ This section assumes that you have already configured a reverse proxy and have s -###### 1. Create a new Nginx configuration file called `/etc/nginx/sites-available/wss-config-nym` +###### 1. Create a new Nginx configuration file called `/etc/nginx/sites-available/wss-config-nym` - Open text editor ```sh @@ -524,7 +524,7 @@ systemctl restart nginx ###### 4. Finally, configure your `nym-node` to announce the port and hostname of your WSS and restart the node -- Open your node configuration file located at `~/.nym/nym-nodes//config/config.toml` +- Open your node configuration file located at `~/.nym/nym-nodes//config/config.toml` ```sh nano ~/.nym/nym-nodes//config/config.toml ``` @@ -566,4 +566,3 @@ wscat -c wss://: ``` - Check Swagger API of your node using the hostname: `https:///api/v1/swagger/#/` - diff --git a/documentation/docs/pages/operators/nodes/nym-node/setup.mdx b/documentation/docs/pages/operators/nodes/nym-node/setup.mdx index 20372ca7f1..d17a7f10de 100644 --- a/documentation/docs/pages/operators/nodes/nym-node/setup.mdx +++ b/documentation/docs/pages/operators/nodes/nym-node/setup.mdx @@ -67,7 +67,7 @@ https:///api/v1/swagger/#/ There are a few changes from the individual binaries used in the past. For example by default `run` command does `init` function as well, local node `--id` will be set by default unless specified otherwise etcetera. - + You can always use `--help` flag to see the commands or arguments associated with a given command. @@ -83,13 +83,13 @@ To list all available flags for each command, run `./nym-node --help` ``` - + The Wireguard flags currently have limited functionality. From version `1.1.6` ([`v2024.9-topdeck`](https://github.com/nymtech/nym/releases/tag/nym-binaries-v2024.9-topdeck)) wireguard is available and recommended to be switched on for nodes running as Gateways. Keep in mind that this option needs a bit of a special [configuration](configuration.md#wireguard-setup). ### Terms & Conditions - + From `nym-node` version `1.1.3` onward is required to accept [**Operators Terms & Conditions**]({{toc_page}}) in order to be part of the active set. Make sure to read them before you add the flag. @@ -121,7 +121,7 @@ curl -X 'GET' \ **`nym-node` introduces a default human readible ID (local only) `default-nym-node`, which is used if there is not an explicit custom `--id ` specified. All configuration is stored in `~/.nym/nym-nodes/default-nym-node/config/config.toml` or `~/.nym/nym-nodes//config/config.toml` respectively.** - + All commands with more options listed below include `--accept-operator-terms-and-conditions` flag, read [Terms & Conditions](#terms--conditions) chapter above before executing these commands. @@ -158,7 +158,7 @@ In such case, you can `run` a node to initalise it or try if everything works, b ### Migrate - + Migration is a must for all deprecated nodes (`nym-mixnode`, `nym-gateway`). For backward compatibility we created an [archive section](../archive/nodes/setup-guides.md) with all the guides for individual binaries. However, the binaries from version 1.1.35 (`nym-gateway`) and 1.1.37 (`nym-mixnode`) onwards will no longer have `init` command. **Nym cannot promise 100% serialisation for operators migrating from long outdated versions to the newest ones. If you are about to migrate, start with [`nym-node v1.1.0`](https://github.com/nymtech/nym/releases/tag/nym-binaries-v2024.3-eclipse) and keep upgrading version by version all the way to the latest one.** diff --git a/documentation/docs/pages/operators/nodes/performance-and-testing.mdx b/documentation/docs/pages/operators/nodes/performance-and-testing.mdx index aed72aae13..558587820e 100644 --- a/documentation/docs/pages/operators/nodes/performance-and-testing.mdx +++ b/documentation/docs/pages/operators/nodes/performance-and-testing.mdx @@ -28,7 +28,7 @@ For the purpose of the performance testing Nym core developers plan to run insta ## Testing - + For the moment we paused Fast and Furious `perf` environment. All load and speed testing is carried on directly Nym Mainnet as this is the only way to collect real performance data. diff --git a/documentation/docs/pages/operators/nodes/performance-and-testing/prometheus-grafana/explorenym-scripts.mdx b/documentation/docs/pages/operators/nodes/performance-and-testing/prometheus-grafana/explorenym-scripts.mdx index 34632b3fdb..e166c889b0 100644 --- a/documentation/docs/pages/operators/nodes/performance-and-testing/prometheus-grafana/explorenym-scripts.mdx +++ b/documentation/docs/pages/operators/nodes/performance-and-testing/prometheus-grafana/explorenym-scripts.mdx @@ -5,7 +5,7 @@ import { Steps } from 'nextra/components'; # ExploreNym Monitoring Scripts - + This setup and the scripts included were not written by Nym developers. As always do your own audit before installing any scripts on your machine and familiarize yourself with the security risks involved when opening ports or allowing http access. @@ -21,7 +21,7 @@ In collaboration with ExploreNYM we published a [step by step guide](#setup) to ExploreNYM also has a network measuring instance called `enym-monitor`. This setup is very simple for users, however it means that their data are all aggregated into one server such design always brings a risk of centralisation of distributed node's data into one computer. - + Make sure you understand and properly evaluate what degree of control you give permission to before granting access to your data to any tools running on someone else's servers. diff --git a/documentation/docs/pages/operators/nodes/preliminary-steps/vps-setup.mdx b/documentation/docs/pages/operators/nodes/preliminary-steps/vps-setup.mdx index f11eaee409..940872c24e 100644 --- a/documentation/docs/pages/operators/nodes/preliminary-steps/vps-setup.mdx +++ b/documentation/docs/pages/operators/nodes/preliminary-steps/vps-setup.mdx @@ -9,7 +9,7 @@ import PortsValidator from 'components/operators/snippets/ports-validator.mdx' We aim for Nym Network to be reliable and quality base layer of privacy accross the globe, while growing as distributed as possible. It's essential to have a fine tuned machine as a foundation for the nodes to meet the requirements and be rewarded for their work. - + A sub-optimally configured VPS often results in a non-functional node. To follow these steps carefully will save you time and money later on. @@ -65,7 +65,7 @@ To install a full node from scratch, refer to the [validator setup guide](../val Before node or validator setup, the VPS needs to be configured and tested, to verify your connectivity and make sure that your provider wasn't dishonest with the offered services. - + The commands listed in this chapter must be executed with a prefix `sudo` or from a root shell. diff --git a/documentation/docs/pages/operators/nodes/validator-setup.mdx b/documentation/docs/pages/operators/nodes/validator-setup.mdx index 193a2e4251..10585ced07 100644 --- a/documentation/docs/pages/operators/nodes/validator-setup.mdx +++ b/documentation/docs/pages/operators/nodes/validator-setup.mdx @@ -13,7 +13,7 @@ import {Accordion, AccordionItem} from "@nextui-org/react"; The validator is a Go application which implements it's functionalities using [Cosmos SDK](https://v1.cosmos.network/sdk). The underlying state-replication engine is powered by [CometBFT](https://cometbft.com/), where the consensus mechanism is based on the [Tendermint Consensus Algorithm](https://arxiv.org/abs/1807.04938). Finally, a [CosmWasm](https://cosmwasm.com) smart contract module controls crucial mixnet functionalities like decentralised directory service, node bonding, and delegated mixnet staking. - + We are currently running mainnet with a closed set of reputable validators. To ensure decentralisation of Nyx chain, we are working on a mechanism to onboard new validators to the network. To join the waitlist, please drop an email to `validators [at] nymtech.net` with details of your setup, experience and any other relevent information @@ -222,7 +222,7 @@ nyxd init --chain-id=nyx nyxd init --chain-id=sandbox ``` - + `init` generates `priv_validator_key.json` and `node_key.json`. If you have already set up a validator on a network, **make sure to back up the key located at** @@ -331,7 +331,7 @@ File at /path/to/genesis.json is a valid genesis file ### Setting up nyxd as full node (non-signing) - + Skip this section if you're planning to run a validator node to join network consensus. To ensure security & maximum availability of validators, do not expose additional services to the Internet @@ -412,7 +412,7 @@ You can then restart `nyxd` - it should start syncing from a block > 2000000. ### Joining Consensus - + You can skip this section if you are planning to run a full-node. This step will make your node a signing validator which joins network consensus diff --git a/documentation/docs/pages/operators/nodes/validator-setup/nym-api.mdx b/documentation/docs/pages/operators/nodes/validator-setup/nym-api.mdx index dc82da0ad3..a205a0a0b7 100644 --- a/documentation/docs/pages/operators/nodes/validator-setup/nym-api.mdx +++ b/documentation/docs/pages/operators/nodes/validator-setup/nym-api.mdx @@ -21,7 +21,7 @@ This is important for both the proper decentralisation of the network uptime cal The process of enabling these different aspects of the system will take time. At the moment, Nym API operators will only have to run the binary in a minimal 'caching' mode in order to get used to maintaining an additional process running alongside a full node. - + It is highly recommended to run `nym-api` alongside a full node and NOT a validator node, since you will be exposing HTTP port(s) to the Internet. We also observed degradation in p2p and block signing operations when `nym-api` was run alongside a signing validator. @@ -151,7 +151,7 @@ Begin by generating a new wallet address specifically for your instance to use i nyxd keys add signer ``` - + It's critical to securely back up the mnemonic phrase generated during this process. This mnemonic is your key to recovering the wallet in the future, so store it in a secure, offline location. @@ -205,7 +205,7 @@ By default the API will be trying to query your full node running locally on `lo ./nym-api run --id --nyxd-validator https://rpc-nym.yourcorp.tld:443 ``` - + You can also change the value of `local_validator` in the config file found by default in `$HOME/.nym/nym-api//config/config.toml`. diff --git a/documentation/docs/pages/operators/troubleshooting/nodes.mdx b/documentation/docs/pages/operators/troubleshooting/nodes.mdx index 670402ecbc..988e5fcae3 100644 --- a/documentation/docs/pages/operators/troubleshooting/nodes.mdx +++ b/documentation/docs/pages/operators/troubleshooting/nodes.mdx @@ -248,7 +248,7 @@ If you are still unable to see your node on the dashboard, or your node is decla - You did not configure your router firewall while running the node from your local machine behind NAT, or you are lacking IPv6 support - Your Mix Node is not running at all, it has either exited / panicked or you closed the session without making the node persistent. Check out the [instructions](../nodes/nym-node/configuration.mdx#automating-your-node-with-tmux-and-systemd). - + Your Nym Node **must speak both IPv4 and IPv6** in order to cooperate with other nodes and route traffic. This is a common reason behind many errors we are seeing among node operators, so check with your provider that your VPS is able to do this! @@ -286,7 +286,7 @@ If your connection doesn't work make sure to follow [VPS IPv6 setup](../nodes/ny #### Incorrect bonding information - + All delegated stake will be lost when un-bonding! However the Nym Node must be operational in the first place for the delegation to have any effect. diff --git a/documentation/docs/pages/operators/troubleshooting/vps-isp.mdx b/documentation/docs/pages/operators/troubleshooting/vps-isp.mdx index 2e80b99475..40c108c6dd 100644 --- a/documentation/docs/pages/operators/troubleshooting/vps-isp.mdx +++ b/documentation/docs/pages/operators/troubleshooting/vps-isp.mdx @@ -10,7 +10,7 @@ import { MyTab } from 'components/generic-tabs.tsx'; ## IPv6 troubleshooting - + To monitor connectivity of your Exit Gateway, use results of probe testing displayed in [harbourmaster.nymtech.net](https://harbourmaster.nymtech.net). @@ -72,7 +72,7 @@ post-up /sbin/ip -r route add default via ``` Last two lines are particularly important as they enable IPv6 routing. You can find YOUR_IPV6_GATEWAY using your server's control panel. There is no single way to find the gateway, so please access your control panel to find yours or open a support ticket. Here is an example of how it looks on [OVH](https://help.ovhcloud.com/csm/en-ie-vps-configuring-ipv6?id=kb_article_view&sysparm_article=KB0047567). - + Be extra careful editing this file since you may lock yourself out of the server. If it happens, you can always access the server via the hoster's VNC panel. @@ -110,7 +110,7 @@ It's up to you as a node operator to ensure that your public and private IPs mat Running a `nym-node` as a standalone process or wrapped in a service can produce gigabytes of logs. Eventually your operation can malfunction due to the logs chewing up too much disk space or memory. Below are two scripts that can help you clean this up. - + `rm` is a powerful tool, without an easy way of revoking. If you need to extract or backup anything, do it now. Make sure you understand what you removing before you execute these commands.