If you are using chicken bones, place them in a pot of water. Bring it to a boil. Blanch the chicken bone for a few minutes to get rid of any foam or scum. Drain and rinse under cold water to clean the chicken bone. If you are using leftover chicken carcass or rotisserie chicken, you can skip this step.
In a large pot, add chicken bones, onion, carrot, celery, green onion, ginger and garlic. Add about 2.5L of water, or enough to cover all the ingredients.
Bring it to a boil over medium-high heat. Skim off any foam or impurities that has risen to the top. Then add 2 tbsp of cooking wine (optional)
Reduce the heat to low. Cover the pot with a lid and let it simmer for at least an hour. For more concentrated stock, you can simmer it for a longer time (3-4 hours).
After simmering, remove the chicken and vegetables from the pot. Strain the liquid through a fine-mesh sieve to remove any small bits.
Let the stock cool completely. Once cooled, transfer to large mason jars or an airtight container. Store in the fridge for up to 5 days, or freezer for up to 3 months.