Preheat the oven to 450°F (232°C).
Place the marrow bones and the beef shanks into a shallow roasting pan and smear each piece with tomato paste.
Add the carrots and onion to the roasting pan and place the pan into the preheated oven.
Roast everything until the bones and meat are a deep, rich brown and well caramelized. This process may take from 30 to 40 minutes. (Turn the bones once at the halfway cooking point.)
Once the bones and meat are well roasted, remove the pan to a heatproof surface and transfer the contents to a large stockpot.
Pour any fat and liquid from the pan into the stockpot.
Use a red wine or dark-colored fortified wine to deglaze the pan and transfer all the bits to the stockpot.
Add the celery and herbs to the stockpot.
Add water to the stockpot just to cover the ingredients and bring the entire mixture up to a rolling boil.
Immediately turn the stovetop heat down to its lowest setting and skim off any foam that has risen to the top.
Allow the stock to simmer, uncovered, for four to five hours until slightly reduced and rich brown in color.
When finished simmering, transfer the stockpot to a heatproof surface, remove all the solids from the stockpot, and strain the stock through a floursack towel or cheesecloth-lined colander into a clean bowl.
Stock can be allowed to cool in the refrigerator overnight, and then the fat can be removed, or the stock can be defatted once strained using a fat separator.
Store brown stock in airtight containers, refrigerated for up to one week, or in freezer-proof containers, frozen for up to three months.