wormhole-networks/mainnetv2/info.md

4.2 KiB

Wormhole v2 Mainnet

This Wormhole testnet connects the following chains:

  • Solana Mainnet Beta.

  • Ethereum Mainnet.

  • Terra Columbus mainnet.

  • Binance Smart Chain mainnet.

It runs the v2.2.0 guardiand reference implementation.

Network parameters

Gossip network name:

/wormhole/mainnet/2

Gossip bootstrap node:

/dns4/wormhole-mainnet-v2-bootstrap.certus.one/udp/8999/quic/p2p/12D3KooWL6xoqY8yU2xR2K6cP6jix4LnGSrRh94HCKiK371qUFeU

Connected chain contracts:

Network Bridge contract addresss
Ethereum Mainnet (Bridge) 0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B
Ethereum Mainnet (Impl) 0x736d2a394f7810c17b3c6fed017d5bc7d60c077d
Binance Smart Chain (Bridge) 0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B
Binance Smart Chain (Impl) 0x736d2a394f7810c17b3c6fed017d5bc7d60c077d
Solana Mainnet worm2ZoG2kUd4vFXhvjh93UUH596ayRfgQ2MgjNMTth

The Terra deployment is still in progress. Specify --terraContract "pending" in the meantime - the Terra watcher will fail, but all other chains will work.

Guardian set

Current generation: 0, containing only the Certus One bootstrap node with the address 0x58CC3AE5C097b213cE3c81979e1B9f9570746AA5.

See v1.prototext for the first guardian set update that will be executed once everyone's node on the network is live.

Example command line options

Refer to the operations guide on how to set up a node. Example systemd unit file:

[Unit]
Description=wormhole v2 guardiand
Requires=network.target
After=network.target

[Service]
User=wormhole
Group=wormhole
ExecStart=/opt/wormhole/wormhole/build/bin/guardiand bridge \
    --bootstrap "/dns4/wormhole-mainnet-v2-bootstrap.certus.one/udp/8999/quic/p2p/12D3KooWL6xoqY8yU2xR2K6cP6jix4LnGSrRh94HCKiK371qUFeU" \
    --network "/wormhole/testnet/2" \
    --ethContract "0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B" \
    --bscContract "0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B" \
    --solanaBridgeAddress "worm2ZoG2kUd4vFXhvjh93UUH596ayRfgQ2MgjNMTth" \
    --terraContract "pending" \
    --adminSocket /run/guardiand/admin.socket \
    --dataDir /opt/wormhole/data \
    --terraChainID "columbus-4" \
    --nodeName "<your name>" \                                # <-- your node's name (for network explorer usage)
    --nodeKey "/opt/wormhole/keys/wormhole-node.key" \        # <-- node key (auto-generated if not present)
    --bridgeKey "/opt/wormhole/keys/wormhole-guardian.key" \  # <-- your guardian key generated by "guardiand keygen"
    --ethRPC "wss://your-eth-node" \                          # <-- your ETH full/light node websocket URI (ws:// or wss://)
    --bscRPC "wss://bsc-node.example.com" \                   # <-- your BSC full/light node websocket URI
    --solanaRPC "http://solana-node:8899" \                   # <-- Solana RPC URI
    --solanaWS "ws://solana-node:8900" \                      # <-- Solana WS URI (typically RPC +1)
    --terraWS "ws://terra-node/websocket" \                   # <-- Terra node websocket URI
    --terraLCD "http://terra-node:1317" \                     # <-- Terra LCD server HTTP URI
    --statusAddr=[::]:6060                                    # <-- exposes Prometheus metrics - firewall recommended
RuntimeDirectory=guardiand
RuntimeDirectoryMode=700
RuntimeDirectoryPreserve=yes
PermissionsStartOnly=yes
PrivateTmp=yes
PrivateDevices=yes
SecureBits=keep-caps
AmbientCapabilities=CAP_IPC_LOCK
CapabilityBoundingSet=CAP_IPC_LOCK
NoNewPrivileges=yes
Restart=on-failure
RestartSec=5s
LimitNOFILE=65536
LimitMEMLOCK=infinity

[Install]
WantedBy=multi-user.target