# ENS Setup Guide

<figure><img src="https://4107147272-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEVHC4TEQKrh3Bfvq5dDi%2Fuploads%2F9ZE1sDvyNaRXn9W5bRsi%2Fpostspark_export_2025-04-16_17-52-26.jpeg?alt=media&#x26;token=a6ad5c53-d8aa-46a6-99be-52f7be66be65" alt=""><figcaption><p>ENS Domain Setup Guide for 4EVERLAND IPFS Deployments</p></figcaption></figure>

## Introduction to ENS Integration

4EVERLAND supports [**Ethereum Name Service**](https://ens.domains/) **(ENS)** domains for decentralized, censorship-resistant access to your IPFS projects. Unlike traditional DNS, ENS domains:<br>

* Are owned via Ethereum private keys (no registrars)
* Use smart contracts for censorship-resistant resolution
* Auto-update content hashes via IPNS (InterPlanetary Name System)
* Work with Web3 browsers/wallets (MetaMask, Brave, Opera Crypto)

{% hint style="info" %}
**Current Support**: IPFS projects only | **Future Plans**: IC/Arweave ENS support.
{% endhint %}

## Prerequisites

1. **Owned ENS Domain**:
   * Purchase via [ENS Registrar](https://app.ens.domains/) (e.g., `yourproject.eth`)
   * Ensure you control the Ethereum private key (MetaMask/ledger etc.)
2. **Deployed IPFS Project**:
   * Live on 4EVERLAND (Dashboard → Projects → \[Project] → Details)
3. **Web3 Wallet Setup**:
   * Install MetaMask (Chrome/Firefox) with Ethereum Mainnet/Rinkeby configured
   * Sufficient ETH for transaction fees (≈ $0.5–$2 USD for mainnet)

## Step 1: Add ENS Domain in 4EVERLAND

<figure><img src="https://4107147272-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEVHC4TEQKrh3Bfvq5dDi%2Fuploads%2FcewWlEFv5uPUgy3MtADO%2Fpostspark_export_2025-04-25_17-57-53.jpeg?alt=media&#x26;token=3e1d62dd-bc67-49ef-8579-f15da1a72984" alt=""><figcaption><p>Add ENS Domain in 4EVERLAND</p></figcaption></figure>

**Path**: Dashboard → Projects → \[IPFS Project] → **Domains** → **Decentralized Domains** → **ENS**&#x20;

1. **Domain Input**
   * Enter your ENS domain (e.g., `yourproject.eth` )
2. **Ownership Verification**
   * Click **Add** → 4EVERLAND will ask you to 'Verify Configuration'&#x20;

## Step 2: Configure Content Hash (IPNS Integration)

### 2.1 Automatic Setup (Recommended)

* 4EVERLAND auto-detects your project's IPNS hash (`k51qzi5uqu5...`)
* Click **Set Content Hash** → Sign transaction to:
  1. Update ENS `contenthash` record to your IPNS CID
  2. Click "Bind" to link IPNS to 4EVERLAND's auto-update service
  3. MetaMask popup appears:
     * Sign the message to prove domain control
     * Transaction cost: \~50k gas (≈ $0.3 on Ethereum mainnet)
  4. *Success*: Domain status changes to **" ✅"** (takes 1–3 minutes)

<figure><img src="https://4107147272-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEVHC4TEQKrh3Bfvq5dDi%2Fuploads%2F4dkGJPeSITu73rr0FFuc%2Fpostspark_export_2025-04-25_17-59-23.jpeg?alt=media&#x26;token=25e5f429-3e19-4766-b10e-ea7b377aa1dd" alt=""><figcaption></figcaption></figure>

### 2.2 Manual Setup (Advanced)

* Copy your 4EVERLAND project's IPNS hash (`k51qzi5uqu5...`)
* Go to [ENS App](https://app.ens.domains/) → Manage `yourproject.eth`
  * Add `contenthash` record:
    * Value: `{IPNS_HASH}` (IPNS prefix format)
    * Click **Save** → Sign transaction (cost: \~80k gas)
* *Success*: Domain status changes to **" ✅"** (takes 1–3 minutes)

## Step 3: Confirm Transaction & Resolution

1. **Track Transaction**
   * Etherscan: Search your wallet address for ENS `SetContentHash` event
   * 4EVERLAND Status:
     * **Invalid Configuration**: Waiting for blockchain confirmation (10–30 minutes)
     * **Active ✅**: Domain resolves to your IPFS project
2. **Test Resolution**
   * Web3 Browser: Visit `yourproject.eth` (Brave/MetaMask Browser)
   * Non-Web3 Browser: Use [eth.limo](https://eth.limo/) `yourproject.eth.limo`

## Troubleshooting Common Issues

| Issue                   | Technical Solution                                                                   |
| ----------------------- | ------------------------------------------------------------------------------------ |
| "Invalid Configuration" | <p>1. Check ENS <code>contenthash</code> format<br>2. Resign ownership challenge</p> |
| Transaction Stuck       | Add gas to speed up or cancel the tx                                                 |
| Domain Not Resolving    | Clear MetaMask cache → Settings → Advanced → Clear site data for `app.ens.domains`   |

{% hint style="info" %}

### 📞 Support Resources

* **Live Chat**: Join [Discord server](https://discord.com/invite/Cun2VpsdjF) → #Open a ticket
* **Email**: <contact@4everland.org> (include domain name & project ID in subject)
  {% endhint %}

###
