openstack dhcp调试


openstack的dhcp服务器默认采用dnsmasq软件实现,可以通过ps -ef | grep dnsmasq 查看,当虚拟机启动过程中发起dhcp请求,日志在宿主机可以在系统日志下:

May 23 22:30:29 localhost dnsmasq-dhcp[5043]: DHCPDISCOVER(tapf7321a93-ac) fa:16:3e:33:0a:6a 

May 23 22:30:29 localhost dnsmasq-dhcp[5043]: DHCPOFFER(tapf7321a93-ac) 10.0.0.41 fa:16:3e:33:0a:6a 

May 23 22:30:29 localhost dnsmasq-dhcp[5043]: DHCPREQUEST(tapf7321a93-ac) 10.0.0.41 fa:16:3e:33:0a:6a 

May 23 22:30:29 localhost dnsmasq-dhcp[5043]: DHCPACK(tapf7321a93-ac) 10.0.0.41 fa:16:3e:33:0a:6a host-10-0-0-41

可以看到dhcp四个阶段:发现、提供、选择、确认。

同时可以通过 nova console-log instance查看虚拟机启动日志

Starting network...

udhcpc (v1.18.5) started

Sending discover...

Sending select for 10.0.0.41...

Lease of 10.0.0.41 obtained, lease time 86400

如果出现dhcp问题可以先查看日志,重启dnsmasq进程。

killall dnsmasq

service neutron-dhcp-agent restart

dhcp使用的是udp协议,默认端口为68和67(68端口发送到67),可以

tcpdump  -n port 67 or port 68


相关内容