问题
kvm平台下的虚拟机配置双网卡,每个网卡分配一个ip,连接到不同的网络中。
虚拟机启动后查看ip发现只分配了一个ip
解决
1、linux的dhcp一般都是由dhclient服务进行管理的,
ls /etc/dhcp #可以查看相关的配置
2、在终端里执行一次dhclient后查看获取到了ip
dhclient #使得所有网卡接口使用dhcp获取ip
3、将dhclient指令写到开机脚本里,确保虚拟机下次启动时仍然可以使得所有网卡都使用dhcp协议来获取ip。问题解决。
vi /etc/rc.local
chmod +x /etc/rc.local
思考
1、关于dhclient:dhclient是一个DHCP协议客户端,在机器启动时,dhclient会读取dhclient.conf以获取配置说明。 然后,它会获取当前系统中配置的所有网络接口的列表。 对于每个接口,它尝试使用DHCP协议配置接口。
2、在centos的虚拟机上双网卡遵循了dhclient的配置方式,每个网卡都会dhcp获取ip。
3、在Redhat上出现了本文的问题,考虑是Redhat进行了限制,在多网卡的情况下当一个网卡dhcp获取到ip后,其他网卡不在采用dhcp协议。(纯属猜测)
延伸
1、linux单网卡无法dhcp获取ip时解决方式:
找到对应网卡的配置文件,vi /etc/sysconfig/network-scripts/ifcfg-eth0
添加以下程序:
check_link_down(){
return 1;
}
2、redhat7或者centos7之后增加了nmcli命令,可以完成网卡上所有的配置工作,并且可以写入配置文件,永久生效。
参考
1、https://blog.csdn.net/u011857683/article/details/83722466
2、https://blog.csdn.net/u010599211/article/details/86672940