{"id":44237285,"url":"https://github.com/named-data/ndnd","last_synced_at":"2026-02-10T10:12:12.724Z","repository":{"id":40338774,"uuid":"310202786","full_name":"named-data/ndnd","owner":"named-data","description":"Golang implementation of the Named Data Networking protocol stack","archived":false,"fork":false,"pushed_at":"2026-01-12T00:15:48.000Z","size":3551,"stargazers_count":27,"open_issues_count":19,"forks_count":25,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-01-15T07:11:35.280Z","etag":null,"topics":["forwarding","golang","ndn","networking","routing"],"latest_commit_sha":null,"homepage":"https://named-data.net","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/named-data.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":"docs/security-util.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-11-05T05:50:45.000Z","updated_at":"2026-01-12T00:14:52.000Z","dependencies_parsed_at":"2024-12-22T05:19:54.114Z","dependency_job_id":"b6fb1ad8-3c6d-437d-884b-f51a4d3d3d25","html_url":"https://github.com/named-data/ndnd","commit_stats":{"total_commits":223,"total_committers":10,"mean_commits":22.3,"dds":"0.48430493273542596","last_synced_commit":"6e68734589018f732aebc93bb98a2d8b750e9fe8"},"previous_names":["named-data/ndnd","named-data/yanfd"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/named-data/ndnd","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/named-data%2Fndnd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/named-data%2Fndnd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/named-data%2Fndnd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/named-data%2Fndnd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/named-data","download_url":"https://codeload.github.com/named-data/ndnd/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/named-data%2Fndnd/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29297103,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-10T09:11:24.369Z","status":"ssl_error","status_checked_at":"2026-02-10T09:10:47.789Z","response_time":65,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["forwarding","golang","ndn","networking","routing"],"created_at":"2026-02-10T10:12:11.939Z","updated_at":"2026-02-10T10:12:12.710Z","avatar_url":"https://github.com/named-data.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://named-data.net/\"\u003e\n    \u003cimg alt height=\"65\" src=\"docs/img/logo.svg\"/\u003e\n  \u003c/a\u003e\n\n  \u003ch1\u003e Named Data Networking Daemon \u003c/h1\u003e\n\u003c/div\u003e\n\n[![build](https://github.com/named-data/ndnd/actions/workflows/build.yml/badge.svg)](https://github.com/named-data/ndnd/actions/workflows/build.yml)\n[![test](https://github.com/named-data/ndnd/actions/workflows/test.yml/badge.svg)](https://github.com/named-data/ndnd/actions/workflows/test.yml)\n[![Go Report Card](https://goreportcard.com/badge/github.com/named-data/ndnd)](https://goreportcard.com/report/github.com/named-data/ndnd)\n[![Benchmark](https://img.shields.io/badge/benchmark-graph-8A2BE2?logo=github)](https://named-data.github.io/ndnd/dev/bench/index.html)\n\n[![release](https://img.shields.io/github/v/release/named-data/ndnd)](https://github.com/named-data/ndnd/releases)\n[![MIT license](https://img.shields.io/badge/license-MIT-blue)](./LICENSE.md)\n[![Go Reference](https://pkg.go.dev/badge/github.com/named-data/ndnd.svg)](https://pkg.go.dev/github.com/named-data/ndnd)\n\nNDNd is a Golang implementation of the Named Data Networking (NDN) [protocol](https://named-data.net) stack.\n\nSee the project [overview](https://named-data.net/project/), architecture [details](https://named-data.net/project/archoverview/) and the [tutorial](https://101.named-data.net/) for more info on NDN.\n\n## 🏗️ Installation\n\nPre-built static binaries for all supported platforms are available on the [releases](https://github.com/named-data/ndnd/releases) page. Linux-based systems may also utilize the provided [Docker images](https://github.com/named-data/ndnd/pkgs/container/ndnd).\n\nNDNd is written in pure Go and requires [Go 1.23](https://go.dev/doc/install) or later to build from source.\nOnce Go is installed, run `make` to build the `ndnd` executable, followed by `make install` to install it globally.\n\n# 🌟 Usage\n\nNDNd provides several independent modules that can be used separately or together.\n\nYou can use the `ndnd` CLI to list available modules and get more info on their usage.\nA tutorial example for running a simple NDN network can be found [here](docs/daemon-example.md).\n\n```text\nroot@0037b98ec2ac:~# ndnd\n  _   _ ____  _   _     _\n | \\ | |  _ \\| \\ | | __| |\n |  \\| | | | |  \\| |/ _  |\n | |\\  | |_| | |\\  | (_| |\n |_| \\_|____/|_| \\_|\\____|\n\nNamed Data Networking Daemon\n\nUsage:\n  ndnd [command]\n\nNDN Daemons\n  fw          NDN Forwarding Daemon\n  dv          NDN Distance Vector Daemon\n  daemon      NDN Combined Daemon\n\nSecurity Tools\n  sec         NDN Security Utilities\n  certcli     NDNCERT Certificate Client\n\nDebug Tools\n  ping        Send Interests to a ping server\n  pingserver  Start a ping server under a name prefix\n  cat         Retrieve object under a name prefix\n  put         Publish data under a name prefix\n\nAdditional Commands:\n  help        Help about any command\n\nFlags:\n  -v, --version   version for ndnd\n```\n\n## 🔀 Network Forwarder\n\nThe `ndnd/fw` package implements YaNFD, a packet forwarder for the NDN platform.\nIt is compatible with the management tools and protocols developed for the [NFD](https://github.com/named-data/NFD) forwarder.\n\nTo start the forwarder locally, run the following:\n\n```bash\nndnd fw run yanfd.config.yml\n```\n\nA full configuration example can be found in [fw/yanfd.sample.yml](fw/yanfd.sample.yml).\nNote that the default configuration may require root privileges to bind to multicast interfaces.\n\nOnce started, you can use the [forwarder control](docs/fw-control.md) tool to manage faces and routes.\n\n## 📡 Distance Vector Router\n\nThe `ndnd/dv` package implements `ndn-dv`, an NDN Distance Vector routing daemon.\n\nTo start the routing daemon bound to the local forwarder, run the following:\n\n```bash\nndnd dv run dv.config.yml\n```\n\nA full configuration example can be found in [dv/dv.sample.yml](dv/dv.sample.yml).\nMake sure the network and router name are correctly configured and the forwarder is running.\n\nOnce started, you can use the [router control](docs/dv-control.md) tool to create and destroy neighbor links.\n\n## 📚 Standard Library\n\nThe `ndnd/std` package implements `go-ndn`, a standard library for NDN applications.\n\nYou can use this package to build your own NDN applications.\nSeveral examples are provided in the [std/examples](std/examples) directory.\n\nThe standard library supports the [Light VerSec](https://python-ndn.readthedocs.io/en/latest/src/lvs/lvs.html) binary format for trust schema specification.\n\n## 🛠️ Tools\n\nThe `ndnd/tools` package provides basic utilities for NDN networks.\nThese can be used directly using the `ndnd` CLI.\n\n- `sec`: security utilities for generating keys and certificates ([docs](docs/security-util.md))\n- `certcli`: interactive [NDNCERT](https://github.com/named-data/ndncert) client ([docs](docs/certcli.md))\n- `ping`/`pingserver`: test reachability between two NDN nodes\n- `cat`/`put`: segmented file transfer between a consumer and a producer\n\n# Contributing \u0026 License\n\nContributions to NDNd are greatly appreciated and can be made through GitHub pull requests and issues.\n\nNDNd is free software distributed under the permissive [MIT license](LICENSE.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnamed-data%2Fndnd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnamed-data%2Fndnd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnamed-data%2Fndnd/lists"}