<div dir="ltr"><div>Dear folks<br><br></div><div>I'm a bit confused on how Ethernet faces are activated in NFD.<br></div><div><br>I have a backported NFD 0.6.1 running on a Debian Stretch system, and it fails to create Ethernet faces.<br><span style="font-family:monospace,monospace">Mar 27 01:57:54 beaglebone nfd[9727]: 1522115874.916868 INFO: [PrivilegeHelper] dropped to effective uid=109 gid=116<br>Mar 27 01:57:55 beaglebone nfd[9727]: 1522115874.919167 INFO: [EthernetChannel] [dev://eth0] Creating channel<br>Mar 27 01:57:55 beaglebone nfd[9727]: 1522115874.938101 WARNING: [EthernetFactory] Cannot listen on eth0: pcap_activate: You don't have permission to capture on that device<br>Mar 27 01:57:55 beaglebone nfd[9727]: 1522115874.944578 WARNING: [EthernetFactory] Cannot create multicast face on eth0: pcap_activate: You don't have permission to capture on that device<br></span></div><div><br></div><div>UDP multicast faces are created normally:<br><span style="font-family:monospace,monospace">Mar 27 01:57:55 beaglebone nfd[9727]: 1522115875.016260 INFO: [PrivilegeHelper] elevated to effective uid=0 gid=0<br>Mar 27 01:57:55 beaglebone nfd[9727]: 1522115875.016816 INFO: [PrivilegeHelper] dropped to effective uid=109 gid=116<br>Mar 27 01:57:55 beaglebone nfd[9727]: 1522115875.024138 INFO: [MulticastUdpTransport] [id=0,local=udp4://<a href="http://192.168.5.10:47396">192.168.5.10:47396</a>,remote=udp4://<a href="http://224.0.23.170:56363">224.0.23.170:56363</a>] Creating transport<br></span><br></div><div>In NFD source code I notice that a <a href="https://github.com/named-data/NFD/blob/85a36632a72017e21c72cf57bab85125832d2cea/daemon/face/multicast-udp-transport.cpp#L124">setsockopt call in UDP multicast face creation</a> is elevated to root, but there isn't a runElevated wrapper <a href="https://github.com/named-data/NFD/blob/85a36632a72017e21c72cf57bab85125832d2cea/daemon/face/pcap-helper.cpp#L64">around pcap_activate</a>.<br></div><div><br></div><div>NDN testbed router seems to be able to create Ethernet faces with no problem, but they have <a href="https://github.com/WU-ARL/NDN_Ansible/blob/b0f6a6c333dd3c6ec5fa79fa9a7f0de6c7c108f8/roles/nfd/templates/nfd.conf.j2#L2">disabled privilege dropping altogether</a>.<br></div><div><br></div><div>What's the recommended method to enable Ethernet faces for a PPA package deployment? Am I supposed to disable privilege dropping as well? If so, should this be configured in PPA's nfd.conf?<br></div><div><br><a href="https://github.com/named-data/NFD/blob/85a36632a72017e21c72cf57bab85125832d2cea/daemon/face/multicast-udp-transport.cpp#L124"></a></div>Yours, Junxiao<br></div>