| NFD - Named Data Networking Forwarding Daemon |
| ============================================================== |
| |
| ## Default Paths |
| |
| This README uses `SYSCONFDIR` when referring to the default locations of |
| various NFD configuration files. By default, `SYSCONFDIR` is set to |
| `/usr/local/etc`. If you override `PREFIX`, then `SYSCONFDIR` will |
| default to `PREFIX/etc`. |
| |
| You may override `SYSCONFDIR` and `PREFIX` by specifying their |
| corresponding options during installation: |
| |
| ./waf install --prefix <path/for/prefix> --sysconfdir <some/other/path> |
| |
| ## Running and Configuring NFD |
| |
| NFD's runtime settings may be modified via configuration file. After |
| installation, a working sample configuration is provided at |
| `SYSCONFDIR/ndn/nfd.conf.sample`. At startup, NFD will attempt to |
| read the default configuration file location: |
| `SYSCONFDIR/ndn/nfd.conf`. |
| |
| You may also specify an alternative configuration file location |
| by running NFD with: |
| |
| nfd --config </path/to/nfd.conf> |
| |
| Once again, note that you may simply copy or rename the provided |
| sample configuration and have an **almost** fully configured NFD. |
| However, this NFD will be unable to add FIB entries or perform |
| other typical operation tasks until you authorize an NDN certificate |
| with the appropriate privileges. |
| |
| ## Installing an NDN Certificate for Command Authentication |
| |
| Many NFD management protocols require signed commands to be processed |
| (e.g. FIB modification, Face creation/destructions, etc.). You will |
| need an NDN certificate to use any application that issues signed |
| commands. |
| |
| If you do not already have NDN certificate, you can generate one with |
| the following commands: |
| |
| **Generate and install a self-signed identity certificate**: |
| |
| ndnsec-keygen /`whoami` | ndnsec-install-cert - |
| |
| Note that the argument to ndnsec-key will be the identity name of the |
| new key (in this case, `/your-username`). Identity names are |
| hierarchical NDN names and may have multiple components |
| (e.g. `/ndn/ucla/edu/alice`). You may create additional keys and |
| identities as you see fit. |
| |
| **Dump the NDN certificate to a file**: |
| |
| The following commands assume that you have not modified |
| `PREFIX` or `SYSCONFDIR` If you have, please substitute |
| `/usr/local/etc` for the appropriate value (the overriden |
| `SYSCONFDIR` or `PREFIX/etc` if you changed `PREFIX`). |
| |
| sudo mkdir -p /usr/local/etc/ndn/keys |
| ndnsec-cert-dump -i /`whoami` > default.ndncert |
| sudo mv default.ndncert /usr/local/etc/ndn/keys/default.ndncert |
| |
| ## Running NFD with Ethernet Face Support |
| |
| The ether configuration file section contains settings for Ethernet |
| faces and channels. These settings will **NOT** work without root or |
| setting the appropriate permissions: |
| |
| sudo setcap cap_net_raw,cap_net_admin=eip /full/path/nfd |
| |
| You may need to install a package to use setcap: |
| |
| **Ubuntu:** |
| |
| sudo apt-get install libcap2-bin |
| |
| **Mac OS X:** |
| |
| curl https://bugs.wireshark.org/bugzilla/attachment.cgi?id=3373 -o ChmodBPF.tar.gz |
| tar zxvf ChmodBPF.tar.gz |
| open ChmodBPF/Install\ ChmodBPF.app |
| |
| or manually: |
| |
| sudo chgrp admin /dev/bpf* |
| sudo chmod g+rw /dev/bpf* |