This repository contains tools running in yoursunny ndn6 network.
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
NFD-nightly publishes binary package ndn6-tools
.
To install binary package:
- Enable NFD-nightly APT repository.
sudo apt install ndn6-tools
Requirements:
- Ubuntu 20.04, Ubuntu 22.04, Debian 11
- ndn-cxx installed from PPA or NFD-nightly
To compile and install:
make
sudo make install
To uninstall:
sudo make uninstall
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