通过tcpdump在dhcp-server中显示服务器可以接收DHCPDISCOVER包和发送DHCPOFFER包,但是不能从dhcp-client接收DHCPREQUEST包,所以客户端不能获得IP地址,并且总是在发送DHCPDISCOVER包中。
但是运行在dhcp-server VMWARE的实例中的dhcp-server可以将DHCPACK发送到客户端,而相同的客户端将获得IP成功,使用与E 120>OpenstackE 221实例相同配置的dhcp-server。
而且,如果我在客户端实例中配置静态IP地址,它将ping dhcp-server的IP成功。
还有一件事,服务器和客户端位于同一个vlan中。
在Openstack的例子中有什么限制规则吗?我如何解决这个问题,THX。
发布于 2021-08-28 14:31:02
其根本原因是traffic of port受到security groups in openstack的限制。
默认情况下,所有安全组都包含一系列执行下列操作的基本(健全)和反欺骗规则:
拒绝DHCP和DHCPv6响应,以防止实例充当DHCP(v6)服务器。
解决方案:
security groups (不推荐)dhcp-relay设置为router中的dhcp服务器(推荐)security groups通过虚拟机管理程序的iptables限制通信量,这将丢弃数据包,即src port is 67 and dst port is 68。DHCPOFFER数据包将通过src and dst port 67和它适用于所有的vlan。发送到router。对于DHCP中继和DHCP代理,从路由器发送到DHCP服务器的数据包的源端口和目标端口都设置为67。DHCP服务器使用相同的端口进行响应。
https://stackoverflow.com/questions/68783457
复制相似问题