我在获取链接本地地址(ipv4ll)时遇到问题。我遵循以下程序来实现这一目标。
首先,设置正确的路由以使用链接本地寻址。
$ route add default dev eth0 metric 99
$ route add -net 169.254.0.0 netmask 255.255.0.0 dev eth0 metric 99
这些路线设置正确。这里没有问题。
然后我使用avahi-autoipd发现有效的链接本地地址,如下所示
$ avahi-autoipd --daemonize --syslog --wait eth0
这给出了错误 -
无法从守护程序进程接收返回值。
我正在尝试在嵌入式Linux平台上执行这些命令。我通过连接两个嵌入式Linux平台建立了本地网络。
知道为什么会发生这种情况????
答案 0 :(得分:0)
我得到了解决方案。 新用户" avahi-autoipd"需要在/ var / lib中添加,如下所示。
$ adduser avahi-autoipd -h / var / lib / avahi-autoipd
现在办理登机手续
$ cat / etc / passwd
您将在上面的命令
中找到一个具有主目录路径的新用户然后,
$ avahi-autoipd eth0&
现在重启,
$ reboot
做' ps'查看所有流程
你会发现这样的东西750 avahi-au 1860 S avahi-autoipd:[eth0] bound 169.254.11.49
751 root 1780 S avahi-autoipd:[eth0]标注调度员
我希望有人会发现它很有用。
答案 1 :(得分:0)
有同样的错误。
使用我的命令运行strace:strace avahi-autoipd eth0
并且看到了:
chown32("/var/lib/avahi-autoipd", 1000, 1000) = -1 ENOENT # (No such file or directory)
stat64("/var/lib/avahi-autoipd", 0x3ed58c28) = -1 ENOENT # (No such file or directory)
结束刚刚重建/var/lib/avahi-autoipd
的文件夹,之后一切正常。