code: func (c *Client) RequestPacket(offerPacket *dhcp4.Packet) dhcp4.Packet {
  	offerOptions := offerPacket.ParseOptions()
  
  	packet := dhcp4.NewPacket(dhcp4.BootRequest)
  	packet.SetCHAddr(c.hardwareAddr)
  
  	packet.SetXId(offerPacket.XId())
  	packet.SetCIAddr(offerPacket.CIAddr())
  	packet.SetSIAddr(offerPacket.SIAddr())
  
  	packet.SetBroadcast(c.broadcast)
  	packet.AddOption(dhcp4.OptionDHCPMessageType, []byte{byte(dhcp4.Request)})
  	packet.AddOption(dhcp4.OptionRequestedIPAddress, (offerPacket.YIAddr()).To4())
  	packet.AddOption(dhcp4.OptionServerIdentifier, offerOptions[dhcp4.OptionServerIdentifier])
  
  	return packet
  }
docs: //Create Request Packet