pulsejet / ndn6-tools

tools on NDN6 router

Home Page:https://yoursunny.com/p/ndn6/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ndn6-tools

CircleCI build status GitHub code size

This repository contains tools running in yoursunny ndn6 network.

Available Tools

ndn6-facemon: log when a face is created or destroyed

ndn6-file-server: serve file from filesystem

ndn6-prefix-allocate: allocate a prefix to requesting face

ndn6-prefix-proxy: handle prefix registration command with prefix confinement

ndn6-register-prefix-cmd: prepare a prefix registration command

ndn6-register-prefix-remote: send prefix registration commands to a specified remote face

ndn6-serve-certs: serve certificates

ndn6-unix-time-service: answers queries of current Unix timestamp

Install from Binary Package

NFD-nightly publishes binary package ndn6-tools.

To install binary package:

  1. Enable NFD-nightly APT repository.
  2. sudo apt install ndn6-tools

Install from Source

Requirements:

To compile and install:

make
sudo make install

To uninstall:

sudo make uninstall

Development Container

The following commands prepare and start a Docker container with necessary tools for developing ndn6-tools. It requires run-ndn volume shared with a separate NFD container, where NFD listens on Unix socket /run/ndn/nfd.sock.

docker build -t ndn6-tools-dev - <<EOT
FROM debian:bullseye
RUN apt-get update \
 && apt-get install -y --no-install-recommends build-essential ca-certificates clang-format-11 gdb git \
 && echo "deb [trusted=yes] https://nfd-nightly-apt.ndn.today/debian bullseye main" > /etc/apt/sources.list.d/nfd-nightly.list \
 && apt-get update \
 && apt-get install -y --no-install-recommends libndn-cxx-dev ndn-dissect ndnchunks ndnpeek \
 && rm -rf /var/lib/apt/lists/* \
 && echo 'set enable-bracketed-paste off' >> /etc/inputrc \
 && mkdir -p /etc/ndn \
 && echo 'transport=unix:///run/ndn/nfd.sock' > /etc/ndn/client.conf
WORKDIR /app
EOT

docker run -it --rm --name ndn6-tools \
  --mount type=volume,source=run-ndn,target=/run/ndn \
  --mount type=bind,source=$(pwd),target=/app \
  --cap-add=SYS_PTRACE --security-opt seccomp=unconfined \
  ndn6-tools-dev

About

tools on NDN6 router

https://yoursunny.com/p/ndn6/

License:ISC License


Languages

Language:C++ 96.3%Language:Makefile 2.7%Language:Dockerfile 1.0%