当我的系统启动时,它应该检查给定的接口(例如eth0),如果DHCP服务器存在于网络中,是否可以分别进行DHCP配置。如果是,应使用DHCP。如果没有,则应使用预定义的静态IP地址.
我试着和dhclient玩。
dhclient -1 # Try once to get a lease. One failure, exit with code 2.
请参阅http://www.computerhope.com/unix/dhclient.htm
然而,即使根本没有连接,dhclient也总是返回'0‘。
正确的方法是什么?
发布于 2018-03-08 09:52:03
一个简单的选项,如果您的静态设置不会与任何潜在冲突,将是设置一个网络别名。对于非别名连接,将其配置为DHCP,然后使用静态连接配置别名连接。这样,如果DHCP可用,技术上这两个连接都是活动的,大概只有DHCP真正“工作”您正在使用的网络。如果DHCP不可用,它会自行分配169个地址,但静态别名不起作用。编辑后不要忘记重新启动或重新启动服务。
/etc/网络/接口示例
auto eth0
allow-hotplug eth0
iface eth0 inet dhcpauto eth0
allow-hotplug eth0
iface eth0 inet dhcp
auto eth0:1
iface eth0:1 inet static
name Ethernet alias LAN card
address 192.168.1.7
netmask 255.255.255.0
broadcast 192.168.1.255
network 192.168.1.0
详细信息可在这里获得:https://www.cyberciti.biz/faq/linux-creating-or-adding-new-network-alias-to-a-network-card-nic/
https://askubuntu.com/questions/698624
复制相似问题