In a pot large enough for 1 3½-4 pound chicken plus water to completely cover it by at least 2 inches, place the chicken, 10 - 12 cloves garlic lightly smashed with the side of a knife, 1 1-inch piece ginger, ½ medium white or yellow onion, 2 green onions cut into 2-3 inch pieces, and 10-12 cups of water.
Bring the contents of the pot to a rolling boil over high heat. Reduce the heat to medium-low, cover the pot with a lid, tilting it slightly to create a small vent for steam, and gently simmer for 50 minutes to 1 hour, until the chicken is completely cooked through, or until the chicken reached 165°F.
Turn the heat off. Remove the chicken to a large plate or cutting board. You can do this with 2 very large spoons or spatulas, or tongs. Fish out the garlic, ginger, onion, and green onions from the pot and discard, leaving the chicken stock in the pot.
When the chicken is cool enough to handle, pull the meat off the bones, discarding the skin. Remove the chicken meat to a separate plate or bowl, cover, and refrigerate.
Place the bones back into the pot with the broth. If you have extra leftover bones in your freezer, this is a great time to add those, too! Turn on the heat to high and bring the pot to a rolling boil. Turn the heat back down to medium low, cover, and simmer the bones for an additional 30 minutes to 1 hour to enrich the broth with additional flavor.
Turn off the heat. Strain the stock. Remove rendered fat by carefully skimming it off the surface with a large spoon, using a fat separator, or turbo-cooling the stock in an ice bath then refrigerating the stock overnight for the fat to harden.