dig-node 제어판
DIG Chrome extension에는 로컬 dig-node를 위한 제어판이 내장되어 있습니다. 제어판에서 노드의 실시간 상태를 확인하고, 캐시된 콘텐츠를 위해 얼마나 많은 디스크 공간을 예약할지 결정할 수 있으며, 일회성 페어링 절차를 마친 뒤에는 노드의 업스트림, 노드가 호스팅하는 스토어, 동기화, 피어까지 관리할 수 있습니다. 일상적인 사용에는 명령줄이 필요하지 않습니다.
제어판은 DIG Browser의 노드 관리 화면에 해당하는 확장 프로그램 내장 기능입니다. 여러분 자신의 컴퓨터에서 실행 중 인 노드와 통신하므로 모든 것이 로컬에 머무릅니다.
열기
- 확장 프로그램을 엽니다.
- Network(네트워크) 탭으로 이동해 Control(제어)을 선택합니다. (간단한 팝업에는 요약만 표시됩니다. 각 섹션을 전체 화면으로 보려면 제어판 열기를 사용하세요.)
패널은 노드를 자동으로 감지합니다.
- 노드 실행 중 → 관리 화면이 표시됩니다.
- 노드를 찾을 수 없음 → 노드 설치 방법을 안내하는 짧은 페이지가 표시됩니다. 이 경우에도 브라우징은 정상적으로 작동합니다 — 콘텐츠 읽기는 공개 네트워크로 대체(fallback)됩니다. 노드는 아래의 관리 화면에서만 필요합니다.
실시간 상태
상단의 실시간 표시기는 노드가 연결됨, 연결 중, 연결 끊김 중 어떤 상태인지와 그 주소 및 버전을 보여줍니다. 이 표시는 자동으로 갱신됩니다 — 노드를 시작하거나 중지하면 몇 초 안에 표시기가 바뀌며, 패널을 다시 열거나 새로고침할 필요가 없습니다.
캐시된 콘텐츠를 위한 디스크 공간 예약(캐시 및 LRU)
노드는 가져온 콘텐츠의 로컬 캐시를 유지하므로, 재방문 시 즉시 응답하고 여러분도 해당 콘텐츠 제공을 돕게 됩니다. 캐시에는 예약된 크기가 있습니다 — 사용할 수 있는 디스크 공간의 상한입니다. 캐시가 이 상한을 초과하면 노드는 가장 오랫동안 사용되지 않은 항목부터 자동으로 제거합니다("LRU" 정책). 그래서 예약한 공간이 초과되는 일은 없으며, 실제로 사용하는 콘텐츠는 계속 캐시에 남습니다.
이 섹션은 페어링 없이 바로 사용할 수 있습니다.
사용량 확인. 막대 그래프가 예약 상한 대비 사용된 공간을 보여주며, 몇 가지 실시간 수치도 함께 제공됩니다: 캐시된 항목 수, 총 크기, 노드가 시작된 이후 축출된 양, 캐시 적중/실패 횟수입니다.
예약 상한 설정. 새 크기를 입력하고 적용합니다. 최소값은 64 MiB이며, 이보다 작은 값은 이 하한으로 올림 처리됩니다. 상한을 현재 사용량보다 낮게 설정하면 사용량이 맞을 때까지 가장 오래된 항목부터 축출이 실행됩니다.
캐시 항목 확인 및 제거. 캐시 목록에는 각 항목의 크기, 마지막 사용 시각, 축출 순서(위치 0은 다음에 제거될 항목)가 표시됩니다. 다음을 수행할 수 있습니다.
- 항목 하나 축출 — 지금 캐시 항목 하나를 제거합니다.
- 전체 지우기 — 캐시를 완전히 비웁니다.
항목을 제거해도 로컬 디스크 공간만 확보될 뿐입니다. 다시 방문하는 콘텐츠는 그저 다시 가져올 뿐입니다.
자주 브라우징하는 컴퓨터라면 캐시에 가능한 한 넉넉한 공간을 할당하세요 — 예약 공간이 클수록 재요청이 줄고 로컬에서 제공되는 콘텐츠가 늘어납니다. 공간이 제한된 컴퓨터에서는 예약 공간을 작게 설정하세요. LRU가 가장 유용한 항목을 남기고 나머지를 제거합니다.
노드 관리(페어링 필요)
나머지 섹션들은 노드의 설정을 변경하므로 명시적인 권한이 필요합니다. 확장 프로그램은 브라우저의 샌드박스 안에서 실행되기 때문에 노드의 로컬 권한 파일을 직접 읽을 수 없습니다 — 그래서 한 번 페어링을 해야 합니다. 페어링은 확장 프로그램에 자체적인, 범위가 제한되고 취소 가능한 자격 증명을 부여합니다. 이 과정에서 노드의 마스터 키가 노출되는 일은 절대 없으며, 노드가 실행 중인 컴퓨터에서만 승인할 수 있습니다.
확장 프로그램을 노드와 페어링하기
- 제어판에서 페어링을 선택합니다. 확장 프로그램이 6자리 코드와 페어링 ID를 표시합니다.
- 노드가 실행 중인 컴퓨터의 터미널에서
dig-node pair를 실행해 대기 중인 요청 목록을 확인합니다(또는 바로dig-node pair approve <pairing-id>를 실행합니다). - 터미널에 표시된 코드가 확장 프로그램의 코드와 일치하는지 확인한 뒤 승인합니다. 이 일치 확인이 여러분을 지켜주는 안전장치입니다 — 여러분이 승인하는 것이 바로 이 확장 프로그램이며 다른 무엇도 아님을 보장합니다.
- 제어판이 자동으로 페어링된 상태로 전환됩니다. 자격 증명은 확장 프로그램에만 저장됩니다.
페어링 코드는 몇 분 후 만료됩니다. 승인하기 전에 만료되었다면 페어링을 다시 선택해 새 코드를 받으세요.
이 자격 증명 사용을 중단하려면 패널에서 페어링 해제를 선택하세요(로컬에서 잊어버리는 것뿐입니다). 노드 자체에서 이를 취소하려면 해당 컴퓨터에서 dig-node pair revoke <token-id>를 실행하세요 — 패널은 다음 동작 시 페어링되지 않은 상태로 돌아갑니다.
페어링은 아래의 관리 섹션에만 필요합니다. 위의 실시간 상태와 캐시/LRU 제어는 페어링 없이도 작동합니다.
업스트림
노드가 가져오는 업스트림을 확인하고 다른 업스트림으로 설정할 수 있습니다. 변경된 업스트림은 노드가 다음에 시작될 때 적용됩니다.
호스팅되는 스토어
노드가 보유하고 고정(pin)하는 스토어를 확인하고, 새 스토어를 고정해(노드가 이를 유지하며 제공하도록) 두거나, 고정을 해제하고, 어떤 스토어든 상태를 확인할 수 있습니다. 특정 버전을 고정하면 미리 가져와 즉시 제공할 수 있는 상태가 됩니다.
동기화
인증된 전체 스토어 동기화를 사용할 수 있는지 확인하고, 특정 버전에 대해 동기화를 실행해 노드가 이를 가져와 캐시하도록 할 수 있습니다.
피어
노드의 피어 네트워크 상태 — 홈 라우터 뒤에서도 접근 가능하도록 해주는 릴레이(relay) 연결 상태와, 현재 연결된 피어들 — 를 확인할 수 있습니다.
관련 문서
- 노드 관리하기 —
control.*관리 작업과 브라우저가 이를 구동하는 방식 - 소비자(consumer)를 노드로 지정하기 — 확장 프로그램, 브라우저, CLI가 여러분의 노드를 사용하도록 설정하기
- dig-node 설정하기 — 포트, 캐시 상한, 업스트림