在/etc/network/interfaces
(Raspbian)上,是否有可能设置带有可选回退的静态IP?
这在配置的静态IP已经被接受的情况下非常方便。或者,它可能在与它试图连接的网络不同的范围内(例如:在192.168.0.10
网络中设置一个静态10.0.0.0/24
)。
发布于 2016-03-15 05:17:11
对于主机来说,没有好的或可靠的方法来判断另一台机器是否已经在使用其IP地址,或者IP是否位于本地网络的错误子网中。
您可以使用tcpdump
或arpwatch
或类似的方式侦听网络接口,以确定是否有其他MAC地址正在使用您的IP (但即使这样也不可靠,因为另一台主机可能被关闭,或者目前没有理由在网络上发送任何数据包。而且,你的主机很可能处于开关状态--现在几乎没有人使用集线器--所以只能看到来自另一个主机的广播数据包,而不能看到另一个主机和服务器之间的通信)。
即使试图检测来自不同子网的数据包也是有问题的--在同一物理以太网段上传输多个子网是非常正常和合法的。您可能会看到来自备用子网的数据包,但没有一个来自您自己的子网,并且假设您的子网是错误的,而真正发生的情况是在您侦听时子网上没有其他主机的流量。
您想听多长时间的网络接口?您认为在收听时延迟启动和启动网络相关服务的时间是否合理?5秒?还不够长。五分钟?对于一个不错的网络示例来说,这可能足够长(虽然没有保证),但是等待rpi启动的时间太长了。
如果没有DHCP服务器,那么尝试DHCP IP,然后回到静态地址就更有意义了(但如果您知道要回退到哪个安全的静态IP地址,那么使用它就更简单了)。
结论:
坚持使用DHCP或静态地址。
如果您是网络管理员,请确保网络上有一个工作的DHCP服务器。或者将其配置为将固定的IP地址分配给rpi的MAC地址。
发布于 2016-03-15 09:52:36
您不能在/etc/network/interfaces
中设置,实际上,如果您使用的是最近(2015年5月后)发布的版本,您将被警告不要以这种方式设置静态。
这并不具体回答如何设置回退配置文件,而是将您推荐到man dhcpcd.conf
。
https://unix.stackexchange.com/questions/269830
复制相似问题