我遇到了一个奇怪的问题,我真的不知道如何诊断它或如何解决它。
我的问题是,以前有效的静态 ipv6 分配在启动时突然不再应用,但在手动运行 ifup 时仍然有效。我检查了我的日志文件,但它们显示在启动时也正在使用 ifupdown :
Apr 16 20:57:07 [censored] ifplugd(eth0)[213]: Executing '/etc/ifplugd/ifplugd.action eth0 up'.
由于 ipv4 一直在工作,我花了一段时间才意识到,所以遗憾的是我无法确定确切的原因。
我认为这个问题是由更换我的路由器引起的,该路由器也充当 dhcp 服务器,它现在可能会比我以前的路由器发送更多或更少的信息。我最近更改的另一件事是我安装了一些附加服务(hdparm、sdparm、nfs-kernel-server、minidlna),这可能会扰乱启动脚本的执行顺序。
我的 raspbian 安装相当旧,并且已从 Wheezy 升级到 Jessie,因此它仍然使用“旧”方式来配置网络接口 /etc/network/interfaces。它没有安装 dhcpcd,而是依赖 dhclient 来实现 dhcp。
这是我的 /etc/network/interfaces,它不再应用 ipv6 地址,但几天前曾经做得很好......
auto lo
iface lo inet loopback
iface eth0 inet dhcp
iface eth0 inet6 static
address [censored]
netmask 64
如前所述,当我运行 时ifup --force eth0
,它确实应用了 ipv6 地址。但是,在启动时,它不会被应用。有趣的是,如果我也设置静态 ipv4 地址,则两者都会被应用:
auto lo
iface lo inet loopback
#iface eth0 inet dhcp
iface eth0 inet static
address 192.168.1.1
netmask 24
gateway 192.168.1.253
mtu 1492
ifac eth0 inet6 static
address [censored]
netmask 64
如果你需要的话,这里有完整的日志档案。
目前我正在使用静态配置作为解决方法,但我真的很想知道发生了什么。
答案1
好的,我遇到了同样的问题,这解决了它:
- 删除“iface eth0 inet 手册”,可能是错误地留在那里。
- 添加“auto eth0”行后,它丢失了。
之后,eth0 就完美地出现了,aiccu 和 radvd 现在可以正常工作了:)