IBRL 모드 검증자 테스트넷 연결
This translation was generated using artificial intelligence and has not been reviewed by a human translator. It may contain inaccuracies or errors and should not be relied upon.
DoubleZero 테스트넷에 연결함으로써 여기에 명시된 평가 계약 조건에 동의합니다 (클릭하여 확장)
DoubleZero 테스트넷 평가 계약
본 솔루션(아래 정의)에 액세스하거나 사용함으로써 귀하는 첫 번째 액세스 날짜("발효일")로부터 본 평가 계약("계약")이 DoubleZero Foundation("DZF")이 평가 기준으로 솔루션에 대한 액세스를 제공하는 조건을 규정함에 동의합니다. 상호 약속의 대가로 귀하는 다음에 동의합니다:
1. 정의.
1.1 "기밀 정보"는 기밀로 지정되었거나 솔루션, 제품 계획, 사업 계획, 영업 비밀, 기술 또는 기타 독점 정보를 포함하되 이에 국한되지 않는 기타 기밀로 이해되어야 하는 일방 당사자가 타방 당사자에게 공개한 모든 정보를 의미합니다.
1.2 "솔루션"은 web3 프로젝트를 위한 DoubleZero 고성능 네트워크 인프라의 테스트넷 버전("테스트넷") 및 통합 대역폭이 있는 관련 엣지 필터링 서비스("정보 서비스"), DZ 소프트웨어(아래 정의), DZ 소프트웨어와 관련하여 DZF가 제공하는 모든 자료("문서"), 및 DZF가 여기서 사용자에게 제공하는 기타 자료를 의미합니다.
2. 액세스.
2.1 솔루션 액세스. 본 계약의 조건에 따라 DZF는 인터넷을 통해 사용자에게 솔루션 액세스를 제공합니다. 사용자의 액세스는 사용자가 정보 서비스를 평가할 수 있도록 하기 위한 솔루션의 비독점적, 비양도 가능한, 제한적 사용입니다. 솔루션을 구성하는 소프트웨어("DZ 소프트웨어")와 관련하여 DZF는 평가 기간 동안 사용자에게 문서에서 예상한 대로만 해당 DZ 소프트웨어를 복사, 다운로드, 합리적인 수의 사본 작성, 실행 및 배포(해당하는 경우)할 수 있는 제한적, 취소 가능한 라이선스를 부여합니다.
2.2 제한. 사용자는 발효일부터 DZF가 종료할 때까지("평가 기간") 본 계약에 따라 솔루션을 사용할 수 있습니다. 사용자는 평가 기간 이후의 솔루션 사용 권리가 수수료 지불을 포함하여 당사자 간의 별도 상업 계약에 따를 것임을 이해합니다. 사용자는 다음을 하지 않아야 하며 제3자가 하도록 허용해서도 안 됩니다: (i) 솔루션 또는 그 일부를 기반으로 수정하거나 파생 저작물을 생성하는 것; (ii) 본 계약에서 명시적으로 허용된 경우를 제외하고 솔루션을 복제하는 것; (iii) 솔루션의 전부 또는 일부에 대한 권리를 서비스 기관 기준으로 또는 기타 방식으로 제3자에게 제공하는 것 (단, 독립적으로가 아닌 사용자의 플랫폼 또는 제품을 통해 또는 그와 관련하여 정보 서비스를 제공하는 경우는 제외); 또는 (iv) 여기에 제공된 것 이외의 방식으로 솔루션을 사용하는 것.
2.3 소유권. DZF는 솔루션에 대한 모든 권리, 소유권 및 이익(지적 재산권 포함)을 보유합니다.
3 피드백. DZF는 주기적으로 사용자에게 솔루션의 사용, 운영 및 기능에 관한 피드백("피드백")을 제공하도록 요청할 수 있으며 사용자는 DZF에 이를 제공하기로 동의합니다. 사용자는 DZF에 피드백을 제품 및 서비스에 사용하고 통합할 수 있는 비독점적, 전 세계적, 영구적, 취소 불가능한, 로열티 없는, 완전히 지불된, 완전히 서브라이선스 가능하고 양도 가능한 권리와 라이선스를 부여합니다.
4. 기간 및 해지.
4.1 기간. 본 계약은 발효일부터 시작하여 평가 기간 동안 완전한 효력을 유지합니다. 어느 당사자든 서면 통지(이메일로 충분)를 통해 상대방에게 어떤 이유로든 즉시 본 계약을 해지할 수 있습니다.
4.1 해지의 효과. 어떤 이유로든 본 계약이 해지되면: (i) 사용자에게 부여된 권리가 즉시 종료됩니다; (ii) 사용자는 솔루션 사용을 즉시 중단하고 그 통제 하에 있는 모든 문서 및 DZ 소프트웨어를 반환하거나 폐기해야 합니다; (iii) 각 당사자는 상대방의 모든 기밀 정보와 재산을 즉시 반환하거나 폐기해야 합니다; (iv) 섹션 2.2, 2.3, 3, 4.2, 5~8은 존속합니다.
5. 기밀 유지. 각 당사자는 본 계약 하에서 의무를 이행하고 권리를 행사하기 위해서만 상대방의 기밀 정보를 사용하고 본 계약에서 달리 허용된 경우를 제외하고는 이를 공개하거나 공개되도록 허용하지 않기로 동의합니다. 다만, 어느 당사자든 알아야 할 필요가 있고 본 계약에 규정된 것보다 덜 보호적이지 않은 기밀 유지 의무에 구속되는 직원, 변호사 및 기타 대리인에게 기밀 정보를 공개할 수 있습니다; 법에서 요구하는 경우(수신 당사자는 공개 당사자에게 사전 통지를 제공하고 그러한 공개에 이의를 제기할 기회를 제공하며 적용 가능한 법이 허용하는 한 공개를 최소화합니다). 본 섹션 5의 기밀 유지 의무는 다음에는 적용되지 않습니다: (a) 수신 당사자의 과실 없이 일반적으로 알려지거나 공개적으로 이용 가능한 정보; (b) 공개 당사자의 공개 전에 수신 당사자에게 제한 없이 적절히 알려진 정보; (c) 법적 권한을 가진 다른 사람에 의해 제한 없이 수신 당사자에게 적절히 공개된 정보; (d) 공개 당사자의 기밀 정보를 사용하거나 참조하지 않고 수신 당사자가 독립적으로 개발한 정보. 각 당사자는 상대방의 기밀 정보를 무단 사용 및 공개로부터 보호하는 데 상당한 주의를 기울이기로 동의합니다.
6. 보증 면책; 책임 제한.
6.1 보증 면책. 솔루션은 어떠한 종류의 보증도 없이 "있는 그대로" 제공됩니다. DZF는 솔루션 및 문서에 대해 명시적, 묵시적, 법적 또는 기타 보증을 제공하지 않으며 상품성, 특정 목적 적합성, 소유권 및 비침해에 대한 모든 묵시적 보증을 특별히 부인합니다.
6.2 책임 제한. 섹션 2.1, 2.2, 5 위반의 경우를 제외하고, 어떠한 경우에도 어느 당사자도 이익 손실 또는 사용 손실 또는 데이터 손실에 대한 손해배상을 포함하되 이에 국한되지 않는 간접적, 부수적, 특별 또는 기타 결과적 손해에 대해 계약 행위, 불법 행위 또는 기타의 경우에 상대방에 대해 책임을 지지 않습니다. 어떠한 경우에도 DZF의 총 책임은 계약 행위, 불법 행위 또는 기타의 경우에 $100를 초과하지 않습니다.
7. 준거법. 본 계약 및 본 계약과 관련하여 발생하는 모든 사항은 케이맨 제도의 법률에 따라 관리, 해석 및 구성됩니다. 본 계약과 관련하여 분쟁이 발생하는 경우, 해당 당사자는 상대방 당사자에게 30일의 분쟁 통지를 해야 합니다. 분쟁이 해결되지 않는 경우, 케이맨 제도 조정 및 중재 센터(CI-MAC)에 의해 관리되는 중재로 분쟁을 해결합니다. 중재는 케이맨 제도 조지 타운에서 진행되며 케이맨 제도 법률이 적용됩니다. 중재 언어는 영어입니다.
8. 일반 조항. 본 계약은 DZF의 사전 서면 동의 없이 사용자가 양도하거나 이전할 수 없습니다. DZF는 본 계약을 자유롭게 양도할 수 있습니다. 본 계약에 따라 보내야 하는 모든 통지는 이메일로 전송되어야 하며(DZF: legal@doublezero.xyz) 전송 다음 날에 수신된 것으로 간주됩니다. 본 계약의 어느 조항이 무효 또는 집행 불가능한 것으로 판명되는 경우 본 계약의 나머지 조항은 완전한 효력을 유지합니다.
IBRL 모드로 테스트넷에 연결
Note
IBRL 모드는 기존 공개 IP 주소를 사용하므로 검증자 클라이언트를 재시작할 필요가 없습니다.
Solana 테스트넷 검증자는 이 페이지에 자세히 설명된 DoubleZero 테스트넷 연결을 완료합니다.
각 Solana 검증자에는 고유한 신원 키쌍이 있으며, 이로부터 노드 ID로 알려진 공개 키를 추출합니다. 이것이 Solana 네트워크에서 검증자의 고유 지문입니다.
DoubleZeroID와 노드 ID가 확인되면 기계의 소유권을 증명해야 합니다. 이는 검증자의 신원 키로 서명된 DoubleZeroID를 포함하는 메시지를 생성하여 수행됩니다. 결과적인 암호화 서명은 검증자를 제어한다는 검증 가능한 증거로 사용됩니다.
마지막으로 DoubleZero에 연결 요청을 제출합니다. 이 요청은 다음을 전달합니다: "제 신원이 여기 있고, 소유권 증거가 여기 있으며, 연결 방법이 여기 있습니다." DoubleZero는 이 정보를 검증하고 증거를 수락하며 DoubleZero에서 검증자의 네트워크 액세스를 프로비저닝합니다.
이 가이드를 통해 1개의 기본 검증자가 자신을 등록하고 동시에 최대 3개의 백업/장애 조치 기계를 등록할 수 있습니다.
사전 요구사항
- Solana CLI 설치 및 $PATH 등록
- 검증자의 경우: sol 사용자 하에 검증자 신원 키쌍 파일(예: validator-keypair.json)에 대한 액세스 권한
- 검증자의 경우: 연결할 Solana 검증자의 신원 키에 최소 1 SOL이 있는지 확인
- 방화벽 규칙이 DoubleZero 및 Solana RPC에 대한 아웃바운드 연결을 허용해야 함 (GRE(ip proto 47) 및 BGP(169.254.0.0/16의 tcp/179) 포함)
Info
검증자 ID는 Solana 가십에 대해 확인되어 대상 IP를 결정합니다. 대상 IP와 DoubleZero ID는 기계와 대상 DoubleZero 장치 간에 GRE 터널을 열 때 사용됩니다.
고려사항: 동일한 IP에 정크 ID와 기본 ID가 있는 경우 기본 ID만 기계 등록에 사용됩니다. 정크 ID는 가십에 나타나지 않으므로 대상 기계의 IP를 확인하는 데 사용할 수 없습니다.
1. 환경 구성
진행하기 전에 설정 지침을 따르세요.
설정의 마지막 단계는 네트워크에서 연결을 해제하는 것이었습니다. 이는 기계에 DoubleZero에 대한 터널이 하나만 열려 있고 해당 터널이 올바른 네트워크에 있도록 하기 위한 것입니다.
DoubleZero 테스트넷에 연결하도록 DoubleZero 클라이언트 CLI(doublezero) 및 데몬(doublezerod)을 구성하려면:
DESIRED_DOUBLEZERO_ENV=testnet \
&& sudo mkdir -p /etc/systemd/system/doublezerod.service.d \
&& echo -e "[Service]\nExecStart=\nExecStart=/usr/bin/doublezerod -sock-file /run/doublezerod/doublezerod.sock -env $DESIRED_DOUBLEZERO_ENV" | sudo tee /etc/systemd/system/doublezerod.service.d/override.conf > /dev/null \
&& sudo systemctl daemon-reload \
&& sudo systemctl restart doublezerod \
&& doublezero config set --env $DESIRED_DOUBLEZERO_ENV > /dev/null \
&& echo "✅ doublezerod configured for environment $DESIRED_DOUBLEZERO_ENV"
✅ doublezerod configured for environment testnet
약 30초 후 DoubleZero 장치를 볼 수 있습니다:
doublezero latency
doublezero latency
pubkey | code | ip | min | max | avg | reachable
6E1fuqbDBG5ejhYEGKHNkWG5mSTczjy4R77XCKEdUtpb | nyc-dz001 | 64.86.249.22 | 2.44ms | 2.63ms | 2.50ms | true
CT8mP6RUoRcAB67HjKV9am7SBTCpxaJEwfQrSjVLdZfD | lax-dz001 | 207.45.216.134 | 71.97ms | 72.01ms | 71.99ms | true
Cpt3doj17dCF6bEhvc7VeAuZbXLD88a1EboTyE8uj6ZL | lon-dz001 | 195.219.120.66 | 71.94ms | 72.08ms | 72.00ms | true
4Wr7PQr5kyqCNJo3RKa8675K7ZtQ6fBUeorcexgp49Zp | ams-dz001 | 195.219.138.50 | 76.55ms | 76.65ms | 76.61ms | true
29ghthsKeH2ZCUmN2sUvhJtpEXn2ZxqAuq4sZFBFZmEs | fra-dz001 | 195.219.220.58 | 83.01ms | 83.10ms | 83.05ms | true
hWffRFpLrsZoF5r9qJS6AL2D9TEmSvPUBEbDrLc111Y | fra-dz-001-x | 195.12.227.250 | 84.87ms | 84.91ms | 84.89ms | true
8jyamHfu3rumSEJt9YhtYw3J4a7aKeiztdqux17irGSj | prg-dz-001-x | 195.12.228.250 | 95.27ms | 95.30ms | 95.29ms | true
5tqXoiQtZmuL6CjhgAC6vA49JRUsgB9Gsqh4fNjEhftU | tyo-dz001 | 180.87.154.78 | 180.96ms | 181.08ms | 181.02ms | true
D3ZjDiLzvrGi5NJGzmM7b3YZg6e2DrUcBCQznJr3KfC8 | sin-dz001 | 180.87.102.98 | 220.87ms | 221.14ms | 220.97ms | true
메인넷 출력은 구조가 동일하지만 더 많은 장치가 있습니다.
2. 포트 44880 열기
사용자는 일부 라우팅 기능을 활용하기 위해 포트 44880을 열어야 합니다.
포트 44880을 열려면 다음과 같이 IP 테이블을 업데이트할 수 있습니다:
sudo iptables -A INPUT -i doublezero0 -p udp --dport 44880 -j ACCEPT
sudo iptables -A OUTPUT -o doublezero0 -p udp --dport 44880 -j ACCEPT
이 규칙을 DoubleZero 인터페이스로만 제한하는 -i doublezero0, -o doublezero0 플래그에 주의하세요.
또는 UFW를 사용할 수 있습니다:
sudo ufw allow in on doublezero0 to any port 44880 proto udp
sudo ufw allow out on doublezero0 to any port 44880 proto udp
이 규칙을 DoubleZero 인터페이스로만 제한하는 in on doublezero0, out on doublezero0 플래그에 주의하세요.
3. 검증자 소유권 증명
DoubleZero 환경이 설정되었으면 이제 검증자 소유권을 증명할 차례입니다.
기본 검증자의 설정에서 생성한 DoubleZero ID는 모든 백업 기계에서 사용해야 합니다.
기본 기계의 ID는 doublezero address로 찾을 수 있습니다. 동일한 ID가 클러스터의 모든 기계의 ~/.config/doublezero/id.json에 있어야 합니다.
이를 위해 먼저 명령을 실행 중인 기계가 기본 검증자인지 다음 명령으로 확인합니다:
doublezero-solana passport find-validator -ut
이는 검증자가 가십에 등록되어 있고 리더 스케줄에 나타나는지 확인합니다.
예상 출력:
Connected to Solana: testnet
DoubleZero ID: YourDoubleZeroAddress11111111111111111111111111111
Detected public IP: 11.11.11.111
Validator ID: ValidatorIdentity111111111111111111111111111
Gossip IP: 11.11.11.111
In Leader scheduler
✅ This validator can connect as a primary in DoubleZero 🖥️ 💎. It is a leader scheduled validator.
Info
동일한 워크플로우가 하나 또는 여러 기계에 사용됩니다. 하나의 기계를 등록하려면 모든 명령에서 "--backup-validator-ids" 또는 "backup_ids=" 인수를 제외하세요.
이제 기본 검증자를 실행할 모든 백업 기계에서 다음을 실행합니다:
doublezero-solana passport find-validator -ut
예상 출력:
Connected to Solana: testnet
DoubleZero ID: YourDoubleZeroAddress11111111111111111111111111111
Detected public IP: 22.22.22.222
Validator ID: ValidatorIdentity222222222222222222222222222
Gossip IP: 22.22.22.222
In Not in Leader scheduler
✅ This validator can only connect as a backup in DoubleZero 🖥️ 🛟. It is not leader scheduled and cannot act as a primary validator.
이제 기본 검증자 투표 계정과 신원을 사용할 계획인 모든 백업 기계에서 이 명령을 실행합니다.
연결 준비
기본 검증자 기계에서 다음 명령을 실행합니다. 이는 활성 지분이 있고, 리더 스케줄에 있으며, 명령을 실행 중인 기계의 Solana 가십에 기본 검증자 ID가 있는 기계입니다:
doublezero-solana passport prepare-validator-access -ut \
--doublezero-address YourDoubleZeroAddress11111111111111111111111111111 \
--primary-validator-id ValidatorIdentity111111111111111111111111111 \
--backup-validator-ids ValidatorIdentity222222222222222222222222222,ValidatorIdentity33333333333333333333333333,ValidatorIdentity444444444444444444444444444>
예시 출력:
DoubleZero Passport - Prepare Validator Access Request
Connected to Solana: testnet
Primary validator 🖥️ 💎:
ID: ValidatorIdentity111111111111111111111111111
Gossip: ✅ OK 11.11.11.111)
Leader scheduler: ✅ OK (Stake: 1,050,000.00 SOL)
Backup validator 🖥️ 🛡️:
ID: ValidatorIdentity222222222222222222222222222
Gossip: ✅ OK (22.22.22.222)
Leader scheduler: ✅ OK (not a leader scheduled validator)
Backup validator 🖥️ 🛡️:
ID: ValidatorIdentity333333333333333333333333333
Gossip: ✅ OK (33.33.33.333)
Leader scheduler: ✅ OK (not a leader scheduled validator)
Backup validator 🖥️ 🛡️:
ID: ValidatorIdentity444444444444444444444444444
Gossip: ✅ OK (33.33.33.333)
Leader scheduler: ✅ OK (not a leader scheduled validator)
To request access, sign the following message with your validator's identity key:
solana sign-offchain-message \
service_key=YourDoubleZeroAddress11111111111111111111111111111,backup_ids=ValidatorIdentity222222222222222222222222222,ValidatorIdentity33333333333333333333333333,ValidatorIdentity444444444444444444444444444 \
-k <identity-keypair-file.json>
4. 서명 생성
마지막 단계에서 solana sign-offchain-message에 대한 미리 형식화된 출력을 받았습니다.
위 출력에서 기본 검증자 기계에서 이 명령을 실행합니다.
solana sign-offchain-message \
service_key=YourDoubleZeroAddress11111111111111111111111111111,backup_ids=ValidatorIdentity222222222222222222222222222,ValidatorIdentity33333333333333333333333333,ValidatorIdentity444444444444444444444444444 \
-k <identity-keypair-file.json>
출력:
Signature111111rrNykTByK2DgJET3U6MdjSa7xgFivS9AHyhdSG6AbYTeczUNJSjYPwBGqpmNGkoWk9NvS3W7
5. DoubleZero에서 연결 요청 시작
request-validator-access 명령을 사용하여 연결 요청을 위한 Solana 계정을 생성합니다. DoubleZero Sentinel 에이전트가 새 계정을 감지하고 신원과 서명을 검증한 후 서버가 연결을 설정할 수 있도록 DoubleZero에 액세스 패스를 생성합니다.
노드 ID, DoubleZeroID, 서명을 사용합니다.
Note
이 예시에서는 검증자 신원을 찾기 위해 -k /home/user/.config/solana/id.json을 사용합니다. 로컬 배포에 적합한 위치를 사용하세요.
doublezero-solana passport request-validator-access -k <path to keypair> -ut \
--primary-validator-id ValidatorIdentity111111111111111111111111111 \
--backup-validator-ids ValidatorIdentity222222222222222222222222222,ValidatorIdentity33333333333333333333333333,ValidatorIdentity444444444444444444444444444 \
--signature Signature111111rrNykTByK2DgJET3U6MdjSa7xgFivS9AHyhdSG6AbYTeczUNJSjYPwBGqpmNGkoWk9NvS3W7 --doublezero-address YourDoubleZeroAddress11111111111111111111111111111
출력:
이 출력은 Solana 탐색기에서 트랜잭션을 확인하는 데 사용할 수 있습니다. 탐색기를 테스트넷으로 변경해야 합니다. 이 확인은 선택 사항입니다.
Request Solana validator access: Transaction22222222VaB8FMqM2wEBXyV5THpKRXWrPtDQxmTjHJHiAWteVYTsc7Gjz4hdXxvYoZXGeHkrEayp
성공하면 DoubleZero가 기본을 백업과 함께 등록합니다. 이제 액세스 패스에 등록된 IP 간에 장애 조치할 수 있습니다. DoubleZero는 이 방식으로 등록된 백업 노드로 전환할 때 자동으로 연결을 유지합니다.
6. IBRL 모드로 연결
서버에서 DoubleZero에 연결할 사용자로 connect 명령을 실행하여 DoubleZero에 연결을 설정하세요.
doublezero connect ibrl
다음과 같은 프로비저닝을 나타내는 출력이 표시되어야 합니다:
DoubleZero Service Provisioning
🔗 Start Provisioning User...
Public IP detected: 137.184.101.183 - If you want to use a different IP, you can specify it with `--client-ip x.x.x.x`
🔍 Provisioning User for IP: 137.184.101.183
User account created
Connected to device: nyc-dz001
The user has been successfully activated
Service provisioned with status: ok
✅ User Provisioned
연결을 확인하세요:
doublezero status
출력:
Note
이 출력을 확인하세요. Tunnel src와 DoubleZero IP가 기계의 공개 IPv4 주소와 일치하는지 주목하세요.
Tunnel status | Last Session Update | Tunnel Name | Tunnel src | Tunnel dst | Doublezero IP | User Type | Current Device | Lowest Latency Device | Metro | Network
up | 2025-10-20 12:12:55 UTC | doublezero0 | 11.11.11.111 | 12.34.56.789 | 11.11.11.111 | IBRL | ams-dz001 | ✅ ams-dz001 | Amsterdam | testnet
up 상태는 성공적으로 연결되었음을 의미합니다.
다음을 실행하여 DoubleZero의 다른 사용자가 전파한 경로를 볼 수 있습니다:
ip route
default via 149.28.38.1 dev enp1s0 proto dhcp src 149.28.38.64 metric 100
5.39.216.186 via 169.254.0.68 dev doublezero0 proto bgp src 149.28.38.64
5.39.251.201 via 169.254.0.68 dev doublezero0 proto bgp src 149.28.38.64
5.39.251.202 via 169.254.0.68 dev doublezero0 proto bgp src 149.28.38.64
...
다음 단계: 멀티캐스트를 통한 Shred 발행
이 설정을 완료하고 멀티캐스트를 통한 Shred 발행을 계획하고 있다면 다음 페이지로 진행하세요.