commit | 6d7176dc431519b55862413308de33c4d728ba1c | [log] [tgz] |
---|---|---|
author | Giulio Grassi <giulio.grassi86@gmail.com> | Wed Apr 16 16:08:48 2014 +0200 |
committer | Giulio Grassi <giulio.grassi86@gmail.com> | Fri Apr 18 00:13:05 2014 +0200 |
tree | b92045b973bbd91c7ddf7b6aee4d2d1c3f60719a | |
parent | 3ecec50221ce10e54f8cd699ef246f7d64a90fef [diff] |
face: bugfix of MulticastUdpFace receiving packets from all available NICs on Linux Now on Linux the creation of MulticastUdpFace requires CAP_NET_RAW capability if the name of the interface is specified Change-Id: Iff53035371fb26c6ee40e1065a0935e5ed16dc60 Refs: #1475
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 configure --prefix <path/for/prefix> --sysconfdir <some/other/path>
Refer to INSTALL.md
for more detailed instructions on how to compile and install 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.
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
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*
The UDP configuration file section contains settings for unicast and multicast UDP faces. If the Linux box is equipped with multiple network interfaces with multicast capabilities, the settings for multicast faces will NOT work without root or setting the appropriate permissions:
sudo setcap cap_net_raw=eip /full/path/nfd